Olá. me chamo Luiz Carlos e estou iniciando em Java com o livro “Java como programar” e minha duvida é saber se estou fazendo certo o que me pedem. kkk
Escreva um aplicativo que leia dois inteiros, além de determinar se o primeiro é um múltiplo do segundo e imprimir o resultado. [Dica: utilize o operador de resto.]. Fiz isso que segue, alguém pode me dizer se o que fiz é a resposta correta? Já antecipo todos os agradecimentos possíveis.
import java.util.Scanner;
public class Exe226 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int num1, num2;
System.out.print("Entre o primeiro número: ");
num1 = input.nextInt();
System.out.print("Entre o segundo número: ");
num2 = input.nextInt();
if(num1 % num2 == 0) {
System.out.println("Os números são divisíveis entre si. ");
System.out.println(num1 + " / " + num2 + " = " + (num1/num2));
} else {
System.out.println("Os números não são divisíveis entre si. ");
}
}
}
Obrigado pela sua avaliação. Me motiva mais ainda.
Agora já estou tentando formatar o resultado 'double’
para 2 casas decimais (como não é a proposta do exercício).
if(num1 % num2 == 0) {
System.out.println("Os números são divisíveis entre si. ");
System.out.println(num1 + " / " + num2 + " = " + (num1/num2));
} else {
dnum1 = (double) num1;
dnum2 = (double) num2;
System.out.println("Os números não são divisíveis entre si. ");
System.out.println(dnum1 + " / " + dnum2 + " = " + (dnum1/dnum2));
}
Vou neste outro desafio.
Obrigado mesmo. Vocês são bem legais.
Olá, outra coisa que você poderia fazer para ir se acostumando, é testar se o divisor não é zero, pois uma divisão por zero pode gerar uma exception. 
Pode fazer assim:
System.out.printf("%.2f", variavelNumerica);
Ou:
String formatado = String.format("%.2f", variavelNumerica);
System.out.println(formatado);
Te amo staroski. kkkk
Gastei horas e até já havia postado uma terrível duvida sobre esses “%,2f”…
estou tendo muitas dúvidas de quando e como usar.
Obrigado pela ajuda viu.
Hei.
Acho que entendi, mas ainda não sei como fazer a coisa.
Se colocar 0 no divisor, da erro.
Estou tentando uma forma de avisar que não pode colocar 0, tipo:
"Não é possível dividir um número por 0, tente novamente!"
e voltar novamente para a entrada do divisor (num2).
Algo como um método: TestaValor(num2) e outro que FazaConta()
ai eu poderia testar os valores e permitir ou não a operação.
Ta me faltando lógica ou conhecimento java. kkk
Hei gente!
Gostaria que alguém desse uma olhada e ajudasse a melhorar.
Obrigado a todos.
import java.util.Scanner; //importe do pacote Scanner para recebcer dados pelo usuário
public class Exe226 { //identificação da classe (exercício)
Scanner input = new Scanner(System.in); //
float num1 = 0; //declaração das variávies (o exercício pede inteiros
float num2 = 0; // mas para esta 2ª adequação usamos double.
public static void main(String[] arg) { //método principal
Exe226 numeros = new Exe226();
numeros.Valores();
}
public void Valores() { //método para receber os valores
System.out.print("Entre o primeiro número: ");
num1 = input.nextFloat();
System.out.print("Entre o segundo número : ");
num2 = input.nextFloat();
Exe226 calcula = new Exe226(); //chamada do método que faz o cálculo
calcula.ProvaNumeros(num1, num2);
}
public void ProvaNumeros(float nume1, float nume2) { // testa se os valores são diferentes de 0
if (nume1 == 0 || nume2 == 0) {
System.out.println("Não é permitido entrar valor 0. Refaça as entradas. ");
Valores();
}
FazaConta(nume1, nume2); //chamada do método que faz a conta
}
public void FazaConta(float nume1, float nume2) {
if (nume1 % nume2 == 0) {
System.out.println("Os números são divisívies entre si.");
} else {
System.out.println("Os números não são divisívies entre si.");
}
System.out.printf(nume1 + " / " + nume2 + " = " + "%.2f\n\n", nume1/nume2);
}
}
Fiz uns arranjos ainda sem entender tudo direito.
Obrigado pela força.
Espero estar certo.