Dies ist ein einfaches Programm, von einem Lebensmittelgeschäft, wo ich gehe, um zwei Artikel zu kaufen, jeder hat einen Preis und eine Menge.Dieses Programm zeigt nicht den Rabatt, den ich darin gemacht habe
Dieses Programm multipliziert den ersten Artikelpreis mit seiner Menge und den zweiten auch, fügt sie dann zusammen, aber es gibt eine Bedingung, wo, wenn die Summe dieser beiden Artikel gleich oder mehr als 100 ist, ein Rabatt auf die insgesamt, was 5% ist.
Ich schrieb das Programm, aber wenn ich es laufen, und das Ergebnis der beiden Elemente 100, kann das Programm nicht den Rabatt gelten, es gibt mir folgendes: -
Bitte geben Sie die ersten Preis
Bitte geben Sie die erste Menge
Bitte geben Sie den zweiten Preis
Bitte geben Sie die zweite Menge
Das Ergebnis ist = 100
Der Rabatt wird = 0,0
Das Endergebnis Is = 100.0
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
byte p1,q1,p2,q2;
short t1,t2,result = 0;
float resu,disc,finaal;
disc=5/100;
resu=result*disc;
Scanner s = new Scanner(System.in);
System.out.println("Please Enter The First Price");
p1=s.nextByte();
System.out.println("Please enter The First Quantity");
q1=s.nextByte();
System.out.println("Please Enter The Second Price");
p2=s.nextByte();
System.out.println("Please enter The Second Quantity");
q2=s.nextByte();
t1=(short) (p1*q1);
t2=(short) (p2*q2);
result=(short) (t1+t2);
System.out.println("The Result Is ="+result);
if(result>=100)
{
finaal=result-resu;
System.out.println("The Discount Is = "+resu);
System.out.println("The Final Result Is = " + finaal);
}
}
}
'resu = ergebnis * disc;' wird ausgewertet, wenn 'result' 0 ist. Also ergibt 'resu' auch 0. – Berger
'5/100' wird immer 0 sein, du hast im wesentlichen' resu = 0 * 0' –
Sobald du Zeit hast [wie kleine Programme zu debuggen sind] (https://ericlippert.com/ 2014/03/05/how-to-debug-small-programme /) ist eine großartige Ressource –