![]() |
|
|
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 Engenharia Civil - Construção Civil |
||
|
||
|
|
||
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercício Resolvido de Java - Percorrer todos os elementos de um array, exibir a soma dos valores positivos e a quantidade de valores negativosQuantidade de visualizações: 13292 vezes |
|
Pergunta/Tarefa: Considere o seguinte vetor de inteiros:
// um array de inteiros contendo sete elementos
int valores[] = {-3, 9, 12, -34, -2, 20, 10};
Seu programa deverá exibir uma saída com a mensagem: A soma dos valores positivos é: 51 A quantidade de valores negativos é: 3 Resposta/Solução: Veja a resolução comentada deste exercício em Java:
public static void main(String[] args){
// um array de inteiros contendo sete elementos
int valores[] = {-3, 9, 12, -34, -2, 20, 10};
// o primeiro passo é criar uma variável que vai receber a soma
// dos valores positivos
int soma_positivos = 0;
// agora uma variável para receber a quantidade de valores negativos
int quant_negativos = 0;
// agora vamos usar uma laço for para percorrer todos os elementos
// do array
for(int i = 0; i < valores.length; i++){
// vamos verificar se o valor do elemento atual é negativo
if(valores[i] < 0){
quant_negativos++;
}
else{ // o valor é positivo
soma_positivos = soma_positivos + valores[i];
}
}
// vamos exibir a soma dos valores positivos
System.out.println("A soma dos valores positivos é: " + soma_positivos);
// vamos exibir a quantidade de valores negativos
System.out.println("A quantidade de valores negativos é: " + quant_negativos);
}
|
C++ ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular juros compostos e montante usando C++Quantidade de visualizações: 18144 vezes |
|
O regime de juros compostos é o mais comum no sistema financeiro e portanto, o mais útil para cálculos de problemas do dia-a-dia. Os juros gerados a cada período são incorporados ao principal para o cálculo dos juros do período seguinte. Chamamos de capitalização o momento em que os juros são incorporados ao principal. Após três meses de capitalização, temos: 1º mês: M = P .(1 + i) 2º mês: o principal é igual ao montante do mês anterior: M = P x (1 + i) x (1 + i) 3º mês: o principal é igual ao montante do mês anterior: M = P x (1 + i) x (1 + i) x (1 + i) Simplificando, obtemos a fórmula: M = P . (1 + i)^n Importante: a taxa i tem que ser expressa na mesma medida de tempo de n, ou seja, taxa de juros ao mês para n meses. Para calcularmos apenas os juros basta diminuir o principal do montante ao final do período: J = M - P Vejamos um exemplo: Considerando que uma pessoa empresta a outra a quantia de R$ 2.000,00, a juros compostos, pelo prazo de 3 meses, à taxa de 3% ao mês. Quanto deverá ser pago de juros? Veja o código C++ para a resolução:
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
float principal = 2000.00;
float taxa = 0.03; // 3%
int meses = 3;
float montante = principal * pow((1 + taxa), meses);
float juros = montante - principal;
cout << "O total de juros a ser pago é: " <<
juros << "\n";
cout << "O montante a ser pago é: " <<
montante << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Um outra aplicação interessante é mostrar mês a mês a evolução dos juros. Veja o código a seguir:
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
float principal = 2000.00;
float taxa = 0.03; // 3%
int meses = 3;
float anterior = 0.0;
float montante;
float juros;
for(int i = 1; i <= meses; i++){
montante = principal * pow((1 + taxa), i);
juros = montante - principal - anterior;
anterior += juros;
cout << "Mês: " << i << " - Montante: " <<
montante << " - Juros " << juros << "\n";
}
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
|
Python ::: Pandas Python Library (Biblioteca Python Pandas) ::: DataFrame |
Como usar o objeto DataFrame da biblioteca Pandas do PythonQuantidade de visualizações: 2196 vezes |
|
A biblioteca Pandas do Python é uma das preferidas para o estudo e desenvolvimento de soluções envolvendo Big Data, Data Science, Data Mining, Machine Learning, Inteligência Artificial, etc. E o objeto DataFrame é uma das partes mais importantes dessa biblioteca. Um objeto DataFrame é uma estrutura de dados bidimensional, ou seja, uma tabela contendo linhas e colunas. Nesse formato tabular, que pode ter seu tamanho redimensionado, as informações contidas no objeto DataFrame podem ser atualizadas de acordo com as necessidades do nosso código. Além disso, linhas e colunas podem ser adicionadas ou excluídas em tempo de execução. A forma mais comum de criarmos um DataFrame é usando o seu construtor. Veja:
# importamos a biblioteca Pandas
import pandas as pd
def main():
# conteúdo do DataFrame
produtos = [['Notebook AB43', 43], ['Tela LED', 87],
['Bateria 16 Volts', 120]]
# vamos construir o DataFrame
df = pd.DataFrame(produtos, columns=['Produto', 'Estoque'])
# vamos mostrar o conteúdo do DataFrame
print(df)
if __name__== "__main__":
main()
Ao executarmos este código nós teremos o seguinte resultado:
Produto Estoque
0 Notebook AB43 43
1 Tela LED 87
2 Bateria 16 Volts 120
Aqui nós usamos uma list contendo três lists, ou seja, uma matrix de três linhas e duas colunas. Veja como obter o mesmo resultado usando um dicionário:
# importamos a biblioteca Pandas
import pandas as pd
def main():
# conteúdo do DataFrame
produtos = {'Produto':['Notebook AB43', 'Tela LED',
'Bateria 16 Volts'], 'Estoque':[43, 87, 120]}
# vamos construir o DataFrame
df = pd.DataFrame(produtos)
# vamos mostrar o conteúdo do DataFrame
print(df)
if __name__== "__main__":
main()
Execute este código e verá que o DataFrame resultante é o mesmo do código anterior. |
C++ ::: Dicas & Truques ::: Programação Orientada a Objetos |
Programação Orientada a Objetos em C++ - Como usar construtores em suas classes C++Quantidade de visualizações: 16289 vezes |
|
Quando um objeto de uma classe C++ é criado, a linguagem chama um construtor para tal classe. Se nenhum construtor estiver definido, um construtor padrão é invocado. Este construtor aloca memória para o objeto, mas não o inicializa. Um construtor é um método que definimos em nossas classes C++ e que possui o mesmo nome da classe. Um construtor não possui tipo de retorno e não retorna nenhum valor. Em geral construtores são públicos, mas, é possível termos construtores privados. Neste caso, somente um método estático da classe poderia criar novos objetos da classe (quando puder dê uma olhada no padrão de projeto Singleton). O uso mais frequente dos métodos construtores é quando queremos inicializar valores das variáveis e demais recursos no momento da criação de uma nova instância da classe. Esta é uma técnica útil, visto que não precisamos dispor de esforço extra para inicializar as variáveis de instância de um objeto, individualmente, após sua criação. Vamos ver um exemplo da definição e uso de construtores em uma classe C++? Comece analisando o código para o arquivo de definição da classe Pessoa: Código para Pessoa.h:
// vamos evitar múltiplas inclusões do
// arquivo de cabeçalho (header file)
#ifndef PESSOA_H
#define PESSOA_H
// vamos incluir o header string
#include <string>
using namespace std;
class Pessoa{
public:
// construtor da classe Pessoa
Pessoa(string, string, int);
// método que permite retornar o nome da pessoa
string getNome();
// método que permite retornar o e-mail da pessoa
string getEmail();
// método que permite retornar a idade da pessoa
int getIdade();
private:
// variáveis privadas
string nome;
string email;
int idade;
};
#endif
Veja a assinatura do método construtor: Pessoa(string, string, int); Note que na lista de parâmetros do construtor não precisamos informar os nomes dos parâmetros, apenas seus tipos. Veja agora o arquivo de implementação para esta classe: Código para Pessoa.cpp:
// arquivo de implementação para a
// classe Pessoa
// vamos incluir o header Pessoa.h
#include "Pessoa.h"
// implementação do construtor
Pessoa::Pessoa(string nome, string email, int idade){
this->nome = nome;
this->email = email;
this->idade = idade;
}
// método que permite obter o nome da pessoa
string Pessoa::getNome(){
return this->nome;
}
// método que permite obter o email da pessoa
string Pessoa::getEmail(){
return this->email;
}
// método que permite obter a idade da pessoa
int Pessoa::getIdade(){
return this->idade;
}
Note que na implementação do método construtor nós recebemos os argumentos para os parâmetros e os usamos para inicializar as variáveis privadas da instância da classe. Observe o uso do ponteiro this para nos referirmos à instância atual da classe Pessoa. Finalmente, veja o código para o método main() do programa. É aqui que criamos um novo objeto da classe Pessoa e usamos seu método construtor para inicializar suas variáveis privadas de uma só vez: Código para main.cpp:
#include <cstdlib>
#include <iostream>
// vamos incluir a classe Pessoa
#include "Pessoa.h"
using namespace std;
int main(int argc, char *argv[])
{
// vamos criar um novo objeto da classe Pessoa
Pessoa *p = new Pessoa("Osmar J. Silva",
"osmar@arquivodecodigos.net", 38);
// vamos exibir os dados da pessoa
cout << "Nome: " << p->getNome() << endl;
cout << "E-Mail: " << p->getEmail() << endl;
cout << "Idade: " << p->getIdade() << endl;
system("PAUSE");
return EXIT_SUCCESS;
}
Além do construtor, uma classe C++ possui também um método destrutor. Veja minhas dicas relacionadas a este assunto para aprender como definir e usar destrutores em suas classes C++. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercícios Resolvidos de Java - Laços - Faça um programa para calcular o valor das seguintes expressõesQuantidade de visualizações: 2544 vezes |
|
Exercício Resolvido de Java - Laços - Faça um programa para calcular o valor das seguintes expressões Pergunta/Tarefa: Faça um programa para calcular o valor das seguintes expressões: 1) __$S_1 = \frac{1}{1} + \frac{3}{2} + \frac{5}{3} + \frac{7}{4} + \text{...} + \frac{99}{50} __$ 2) __$S_2 = \frac{2^1}{50} + \frac{2^2}{49} + \frac{2^3}{48} + \text{...} + \frac{2^\text{50}}{1} __$ 3) __$S_3 = \frac{1}{1} - \frac{2}{4} + \frac{3}{9} - \frac{4}{16} + \frac{5}{25} - \text{...} - \frac{10}{100} __$ Resposta/Solução: Em ambas as expressões nós temos o último termo nos informando os valores limites. Dessa forma, basta fixarmos um laço for ou laço while com estes limites. Veja a resolução deste exercício em código Java console:
package arquivodecodigos;
public class Estudos{
public static void main(String[] args){
// primeira expressão
int numerador = 1;
int denominador = 1;
double resultado = 0.0;
// laço while para montar os termos e fazer a somatória
while(numerador <= 99){
resultado = resultado + ((numerador * 1.0) / denominador);
numerador = numerador + 2;
denominador++;
}
// agora mostramos o resultado
System.out.println("Primeira expressão: " + resultado);
// segunda expressão
int expoente = 1;
denominador = 50;
resultado = 0.0;
// laço while para montar os termos e fazer a somatória
while(denominador >= 1){
resultado = resultado + ((Math.pow(2, expoente) * 1.0) / denominador);
expoente++;
denominador--;
}
// agora mostramos o resultado
System.out.println("Segunda expressão: " + resultado);
// terceira expressão
numerador = 1;
denominador = 1;
resultado = 0.0;
int sinal = 1;
// laço while para montar os termos e fazer a somatória
while(numerador <= 10){
if(sinal > 0){ // somar
resultado = resultado + ((numerador * 1.0) / denominador);
}
else{ // subtrair
resultado = resultado - ((numerador * 1.0) / denominador);
}
numerador++;
denominador = numerador * numerador;
sinal = sinal * -1;
}
// agora mostramos o resultado
System.out.println("Terceira expressão: " + resultado);
}
}
Ao executar este código Java nós teremos o seguinte resultado: Primeira expressão: 95.5007946616706 Segunda expressão: 1.5608286920413398E15 Terceira expressão: 0.6456349206349207 |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
|
Delphi - Como usar o controle TStringGrid em suas aplicações Delphi - O componente TStringGrid do Delphi Java - Como criar um Jogo da Velha em Java - Jogo completo com código fonte comentado - Versão console |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




