![]() |
|
|
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 ::: Java Básico |
Exercício Resolvido de Java - Faça um algoritmo que leia a idade de uma pessoa expressa em anos, meses e dias e mostre-a expressa em diasQuantidade de visualizações: 7057 vezes |
|
Pergunta/Tarefa: Faça um algoritmo que leia a idade de uma pessoa expressa em anos, meses e dias e mostre-a expressa em dias. Leve em consideração o ano com 365 dias e o mês com 30. (Ex: 3 anos, 2 meses e 15 dias = 1170 dias.) Resposta/Solução: Para a entrada do usuário, nós vamos usar um objeto da classe Scanner. Veja a resolução comentada:
package arquivodecodigos;
import java.util.Scanner;
public class Estudos{
public static void main(String args[]){
// vamos usar um objeto Scanner para ler a entrada
// do usuário
Scanner entrada = new Scanner(System.in);
// vamos ler a quantidade de anos
System.out.print("Quantidade de anos: ");
int anos = Integer.parseInt(entrada.nextLine());
// vamos ler a quantidade de meses
System.out.print("Quantidade de meses: ");
int meses = Integer.parseInt(entrada.nextLine());
// vamos ler a quantidade de dias
System.out.print("Quantidade de dias: ");
int dias = Integer.parseInt(entrada.nextLine());
// vamos calcular a quantidade de dias
int quant_dias = (anos * 365) + (meses * 30) + dias;
// e mostramos o resultado
System.out.println("Idade em dias: " + quant_dias);
}
}
Ao executar este código Java nós teremos o seguinte resultado: Quantidade de anos: 3 Quantidade de meses: 2 Quantidade de dias: 15 Idade em dias: 1170 |
Java ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas |
Como calcular o ponto de interseção de duas retas em Java - Java para Geometria Analítica e Álgebra LinearQuantidade de visualizações: 1859 vezes |
|
Duas retas podem encontrar-se em 0, 1 ou 2 pontos. No primeiro caso, elas são chamadas paralelas; no segundo, elas são chamadas concorrentes e o ponto de encontro entre elas é chamado ponto de interseção; no terceiro caso, se duas retas possuem dois pontos em comum, então elas obrigatoriamente apresentam todos os pontos em comum e são chamadas coincidentes. Nesta dica mostrarei como podemos encontrar o ponto de interseção (ou intersecção) de duas retas usando Java. Mas, antes de vermos o código, dê uma olhada na seguinte imagem: ![]() Note que temos os pontos A e B correspondentes ao segmento de reta AB e os pontos C e D correspondentes ao segmento de reta CD. Nossa tarefa é encontrar o ponto exato de intersecção entre esses dois segmentos de reta. Veja o código Java completo que nos auxilia na resolução deste problema:
package estudos;
// Classe usada para representar um ponto no
// plano 2d (Plano Cartesiano)
class Ponto{
double x, y;
// construtor da classe
public Ponto(double x, double y){
this.x = x;
this.y = y;
}
}
public class Estudos {
public static void main(String[] args) {
// vamos construir os quatro pontos
Ponto A = new Ponto(5, 7);
Ponto B = new Ponto(9, -4);
Ponto C = new Ponto(-8, 2);
Ponto D = new Ponto(11, 6);
// vamos obter a representação do segmento AB
double a1 = B.y - A.y;
double b1 = A.x - B.x;
double c1 = (a1 * A.x) + (b1 * A.y);
// vamos obter a representação do segmento CD
double a2 = D.y - C.y;
double b2 = C.x - D.x;
double c2 = (a2 * C.x) + (b2 * C.y);
// obtém o determinante
double determinante = (a1 * b2) - (a2 * b1);
// as duas retas são paralelas?
if(determinante == 0){
System.out.println("\nAs duas retas são paralelas.\n");
}
else{
// e construímos o ponto de intersecção
double x = ((b2 * c1) - (b1 * c2)) / determinante;
double y = ((a1 * c2) - (a2 * c1)) / determinante;
Ponto inters = new Ponto(x, y);
System.out.printf("O ponto de interseção é: x = %.2f; y = %.2f",
inters.x, inters.y);
}
System.out.println();
}
}
Ao executar este código Java nós teremos o seguinte resultado: O ponto de interseção é: x = 5,76; y = 4,90 De fato, se você olhar a imagem novamente e desenhar este ponto, verá que ele se situa exatamente na intersecção das retas indicadas. |
Java ::: Java para Engenharia ::: Unidades de Medida |
Como converter Centímetros Cúbicos em Metros Cúbicos em Java - Java para Física e EngenhariaQuantidade de visualizações: 644 vezes |
|
Em muitas situações nós temos uma medida de volume em cm3 e queremos transformá-la em m3, que é a medida de volume do Sistema Internacional (SI). Para isso só precisamos dividir os centímetros cúbicos por 1.000.000. Veja a fórmula: \[\text{Metros Cúbicos} = \frac{\text{Centímetros Cúbidos}}{1.000.000} \] Agora veja o código Java que pede para o usuário informar a medida de volume em centímetros cúbicos e a converte para metros cúbicos. Note que mostrei como exibir o resultado em notação científica e sem notação científica:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
// para ler a entrada do usuário
Scanner entrada = new Scanner(System.in);
// vamos ler a medida em centímetros cúbicos
System.out.print("Informe os centímetros cúbicos: ");
double cent_cubicos = Double.parseDouble(entrada.nextLine());
// agora calculamos os metros cúbicos
double met_cubicos = cent_cubicos / 1000000.00;
// e mostramos o resultado
System.out.println("Você informou " + cent_cubicos +
" centímetros cúbicos.");
System.out.println("Isso equivale a " + met_cubicos +
" metros cúbicos.");
System.out.printf("Sem notação científica: %f\n",
met_cubicos);
}
}
Ao executar este código Java nós teremos o seguinte resultado: Informe os centímetros cúbicos: 35 Você informou 35.0 centímetros cúbicos. Isso equivale a 3.5E-5 metros cúbicos. Sem notação científica: 0,000035 |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Python Básico |
Exercícios Resolvidos de Python - Como testar se um número é potência de dois usando PythonQuantidade de visualizações: 1129 vezes |
|
Pergunta/Tarefa: Escreva um programa Python contendo um método que recebe um número inteiro e retorna um valor boolean indicando se o valor informado é potência de dois. Sua saída deverá ser parecida com: Informe um valor inteiro: 8 O valor 8 é potência de dois Informe um valor inteiro: 34 O valor 34 não é potência de dois Informe um valor inteiro: 64 O valor 64 é potência de dois Veja a resolução comentada deste exercício usando Python:
# método que recebe um número inteiro e informe se ele é
# potência de dois
def is_potencia_dois(n):
# usamos o operador AND de bits para verificar se n AND n-1
# é igual a 0
return (n > 0) and (n & (n - 1)) == 0
# método principal
def main():
# vamos pedir para o usuário informar um valor inteiro
valor = int(input("Informe um valor inteiro: "))
# vamos testar se o número informado é potência de dois
if is_potencia_dois(valor):
print("O valor {0} é potência de dois".format(valor))
else:
print("O valor {0} não é potência de dois".format(valor))
if __name__== "__main__":
main()
|
Java ::: Design Patterns (Padrões de Projeto) ::: Singleton Pattern |
Padrões de projeto para iniciantes - Como usar o padrão de projeto Singleton em suas aplicações JavaQuantidade de visualizações: 12502 vezes |
|
O padrão de projeto Singleton (ou Singleton Pattern) é um dos padrões de projeto mais conhecidos e implementado extensivamente nas linguagens que suportam programação orientada a objetos, tais como Java e C#. Nesta dica eu mostrarei como implementá-lo. Uma das situações nas quais usamos o padrão Singleton é quando queremos que somente uma instância de uma determinada classe seja criada e que esta esteja disponível para todas as demais classes do sistema. Um exemplo disso é uma classe responsável por registrar logs do sistema, uma classe responsável por obter conexões com o banco de dados, ou ainda uma classe que concentra dados de configuração da aplicação. Assim, a chave do padrão Singleton é um método estático, geralmente chamado de getInstance(), que retorna uma nova instância da classe se esta ainda não foi instanciada. Se a classe já tiver sido instanciada, o método getInstance() retorna a instância já existente. Vamos ver um exemplo deste padrão em Java. Observe o código a seguir: Código para Logger.java:
package estudos;
// Uma classe Singleton responsável por gravar
// logs no sistema
public class Logger {
// variável estática e privada que guarda a instância
// atual da classe
private static Logger instancia = null;
// Método estático que retorna uma instância já existente, ou
// cria uma nova instância
public static Logger getInstance() {
if (instancia == null) {
instancia = new Logger();
}
return instancia;
}
// Construtor privado para evitar que instâncias sejam
// criadas usando new
private Logger() {
// não precisamos fazer nada aqui
}
// método usado para registrar logs
public void registrarLog(String dados) {
System.out.println("Vou registrar o log: " + dados);
}
}
Veja agora como podemos chamar o método getInstance(), obter um objeto da classe Logger e "registrar um log": Código para Main.java:
package estudos;
public class Main {
public static void main(String[] args) {
// vamos registrar um novo log usando a classe Singleton
Logger.getInstance().registrarLog("Novo usuário cadastrado.");
}
}
Ao executar esta aplicação teremos a seguinte saída: Vou registrar o log: Novo usuário cadastrado. |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





