Eli siis, piti tehä kouluun tällänen pankkitili systeemi mihin voi tallettaa, nostaa ja kattoo paljo siel on rahaa...
Nyt ei sitten tuo talletus toimi... Eli missä vika ?
Tässä koodi :
valikko();
valinta = Lue.merkki();
switch (valinta)
{
case '1': rahat();break;
case '2': otto();break;
case '3': talletus();break;
case 'x':; case 'X':lopetus();break;
default: virhe();break;
}
}while (valinta !='x' && valinta !='X');
}
public static void rahat()
{
System.out.println("Valitsit toiminnon 'tilin saldon tulostus'");
System.out.println("Tilin saldo on: ");
System.out.println(saldo + " Euroa");
stop ();
}
public static void otto()
{
System.out.println("Valitsit toiminnon 'tililtä otto'");
System.out.println("Kuinka paljon haluat ottaa rahaa tilitä ?");
double tiliOtto = Lue.dluku();
if (saldo < tiliOtto)
{
System.out.println("Error!");
System.out.println("Et voi ottaa enempää kuin tilillä on rahaa !");
}
else
saldo = saldo-tiliOtto;
stop ();Ei mun silmiini ainakaan satu toi talletus-metodi.
Ai kato sori jäi tämä puuttumaan :)
}
public static void talletus()
{
System.out.println("Valitsit toiminnon 'tilille talletus'");
System.out.println("Anna talletettava summa");
double talletettava= Lue.dluku();
if (saldo < 0)
System.out.println("Et voi tallettaa 0Euroa tai alle!");
else
saldo=saldo+talletettava;
System.out.println("Talletettu");
stop ();// on näin if (saldo < 0) // eikö pitäisi olla if (talletettava < 0) // on näin saldo=saldo+talletettava; // voisi olla näin saldo += talletettava // on näin stop(); // mitä tuo tekee? jos haluat pysäyttää ohjelman niin System.exit(0);
Toimiikos tuo lopetus tuossa? Mietin vaan notta pitäskö sen olla "case 'x', 'X':". En kyllä muista tuosta sanoa.
Nuo peräkkäiset caset tulisi olla esimerkiksi tyyliin "case 'x': case 'X': case 'Äxä'" ja niin edelleen, eli tuolla näköjään ylimääräinen puolipiste x:n jälkeen... sikäli kun se mitenkään koodin toimintaan vaikuttaa (tyhjä lause?).
Aihe on jo aika vanha, joten et voi enää vastata siihen.