boa noite eu to tentando rodar esse código mais ele não esta efetuando os calculos…alguem pode me ajudar?
import java.util.Scanner;
public class Cami {
public static void main(String []args){
System.out.println(“Informe o preço do produto”);
Scanner sc = new Scanner(System.in);
int preço = sc.nextInt();
System.out.println(“Informe a quantidade”);
int qnt = sc.nextInt();
int total = sc.nextInt();
total = qnt*preço;
if(total>500){
System.out.println(“Poderá parcelar em até 5 x, vavor informar o numero de parcelas”);
int parcela = sc.nextInt();
total = total/parcela;
System.out.println(“O valor ficará em:” + total);
}else{
System.out.println(“O valor ficará em:” + total);
to tentando arrumar meu codigo mais como sou nova aki ai to ainda aprendendo…então eu botei no eclipse e ele so pede pra informar o ptrco e a qntidade mais nao informa o resto, queria que informasse o valor total e se for parcelado o n de parcelas e o valor de cada uma…
to abusando né?
brigada
[b][color=darkblue] [/color]public class Cami {
public static void main(String []args){
System.out.println([color=blue] [/color]“Informe o preço do produto”);
Scanner sc = new Scanner(System.in);
int preço = sc.nextInt();
System.out.println([/code]“Informe a quantidade”);
int qnt = sc.nextInt();
int total = sc.nextInt();
total = qnt*preço;
if(total>500){
System.out.println(“Poderá parcelar em até 5 x, vavor informar o numero de parcelas”);
int parcela = sc.nextInt();
total = total/parcela;
System.out.println(“O valor ficará em:” + total);
}else{
System.out.println(“O valor ficará em:” + total);
}
}
}
public static void main(String []args)
{
Scanner sc = new Scanner(System.in);
System.out.println("Informe o preço do produto");
int preço = sc.nextInt();
System.out.println("Informe a quantidade");
int qnt = sc.nextInt();
int total;
int total2 = 0;
total = qnt*preço;
if(total>500)
{
System.out.println("Poderá parcelar em até 5 x, favor informar o numero de parcelas");
int parcela = sc.nextInt();
total2 = total/parcela;
System.out.println("O valor ficará em:" + total2);
}
else
{
System.out.println("O valor ficará em:" + total);
}
}
Depois de ler a quantidade, você faz uma leitura na variável total:
int total = sc.nextInt();
Essa leitura é desnecessária, e é ela que aparentemente trava sua aplicação, logo após a leitura da quantidade.
Seu programa trabalha com valores inteiros. Então, você nunca verá casas decimais, mesmo que o valor final não seja divisível pelo número de parcelas. Se isso está ok para você, tudo bem. Caso contrário, considere converter a parcela para double antes de efetuar a divisão.
A linha:
System.out.println("O valor ficará em:" + total);
Aparece na última linha if e no else. Isso não é um problema, mas geralmente podemos eliminar essa duplicação movendo o código para depois do for.
O código corrigido fica assim:
[code]
import java.util.Scanner;
public class Cami {
public static void main(String[] args) {
System.out.println(“Informe o preço do produto”);
Scanner sc = new Scanner(System.in);
int preço = sc.nextInt();
System.out.println(“Informe a quantidade”);
int qnt = sc.nextInt();
int total = qnt * preço;
if (total > 500) {
System.out.println("Poderá parcelar em até 5 x, vavor informar o numero de parcelas");
int parcela = sc.nextInt();
total = total / parcela;
}
System.out.println("O valor ficará em:" + total);
}
boa noite…nossa deu certo mesmo…agora ele rodou…e só mais ua pergunta…vc pode parcelar ele até em 5 vezes tem como se o usuário colocar 6 x o programa informar que dá erro?
obrigada pelas dicas, na proxima vez vou arrumar direitinho…
Bom, fiz algumas melhorias de leve, pra tentar ajudar, preciso começar a participar aqui!
[code] import java.util.Scanner;
public class Testescanner {
public static void main(String[] args) {
System.out.println("Informe o preço do produto");
Scanner sc = new Scanner(System.in);
double preço = sc.nextInt();
System.out.println("Informe a quantidade");
int qnt = sc.nextInt();
double total = qnt * preço;
if ( qnt <= 0)
System.out.println ("Digite a quantidade correta!");
if (total > 500) {
System.out.println("Poderá parcelar em até 5 x, favor informar o numero de parcelas");
int parcela = sc.nextInt();
total = total / parcela;
System.out.println("O valor ficará em: " + parcela + " X de " + total + " reais" );
}
else
System.out.println ("O valor ficara em:" +total);//Caso nao seja parcelado
}
} [/code]
Sou estudante tambem e me surgiu uma duvida : somente posso passar um valor de preço double se usar try e catch?