eli ongelmana laskin.
Ohjelma kysyy ensin mikä laskutoimitus suoritetaan. Tämän jälkeen ohjelma kysyy kokonaisluvut, suorittaa laskutoimituksen ja tulostaa saadun tuloksen. Ohjelman valinta on tehtävä käyttämällä switch()-lausetta.
Käytössäsi on seuraavat laskutoimitukset:
1: vähennyslasku
2: yhteenlasku
3: kertolasku
4: osamäärä
5: jakojäännös
Valitse laskutoimitus:
1
Anna eka luku:1
Anna toka luku:
1
1-1 = 0
Ja koodin jonka olen aikaan saanut:
import java.io.*;
public class Laskenta
{
public static void main(String[] args)
{
int luku1;
int luku2;
int jakojäännös;
int summa;
int tulo;
int osamäärä;
int erotus;
int laskutoimitus;
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
try
{
system.out.print("Valitse laskutoimitus:\n");
laskutoimitus = Integer.parseInt(in.readLine());
Switch(laskutoimitus)
{
case '1':
System.out.print("Anna eka luku:");
luku1 = Integer.parseInt(in.readLine());
System.out.print("Anna toka luku:\n");
luku2 = Integer.parseInt(in.readLine());
erotus=luku1-luku2;
System.out.print("" luku1 "-" luku2 " = " erotus);
break;
case '2':
System.out.print("Anna eka luku:");
luku1 = Integer.parseInt(in.readLine());
System.out.print("Anna toka luku:\n");
luku2 = Integer.parseInt(in.readLine());
summa=luku1 luku2;
System.out.print("" luku1 " " luku2 " = " summa);
break;
case '3':
System.out.print("Anna eka luku:");
luku1 = Integer.parseInt(in.readLine());
System.out.print("Anna toka luku:\n");
luku2 = Integer.parseInt(in.readLine());
tulo=luku1*luku2;
System.out.print("" luku1 "*" luku2 " = " tulo);
break;
case '4':
System.out.print("Anna eka luku:");
luku1 = Integer.parseInt(in.readLine());
System.out.print("Anna toka luku:\n");
luku2 = Integer.parseInt(in.readLine());
osamäärä=luku1/luku2;
System.out.print("" luku1 "/" luku2 " = " osamäärä);
break;
case '5':
System.out.print("Anna eka luku:");
luku1 = Integer.parseInt(in.readLine());
System.out.print("Anna toka luku:\n");
luku2 = Integer.parseInt(in.readLine());
jakojäännös=luku1%luku2;
System.out.print("" luku1 "%" luku2 " = " jakojäännös);
break;
default:
System.out.print("Paina ensi kerralla lukua 1-5!");
break;
}
}
catch(Exception e)
{
System.out.print("Antamasi syöte oli virheellinen...");
}
}
}
Verkkokurssin kääntäjä vain toteaa että lähdekoodissa virheitä.
Oisko kellään ideoita mikä mättää?
Java Laskin
3
4300
Vastaukset
- fidel1
Oletko yrittänyt kääntää tuota itse omalla java-kääntäjällä? Sekun varmasti kertoisi tarkemmin, missä on vika.
En jaksanut hirveän tarkasti lukea koodiasi läpi, mutta ainakin yksi virhe löytyi: "switch" kirjoitetaan pienellä alkukirjaimella - koodaajakeijo
package laskenta;
import java.io.*;
public class Laskenta2
{
public static void main(String[] args) throws IOException //trows IOException ei ole pakollinen tässä...
{
int luku1;
int luku2;
int jakojäännös;
int summa;
int tulo;
int osamäärä;
int erotus;
int laskutoimitus;
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
try{
System.out.print("Valitse laskutoimitus:\n"); //huomaa isokirjain
laskutoimitus = Integer.parseInt(in.readLine());
switch(laskutoimitus)
{
case 1: //huomaa hipsut pois
System.out.print("Anna eka luku:");
luku1 = Integer.parseInt(in.readLine());
System.out.print("Anna toka luku:\n");
luku2 = Integer.parseInt(in.readLine());
erotus=luku1-luku2;
System.out.print("" luku1 "-" luku2 " = " erotus);
break;
case 2:
System.out.print("Anna eka luku:");
luku1 = Integer.parseInt(in.readLine());
System.out.print("Anna toka luku:\n");
luku2 = Integer.parseInt(in.readLine());
summa=luku1 luku2;
System.out.print("" luku1 " " luku2 " = " summa);
break;
case 3:
System.out.print("Anna eka luku:");
luku1 = Integer.parseInt(in.readLine());
System.out.print("Anna toka luku:\n");
luku2 = Integer.parseInt(in.readLine());
tulo=luku1*luku2;
System.out.print("" luku1 "*" luku2 " = " tulo);
break;
case 4:
System.out.print("Anna eka luku:");
luku1 = Integer.parseInt(in.readLine());
System.out.print("Anna toka luku:\n");
luku2 = Integer.parseInt(in.readLine());
osamäärä=luku1/luku2;
System.out.print("" luku1 "/" luku2 " = " osamäärä);
break;
case 5:
System.out.print("Anna eka luku:");
luku1 = Integer.parseInt(in.readLine());
System.out.print("Anna toka luku:\n");
luku2 = Integer.parseInt(in.readLine());
jakojäännös=luku1%luku2;
System.out.print("" luku1 "%" luku2 " = " jakojäännös);
break;
default:
System.out.print("Paina ensi kerralla lukua 1-5!");
break;
}
}
catch(Exception e)
{
System.out.print("Antamasi syöte oli virheellinen...");
}
}
}- koodaajakeijo
Switch(laskutoimitus) pitää olla switch(laskutoimitus) ELI HUOMAA ISOJEN JA PIENTEN KIRJAINTEN MERKITYS!
Tämä siis oli korjattu jo toimivaan koodiini.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
YLE Äänekosken kaupunginjohtaja saa ankaraa arvostelua
Kaupungin johtaja saa ankaraa kritiikkiä äkkiväärästä henkilöstöjohtamisestaan. Uusin häirintäilmoitus päivätty 15 kesä811588Euroopan lämpöennätys, 48,8, astetta, on mitattu Italian Sisiliassa
Joko hitaampikin ymmärtää. Se on aivan liikaa. Ilmastonmuutos on totta Euroopassakin.2671516Asiakas iski kaupassa varastelua tehneen kanveesiin.
https://www.iltalehti.fi/kotimaa/a/33a85463-e4d5-45ed-8014-db51fe8079ec Oikein. Näin sitä pitää. Kyllä kaupoissa valtava2661242Martina lähdössä Ibizalle
Eikä Eskokaan tiennyt matkasta. Nyt ollaan jännän äärellä.1691242- 56857
- 65834
Jos ei tiedä mitä toisesta haluaa
Älä missään nimessä anna mitään merkkejä kiinnostuksesta. Ole haluamatta mitään. Täytyy ajatella toistakin. Ei kukaan em64817Miksi mies tuntee näin?
Eli olen mies ja ihastuin naiseen. Tykkään hänestä ja koskaan hän ei ole ollut minulle ilkeä. Silti ajoittain tunnen kui40811Se nainen näyttää hyvältä vaikka painaisi 150kg
parempi vaan jos on vähän muhkeammassa kunnossa 🤤44771- 37767