Processamento da Informação

Prof. Ronaldo Cristiano Prati
ronaldo.prati@ufabc.edu.br
Bloco A, Sala 513-2

Vamos Praticar

  • Vamos fazer um programa que calcula (a+b)2(a+b)^2
public class Exemplo1{
    public static void main(String[] args){
      double a = 2.5;
      double b = 3.3;

      double resposta = a*a + 2*a*b + b*b;

      System.out.println(resposta);
    }
}

Vamos Praticar

  • a, b e resposta são variáveis do tipo double.
  • double é um dos tipos em Java para armazenar valores numérios.
  • Outros tipos podem ser encontrados aqui
  • System.out.println() é um método que é usado para imprimir algo na tela. Esse método imprime o que está dentro dos parêntesis
  • System.out refere-se à saída padrão (monitor)

Entrada de dados

  • Ao invés de atribuir um valor fixo a cada variável, podemos permitir que o usuário entre com o valores
import java.util.Scanner;

public class Exemplo1{
    public static void main(String[] args){
      Scanner sc = new Scanner(System.in);
      double a = sc.nextDouble();
      double b = sc.nextDouble();

      double resposta = a*a + 2*a*b + b*b;

      System.out.println(resposta);
    }
}

Entrada de dados

  • Scanner é uma biblioteca em Java que permite monitorar um dispositivo
  • Observe que é necessário importar java.util.Scanner
  • System.in refere-se à entrada padrão (teclado)
  • sc é o nome de uma variável usada para criar uma instanciação de Scanner. Qualquer outro nome poderia ser usado
  • sc.nextDouble() irá capturar um número real digitado pelo usuário e armazená-lo na variável correspondente. Se o usuário não digitar um número real, ocorrerá um erro

Biblioteca Math

import java.util.Scanner;

public class Exemplo1{
    public static void main(String[] args){
      Scanner sc = new Scanner(System.in);
      double a = sc.nextDouble();
      double b = sc.nextDouble();

      double resposta = Math.pow(a,2) + 2*a*b + Math.pow(b,2);

      System.out.println(resposta);
    }
}

Biblioteca Math

  • Math é uma biblioteca matemática para Java
  • Math.pow(x,y) eleva o número x ao expoente y. No exemplo, usamos 2 como expoente, pare elevar o número ao quadrado
  • Outras funcionalidades da biblioteca Math podem ser encontrados aqui

Exercício 1

  • A equação geral da reta no plano pode ser escrita como
    ax+by+c=0a * x + b * y + c = 0

  • Dados os pontos (x1,y1)(x_1,y_1) e (x2,y2)(x_2,y_2), podemos calcular aa, bb e cc fazendo:
    a=y1y2b=x2x1c=x1y2x2y1\begin{aligned} a & = y_1 - y_2\\ b & = x_2 - x_1\\ c & = x_1*y_2 - x_2*y_1 \end{aligned}

  • Escreva um programa em JAVA que leia os pontos (x1,y1)(x_1,y_1) e (x2,y2)(x_2,y_2) a partir do usuário, calcule e imprima os coeficientes da reta.

  • Por exemplo, se a entrada for x1=1,y1=2,x2=3x_1 = 1, y_1=2, x_2 = 3 e y2=8y_2=8, o resultado deve ser a=6,b=2a=-6, b=2 e c=2c=2.

Exercício 2

  • Uma equação do segundo grau da forma
    ax2+bx+c=0ax^2 + bx+c= 0
    tem como raizes
    x1=b+Δ2ax2=bΔ2a\begin{aligned} x_1 & = \frac{- b + \sqrt{\Delta}}{2a} \\ x_2 & = \frac{- b - \sqrt{\Delta}}{2a} \end{aligned}
    em que Δ=b24ac\Delta=b^2 - 4ac
  • Faça um programa que que leia os valores de aa, bb e cc e calcule e imprima x1x_1 e x2x_2. Por exemplo, para a=1,b=5a=1, b=-5 e c=6c=6, x1=2x_1=2 e x2=3x_2=3

Exercício 3

  • Dados dois pontos (x1,y1)(x_1,y_1) e (x2,y2)(x_2,y_2), podemos calcular a distância entre eles fazendo
    d=(x2x1)2+(y2y1)2d = \sqrt{(x_2-x_1)^2 + (y_2-y_1)^2}
    Faça um programa que leia os dois pontos (x1,y1)(x_1,y_1) e (x2,y2)(x_2,y_2), calcule e imprima a distância entre eles. Por exemplo, para x1=2,y1=3,x2=4x_1 = 2, y_1=-3, x_2 = 4 e y2=5y_2=5, a distância é d=68=8.24621125124...d=\sqrt{68}= 8.24621125124...