Java ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas |
Como calcular o coeficiente angular de uma reta em Java dados dois pontos no plano cartesianoQuantidade de visualizações: 2054 vezes |
|
O Coeficiente Angular de uma reta é a variação, na vertical, ou seja, no eixo y, pela variação horizontal, no eixo x. Sim, isso mesmo. O coeficiente angular de uma reta tem tudo a ver com a derivada, que nada mais é que a taxa de variação de y em relação a x. Vamos começar analisando o seguinte gráfico, no qual temos dois pontos distintos no plano cartesiano: ![]() Veja que o segmento de reta AB passa pelos pontos A (x=3, y=6) e B (x=9, y=10). Dessa forma, a fórmula para obtenção do coeficiente angular m dessa reta é: \[\ \text{m} = \frac{y_2 - y_1}{x_2 - x_1} = \frac{\Delta y}{\Delta x} = tg \theta \] Note que __$\Delta y__$ e __$\Delta x__$ são as variações dos valores no eixo das abscissas e no eixo das ordenadas. No triângulo retângulo que desenhei acima, a variação __$\Delta y__$ se refere ao comprimento do cateto oposto e a variação __$\Delta y__$ se refere ao comprimento do cateto adjascente. Veja agora o trecho de código na linguagem Java que solicita as coordenadas x e y dos dois pontos, efetua o cálculo e mostra o coeficiente angular m da reta que passa pelos dois pontos:
package arquivodecodigos;
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);
// coordenadas dos dois pontos
double x1, y1, x2, y2;
// guarda o coeficiente angular
double m;
// x e y do primeiro ponto
System.out.print("Coordenada x do primeiro ponto: ");
x1 = Double.parseDouble(entrada.nextLine());
System.out.print("Coordenada y do primeiro ponto: ");
y1 = Double.parseDouble(entrada.nextLine());
// x e y do segundo ponto
System.out.print("Coordenada x do segundo ponto: ");
x2 = Double.parseDouble(entrada.nextLine());
System.out.print("Coordenada y do segundo ponto: ");
y2 = Double.parseDouble(entrada.nextLine());
// vamos calcular o coeficiente angular
m = (y2 - y1) / (x2 - x1);
// mostramos o resultado
System.out.println("O coeficiente angular é: " + m);
System.out.println("\n\n");
System.exit(0);
}
}
Ao executar este código Java nós teremos o seguinte resultado: Coordenada x do primeiro ponto: 3 Coordenada y do primeiro ponto: 6 Coordenada x do segundo ponto: 9 Coordenada y do segundo ponto: 10 O coeficiente angular é: 0.6666666666666666 Veja agora como podemos calcular o coeficiente angular da reta que passa pelos dois pontos usando o Teorema de Pitágoras. Note que agora nós estamos tirando proveito da tangente do ângulo Theta (__$\theta__$), também chamado de ângulo Alfa ou Alpha (__$\alpha__$):
package arquivodecodigos;
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);
// coordenadas dos dois pontos
double x1, y1, x2, y2;
// guarda os comprimentos dos catetos oposto e adjascente
double cateto_oposto, cateto_adjascente;
// guarda o ângulo tetha (em radianos) e a tangente
double tetha, tangente;
// x e y do primeiro ponto
System.out.print("Coordenada x do primeiro ponto: ");
x1 = Double.parseDouble(entrada.nextLine());
System.out.print("Coordenada y do primeiro ponto: ");
y1 = Double.parseDouble(entrada.nextLine());
// x e y do segundo ponto
System.out.print("Coordenada x do segundo ponto: ");
x2 = Double.parseDouble(entrada.nextLine());
System.out.print("Coordenada y do segundo ponto: ");
y2 = Double.parseDouble(entrada.nextLine());
// vamos obter o comprimento do cateto oposto
cateto_oposto = y2 - y1;
// e agora o cateto adjascente
cateto_adjascente = x2 - x1;
// vamos obter o ângulo tetha, ou seja, a inclinação da hipetunesa
// (em radianos, não se esqueça)
tetha = Math.atan2(cateto_oposto, cateto_adjascente);
// e finalmente usamos a tangente desse ângulo para calcular
// o coeficiente angular
tangente = Math.tan(tetha);
// mostramos o resultado
System.out.println("O coeficiente angular é: " + tangente);
System.out.println("\n\n");
System.exit(0);
}
}
Ao executar este código você verá que o resultado é o mesmo. No entanto, fique atento às propriedades do coeficiente angular da reta: 1) O coeficiente angular é positivo quando a reta for crescente, ou seja, m > 0; 2) O coeficiente angular é negativo quando a reta for decrescente, ou seja, m < 0; 3) Se a reta estiver na horizontal, ou seja, paralela ao eixo x, seu coeficiente angular é zero (0). 4) Se a reta estiver na vertical, ou seja, paralela ao eixo y, o coeficiente angular não existe. |
Java ::: Dicas & Truques ::: Arquivos e Diretórios |
Como adicionar conteúdo a um arquivo texto existente em Java usando BufferedWriter e FileWriterQuantidade de visualizações: 2 vezes |
|
Nesta dica mostrarei como podemos usar as classes BufferedWriter e FileWriter da linguagem Java para adicionar mais conteúdo a um arquivo texto já existente. Veja que só precisamos fornecer o valor true para o segundo parâmetro do construtor da classe FileWriter. Eis o código completo para o exemplo:
package estudos;
import java.io.*;
public class Estudos {
public static void main(String[] args) {
try {
BufferedWriter out = new BufferedWriter(
new FileWriter("C:\\estudos_java\\conteudo.txt", true));
out.write("Esta é a primeira linha de texto\r\n");
out.write("Esta é a segunda linha de texto");
out.close();
}
catch (IOException e) {
System.out.println("Err: " + e.getMessage());
}
System.out.println("Acabei de adicionar conteúdo ao arquivo");
System.exit(0);
}
}
Execute este código Java algumas vezes e veja como o novo conteúdo é adicionado ao conteúdo já existente no arquivo texto. |
Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Arrays e Matrix (Vetores e Matrizes) |
Como multiplicar um vetor ou uma matriz por um escalar no NumPy do Python - Python NumPy para EngenhariaQuantidade de visualizações: 4657 vezes |
|
Esta dica de Python e NumPy é direcionada, principalmente, aos estudantes de Engenharia Civil, que se deparam, logo no início do curso, com o estudo da Geometria Analítica e gostariam de entender melhor a multiplicação de vetores por um escalar. Lembre-se de que um escalar é um valor único, enquanto vetores e matrizes são estruturas que guardam vários valores ao mesmo tempo. Nosso primeiro exemplo será feito em cima de um vetor com os seguintes valores: [3, -5, 4, 1, 9]. O escalar usado será o valor 2, ou seja, temos que multiplicar cada valor no vetor pelo valor 2 e, dessa forma, obtermos um novo vetor. Veja como a linguagem Python facilita esta operação:
# importamos a bibliteca NumPy
import numpy as np
def main():
# declara e cria o vetor
vetor = np.array([3, -5, 4, 1, 9])
# agora vamos multiplicar este vetor pelo escalar 2
escalar = 2
novoVetor = vetor * escalar
# vamos exibir o resultado
print("Vetor inicial: ", vetor)
print("Valor do escalar: ", escalar)
print("Novo vetor: ", novoVetor)
if __name__== "__main__":
main()
Este código Python vai gerar o seguinte resultado: Vetor inicial: [3 -5 4 1 9] Valor do escalar: 2 Novo vetor: [6 -10 8 2 18] Veja agora como podemos efetuar a mesma operação em uma matriz de 2 linhas e 3 colunas (recorde que, em Python, uma matriz nada mais é que um vetor de vetores, ou seja, cada elemento do vetor contém outro vetor):
# importamos a bibliteca NumPy
import numpy as np
def main():
# declara e cria a matriz
matriz = np.array([(4, 12, 50), (5, 3, 1), (11, 9, 7)])
# agora vamos multiplicar esta matriz pelo escalar 2
escalar = 2
novaMatriz = matriz * escalar
# vamos exibir o resultado
print("Matriz inicial: ", matriz)
print("Valor do escalar: ", escalar)
print("Nova matriz: ", novaMatriz)
if __name__== "__main__":
main()
Ao executarmos este código Python nós teremos o seguinte resultado: Matriz inicial: [[4 12 50] [5 3 1] [11 9 7]] Valor do escalar: 2 Nova matriz: [[8 24 100] [10 6 2] [22 18 14]] |
JavaScript ::: Dicas & Truques ::: Strings e Caracteres |
Como remover todos os espaços de uma string em JavaScript usando uma função personalizada remover_espacos()Quantidade de visualizações: 1 vezes |
|
Nesta dica mostrarei como é possível escrever uma função JavaScript que remove todos os espaços de uma string. É claro que você poderá, com uma pequena modificação, alterá-la para que ela substitua quais outros caracteres. Esse é também um bom exercício para a criação de funções na linguagem JavaScript. Veja o código completo:
<!doctype html>
<html>
<head>
<title>Estudos JavaScript</title>
</head>
<body>
<script type="text/javascript">
// função personalizada que remove os
// espaços de uma string
function remover_espacos(str){
var r = "";
for(var i = 0; i < str.length; i++){
if(str.charAt(i) != ' '){
r += str.charAt(i);
}
}
return r;
}
</script>
<script type="text/javascript">
// vamos mostrar a frase normal
var frase = "Gosto muito de JavaScript e HTML";
document.write(frase + "<br>");
// vamos remover os espaços
frase = remover_espacos(frase);
// e agora vamos mostrar o resultado
document.write(frase);
</script>
</body>
</html>
Ao executar este código nós teremos o seguinte resultado: Gosto muito de JavaScript e HTML GostomuitodeJavaScripteHTML |
Nossas 20 dicas & truques de programação mais populares |
|
Python - Exercícios Resolvidos de Python - Como converter de binário para decimal em Python usando o laço for Delphi - Como obter o número do registro atual em um TClientDataSet do Delphi usando a propriedade RecNo |
Você também poderá gostar das dicas e truques de programação abaixo |
|
Delphi - Como converter strings em valores TDateTime usando as funções StrToDate() e StrToDateDef() do Delphi Ruby - Como inserir uma substring em uma determinada posição de uma string em Ruby usando a função insert() |
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 |





