![]() |
|
|
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. |
||
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: 2001 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 ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercícios Resolvidos de Java - Usando um laço for para solicitar ao usuário que informe 10 valores inteiros e mostrar quantos valores negativos foram informadosQuantidade de visualizações: 10782 vezes |
|
Pergunta/Tarefa: Escreva um programa Java console que usa o laço for para solicitar que o usuário digite 10 valores inteiros. Em seguida seu programa deverá contar quantos valores negativos foram informados. Dica: Use um objeto da classe Scanner para obter a entrada do usuário. Resposta/Solução: A resolução deste exercício envolve a criação de uma variável auxiliar para contar a quantidade de valores negativos lidos, do tipo int, e que deverá ser inicializada com o valor 0. Veja: int negativos = 0; // guardará a quantidade de valores negativos
public static void main(String[] args){
// para este exercício você deverá importar a classe
// Scanner. Ela está no pacote java.util.*;
// vamos construir um objeto da classe Scanner para ler a
// entrada do usuário
Scanner entrada = new Scanner(System.in);
int valor; // guarda o valor lido
int negativos = 0; // guardará a quantidade de valores negativos
// vamos pedir ao usuário que informe 10 valores inteiros
for(int i = 0; i < 10; i++){
System.out.print("Informe o " + (i + 1) + "º valor: ");
valor = Integer.parseInt(entrada.nextLine());
// vamos verificar se o valor informado é negativo
if(valor < 0){
negativos++;
}
}
// vamos exibir a quantidade de números negativos lidos
System.out.println("\nVocê informou " + negativos + " valores negativos.\n");
}
|
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Ler um número inteiro, separar seus dígitos e imprimí-los individualmente separados por espaçosQuantidade de visualizações: 20231 vezes |
|
Pergunta/Tarefa: Escreva um programa Java console ou GUI que leia um inteiro de três dígitos, separe o valor em seus dígitos correspondentes e imprima-os individualmente separados por espaço. Por exemplo, se o usuário informar o valor 398, seu programa deverá exibir 3 9 8. Veja a saída que deverá ser gerada (use apenas os operadores aritméticos para a realização desta tarefa): Informe um valor inteiro de três dígitos: 398 Os dígitos separados são: 3 9 8 Veja a resolução comentada deste exercício usando Java console:
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 um valor inteiro
// na faixa 100 a 999 (incluindo)
System.out.print("Informe um valor inteiro de três dígitos: ");
// vamos ler o valor informado
int valor = Integer.parseInt(entrada.next());
// vamos verificar se o valor está na faixa permitida
if(valor < 100 || valor > 999){
System.out.println("Valor fora da faixa permitida");
System.exit(0);
}
// vamos extrair os dígitos indidualmente, da esquerda para a direita
// vamos obter o primeiro dígito
int primeiro = valor / 100;
valor = valor % 100;
// vamos obter o segundo dígito
int segundo = valor / 10;
valor = valor % 10;
// vamos obter o terceiro valor
int terceiro = valor;
System.out.println("Os dígitos separados são: " + primeiro + " " +
segundo + " " + terceiro);
}
|
C# ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Tutorial C# - Como usar o laço while (enquanto) da linguagem C#Quantidade de visualizações: 14024 vezes |
O laço while (enquanto) é usado quando queremos repetir uma instrução ou bloco de instruções ENQUANTO uma condição for satisfatória. Veja um exemplo:
static void Main(string[] args){
int valor = 1;
while(valor <= 10){
Console.WriteLine("{0}", valor);
valor++;
}
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
Este trecho de código conta de 1 até 10. Veja que antes de cada iteração do laço nós testamos se o valor da variável de controle é menor ou igual a 10. A iteração acontece somente se esta condição for satisfeita, o que nos mostra que um laço while pode nunca ser executado (o que aconteceria se a condição fosse falsa já na entrada). Note ainda que dentro de cada iteração nós incrementamos o valor da variável de controle. Isso é feito para que o laço não seja executado infinitamente. Veja um outro exemplo de laço while, desta vez simulando um menu de opções:
static void Main(string[] args){
// variável que registra a opção do usuário
int opcao;
// lê a opção
Console.Write("Informe a opção 1, 2 ou 3" +
" (-1 para sair): ");
// laço while que mostra as opções do menu enquanto
// o valor -1 não for informado
while((opcao = int.Parse(Console.ReadLine())) != -1){
switch(opcao){
case 1:
Console.WriteLine("Executando a opção 1");
break;
case 2:
Console.WriteLine("Executando a opção 2");
break;
case 3:
Console.WriteLine("Executando a opção 3");
break;
default:
Console.WriteLine("Opção incorreta");
break;
}
// mostra o texto das opções novamente
Console.Write("Informe a opção 1, 2 ou 3" +
" (-1 para sair): ");
}
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
Se você é realmente iniciante em C#, notará que este exemplo é um pouco mais elaborado. Desta forma, estude-o atentamente. É uma técnica muito útil quando estamos escrevendo programas console, uma vez que a maioria deles possui um menu de opções. |
Nossas 20 dicas & truques de programação mais populares |
|
JavaScript - Como retornar o código ASCII ou Unicode associado a um caractere em JavaScript usando a função charCodeAt() Java - Como inserir uma substring em uma string em Java usando o método insert() da classe StringBuffer |
Você também poderá gostar das dicas e truques de programação abaixo |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
|
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




