![]() |
|
|
Planilha de Dimensionamento de Tubulações
Hidráulicas Água Fria e Água Quente CompletaNossa planilha automática de dimensionamento de tubulações de água fria e quente é uma ferramenta desenvolvida para auxiliar engenheiros e projetistas no cálculo rápido e preciso das redes hidráulicas de edificaçoes. Por meio da inserçao de dados como vazao, diâmetro da tubulaçao, comprimento da rede, material do tubo e coeficientes hidráulicos, a planilha realiza automaticamente os cálculos necessários para verificar velocidade da água, perda de carga e dimensionamento adequado das tubulaçoes. |
||
Você está aqui: Cards de Python |
||
|
||
|
|
||
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercícios Resolvidos de Java - Usando o laço for para exibir a tabela de caracteres ASCII de 1 até 127Quantidade de visualizações: 4956 vezes |
|
Pergunta/Tarefa: Escreva um programa Java console que usa o laço for para exibir a tabela de caracteres que são equivalentes aos códigos ASCII de 1 até 127. Sua saída deverá ser parecida com: ![]() Resposta/Solução: Veja a resolução comentada deste exercício usando Java console:
package arquivodecodigos;
public class Estudos{
public static void main(String[] args){
// um laço que começa em 1 e termina em 127
for(int i = 1; i <= 127; i++){
// vamos obter o caractere correspondente
char c = (char)(i);
// vamos exibí-lo
System.out.print(c + " ");
// é hora de quebrar a linha?
if(i % 10 == 0){
System.out.println();
}
}
System.out.println();
}
}
|
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Um programa Java que pede ao usuário que informe seu nome e exiba uma mensagem de boas-vindasQuantidade de visualizações: 16227 vezes |
|
Pergunta/Tarefa: Escreva um programa Java que pede ao usuário que informe seu nome e exiba uma mensagem de boas-vindas. Se o usuário informar "Osmar J. Silva" seu programa deverá exibir a mensagem: Seja bem-vindo(a), Osmar J. Silva Faça duas versões do exercício. Na primeira você deverá usar a classe Scanner para efetuar a leitura e System.out.println() para exibir a saída. Na segunda versão você deverá usar os métodos showInputDialog() e showMessageDialog() da classe JOptionPane (presente no pacote javax.swing). Resposta/Solução: Vamos primeiro à resolução do exercício usando a classe Scanner para efetuar a leitura e System.out.println() para exibir a saída:
public static void main(String[] args){
// não se esqueça de adicionar um import para a classe Scanner
// import java.util.Scanner;
// vamos criar um objeto da classe Scanner
Scanner entrada = new Scanner(System.in);
// vamos solicitar ao usuário que informe seu nome
System.out.print("Informe seu nome: ");
// vamos ler o nome informado
String nome = entrada.nextLine();
// agora vamos exibir a mensagem de boas-vindas
System.out.println("Seja bem-vinda(a), " + nome);
}
Agora veja a resolução usando os métodos showInputDialog() e showMessageDialog() da classe JOptionPane:
public static void main(String[] args){
// não se esqueça de adicionar um import para a classe JOptionPane
// import javax.swing.JOptionPane;
// vamos solicitar ao usuário que informe seu nome
String nome = JOptionPane.showInputDialog(null, "Informe seu nome");
// agora vamos exibir a mensagem de boas-vindas
JOptionPane.showMessageDialog(null, "Seja bem-vinda(a), " + nome);
}
|
Java ::: Pacote java.lang ::: String |
Java para iniciantes - Como verificar se duas strings são iguais ou diferentes usando os métodos equals() e equalsIgnoreCase() da classe StringQuantidade de visualizações: 4828 vezes |
Podemos verificar se duas strings são iguais ou diferentes em Java usando os métodos equals() e equalsIgnoreCase(). O método equals() recebe um objeto do tipo String e o compara com o String atual. Veja sua assinatura:public boolean equals(Object anObject) O resultado será true se as duas strings forem iguais e false em caso contrário. Note que equals() diferencia letras maiúsculas e letras minúsculas. Veja um exemplo:
package estudos;
public class Estudos{
public static void main(String[] args) {
String palavra1 = "Java";
String palavra2 = "java";
// vamos verificar se as duas strings são iguais
if(palavra1.equals(palavra2)){
System.out.println("As duas strings são iguais");
}
else{
System.out.println("As duas strings são diferentes");
}
}
}
Ao executar este código nós teremos o seguinte resultado: As duas strings são diferentes O método equalsIgnoreCase(), por sua vez, não diferencia letras maiúsculas de letras minúsculas. Veja o exemplo anterior usando o método equalsIgnoreCase():
package estudos;
public class Estudos{
public static void main(String[] args) {
String palavra1 = "Java";
String palavra2 = "java";
// vamos verificar se as duas strings são iguais
if(palavra1.equalsIgnoreCase(palavra2)){
System.out.println("As duas strings são iguais");
}
else{
System.out.println("As duas strings são diferentes");
}
}
}
Ao executarmos este código o resultado será: As duas strings são iguais |
C++ ::: Desafios e Lista de Exercícios Resolvidos ::: STL Vector C++ |
Exercício Resolvido de C++ - Escreva um programa C++ com uma função chamada possui_numeros() que recebe um Vector de strings como argumentoQuantidade de visualizações: 568 vezes |
|
Pergunta/Tarefa: Escreva um programa C++ com uma função chamada possui_numeros() que recebe um Vector de strings como argumento e retorna outro Vector contendo apenas as strings que possuem um ou mais números. Se nenhuma das strings recebidas passar no teste, retorne um Vector vazio. Sua saída deverá ser parecida com: Elementos do Vector original: livro mesa7 cami45sa porta Palavras que possuem um ou mais números: mesa7 cami45sa Veja a resolução comentada deste exercício em C++:
#include <iostream>
#include <vector>
using namespace std;
// função que recebe um vetor de strings e retorna
// outro vector contendo apenas as strings que possuem
// um ou mais números
vector<string> possui_numeros(vector<string> palavras) {
// para guardar o resultado
vector<string> resultado;
// vamos percorrer os itens do vector recebido
for(string palavra : palavras) {
// agora percorremos os caracteres de cada string
for(char carac : palavra) {
// é um caractere?
if(isdigit(carac)) {
// adicionamos no segundo vector
resultado.push_back(palavra);
break;
}
}
}
// retorna o vector obtido
return resultado;
}
// função principal do programa
int main(int argc, char *argv[]){
// vamos criar um vector de palavras
vector<string> palavras = {"livro", "mesa7", "cami45sa", "porta"};
// vamos mostrar o conteúdo do vector original
cout << "Elementos do Vector original:\n";
for (string palavra : palavras) {
cout << palavra << " ";
}
// agora obtemos um vector com as palavras que contenham um ou mais
// números
vector<string> resultado = possui_numeros(palavras);
// e mostramos o resultado
cout << "\n\nPalavras que possuem um ou mais números:\n";
for (string palavra : resultado) {
cout << palavra << " ";
}
cout << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
|
C ::: Estruturas de Dados ::: Lista Ligada Simples |
Estruturas de Dados em C - Como remover um nó no final de uma lista ligada simples em C - Listas encadeadas em CQuantidade de visualizações: 2399 vezes |
Nesta dica mostraremos como é possível excluir o nó no fim (o último nó) de uma lista encadeada simples (singly linked list) em C. Veja a função:
// função que permite remover um nó no fim
// da lista, ou seja, o último nó da lista.
// A função retorna um ponteiro para o início da lista
struct No *remover_final(struct No *inicio){
struct No *n; // nó que será removido
// nó que antecede o nó a ser removido. Isso
// faz sentido, já que ele será o último nó
// agora
struct No *anterior;
n = inicio; // aponta para o início da lista
// varremos os nós da lista e paramos um nó antes do
// nó a ser excluído
while(n->proximo != NULL){
anterior = n; // anterior assume o lugar de n
n = n->proximo; // e n assume o seu próximo
}
// anterior passa a ser o último nó agora
anterior->proximo = NULL;
// mostra o nó removido
printf("\nNo removido: %d\n", n->valor);
free(n); // libera o nó que antes era o último
return inicio;
}
Note que a função recebe um ponteiro para o início da lista e retorna também um ponteiro para o início da lista. Tenha o cuidado de verificar se a lista não está vazia antes de tentar fazer a exclusão. No exemplo eu fiz isso na função main(). Veja a listagem completa abaixo:
#include <stdio.h>
#include <stdlib.h>
// estrutura Nó
struct No{
int valor;
struct No *proximo;
};
// fim da estrutura Nó
// função que permite exibir os valores de
// todos os nós da lista
void exibir(struct No *n){
if(n != NULL){
do{
printf("%d\n", n->valor);
n = n->proximo;
}while(n != NULL);
}
else
printf("A lista esta vazia\n\n");
}
// função que permite remover um nó no fim
// da lista, ou seja, o último nó da lista.
// A função retorna um ponteiro para o início da lista
struct No *remover_final(struct No *inicio){
struct No *n; // nó que será removido
// nó que antecede o nó a ser removido. Isso
// faz sentido, já que ele será o último nó
// agora
struct No *anterior;
n = inicio; // aponta para o início da lista
// varremos os nós da lista e paramos um nó antes do
// nó a ser excluído
while(n->proximo != NULL){
anterior = n; // anterior assume o lugar de n
n = n->proximo; // e n assume o seu próximo
}
// anterior passa a ser o último nó agora
anterior->proximo = NULL;
// mostra o nó removido
printf("\nNo removido: %d\n", n->valor);
free(n); // libera o nó que antes era o último
return inicio;
}
// função que permite inserir nós no
// final da lista.
// veja que a função recebe o valor a ser
// armazenado em cada nó e um ponteiro para o
// início da lista. A função retorna um
// ponteiro para o início da lista
struct No *inserir_final(struct No *n, int v){
// reserva memória para o novo nó
struct No *novo = (struct No*)malloc(sizeof(struct No));
novo->valor = v;
// verifica se a lista está vazia
if(n == NULL){
// é o primeiro nó...não deve apontar para
// lugar nenhum
novo->proximo = NULL;
return novo; // vamos retornar o novo nó como sendo o início da lista
}
else{ // não está vazia....vamos inserir o nó no final
// o primeiro passo é chegarmos ao final da lista
struct No *temp = n; // vamos obter uma referência ao primeiro nó
// vamos varrer a lista até chegarmos ao último nó
while(temp->proximo != NULL){
temp = temp->proximo;
}
// na saída do laço temp aponta para o último nó da lista
// novo será o último nó da lista...o campo próximo dele deve
// apontar para NULL
novo->proximo = NULL;
// vamos fazer o último nó apontar para o nó recém-criado
temp->proximo = novo;
return n; // vamos retornar o início da lista intacto
}
}
int main(int argc, char *argv[])
{
// declara a lista
struct No *inicio = NULL;
// vamos inserir quatro valores no final
// da lista
inicio = inserir_final(inicio, 45);
inicio = inserir_final(inicio, 3);
inicio = inserir_final(inicio, 98);
inicio = inserir_final(inicio, 47);
// vamos exibir o resultado
printf("Valores presentes na lista ligada antes da remocao:\n");
exibir(inicio);
// vamos remover o nó no fim da lista
if(inicio != NULL){
inicio = remover_final(inicio);
}
// vamos exibir o resultado
printf("\nValores presentes na lista ligada apos a remocao:\n");
exibir(inicio);
system("pause");
return 0;
}
Ao executar esse código você terá o seguinte resultado: Valores presentes na lista ligada antes da remocao: 45 3 98 47 No removido: 47 Valores presentes na lista ligada apos a remocao: 45 3 98 Pressione qualquer tecla para continuar. . . |
Desafios, Exercícios e Algoritmos Resolvidos de C |
Veja mais Dicas e truques de C |
Dicas e truques de outras linguagens |
|
C# - Como retornar a quantidade de itens em uma ListBox do C# Windows Forms usando a propriedade Count |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





