1: vähennyslasku
2: yhteenlasku
3: kertolaskuValitse toiminto:2
Anna eka luku:3
Anna toka luku:1
3 1=4
Tältä pitäisi näyttää, mutta viimeisen rivin tulostus ei onnistu. Voisiko joku auttaa, tiedän että se on todella pienestä kiinni..
#include
int main(void)
{
float luku1, luku2;
float miinus, summa, tulo;
char ch;
printf("1: vähennyslasku \n");
printf("2: yhteenlasku \n");
printf("3: kertolasku \n");
printf("Valitse toiminto: ");
ch=getchar();
printf("Anna eka luku: ");
scanf("%f", &luku1);
printf("Anna toka luku: ");
scanf("%f", &luku2);
miinus=luku1-luku2;
summa=luku1 luku2;
tulo=luku1*luku2;
switch (ch)
{
case 1:
printf("%f %f = %f\n",luku1,luku2,(luku1 luku2));
break;
case 2:
printf("%f - %f = %f\n",luku1,luku2,(luku1-luku2));
break;
case 3:
printf("%f * %f = %f\n",luku1,luku2,(luku1*luku2));
}
return 0;
}
Switch-lausella laskeminen
4
596
Vastaukset
- fidel
Pitäiskö sen mennä näin:
switch (ch)
{
case '1':
...
case '2':
...
case '3':
...
}
Käyttäjän syöte '1' on inttinä 49, '2' 50 jne.- Missä Vika?
Juuri näin, nyt toimii!
- maukka79
#include
int main(void)
{
float luku1, luku2;
float miinus, summa, tulo;
char ch;
printf("1: vähennyslasku \n");
printf("2: yhteenlasku \n");
printf("3: kertolasku \n");
printf("Valitse toiminto: ");
ch=getchar();
printf("Anna eka luku:");
scanf("%f", &luku1);
printf("Anna toka luku: ");
scanf("%f", &luku2);
miinus=luku1-luku2;
summa=luku1 luku2;
tulo=luku1*luku2;
switch (ch)
{
case 1:
printf("%f %f=%f",luku1,luku2,(luku1 luku2));
break;
case 2:
printf("%f- %f = %f\n",luku1,luku2,(luku1-luku2));
break;
case 3:
printf("%f * %f = %f\n",luku1,luku2,(luku1*luku2));
}
return 0;
}
ei toimi mikä on vikana - Melkein ratkaistu
Yhteenlaskun olen saanut toimimaan. Vähennyslasku on muuten oikein, mutta luvut yritetään laskea yhteen, vaikka kyseessä on vähennyslasku. Miten sen saa toimimaan? Ongelma näkyy alapuolella.
Testi 2:n suoritusnäkymä
Suoritusaika: < 10 ms
1: vähennyslasku
2: yhteenlasku
3: kertolasku
Valitse toiminto:1
Anna eka luku:45
Anna toka luku:7
45 7=52
Raportti
Apua
Virhe tulostuksessa: ohjelmasi tulosti "45 7=52", vaikka tulostuksen olisi pitänyt olla "45-7=38"
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Vuonna 2026 jää entistä vähemmän rahaa käteen palkansaajille
Työttömyysvakuutusmaksu nousee 0,3 prosenttia. Työeläkemaksu nousee 7,15 prosentista 7,3 prosenttiin. Työmarkkinajärjest1217266Suomen kansa puhunut: Purra huonoimpia ministereitä
Kouluarvosanalla 6–, eli samaa tasoa mitä Purran oikeakin koulutodistus. Epäpätevyys on tullut huomattua Suomen talouden4965408Mitä aiot tehdä uudenvuoden aattona
Mitä olet suunnitellut tekeväsi uudenvuoden aattona ja aiotko ensi vuonna tehdä jotain muutoksia tai uudenvuoden lupauks1513335Joulun ruokajonoissa entistä enemmän avuntarvitsijoita - Mitä ajatuksia tämä herättää?
Räppärit Mikael Gabriel, VilleGalle ja Jare Brand jakoivat ruokaa ja pehmeitäkin paketteja vähävaraisille jouluaattoa ed2162641Marin sitä, Marin tätä, yhyy yhyy, persut jaksaa vollottaa
On nuo persut kyllä surkeaa porukkaa. Edelleen itkevät jonkun Marinin perään, vaikka itse ovat tuhonneet Suomen kansan t492350Varsinainen vetonaula tämä Pyhäjärven keskustelupalsta
Lisää kummasti muuttohaluja, kun lukee tätä foorumia. Tosin väärään suuntaan. Marraskuuhun mennessä tämä vähäinenkin vä681288Pituuden mittaaminen
Ihmisen pituuden mittaaminen ja puolikkaat senttimetrit. Kuuluuko ne puolikkaatkin sentit tai millit teistä ilmoittaa m431282En tiedä enää
Pitäiskö mun koittaa vältellä sua vai mitä? Oon välillä ollut hieman mustasukkainen, myönnän. En ymmärrä miksi en saa su771252Muistattekos kuinka persujen Salainen Akentti kävi Putinin leirillä
Hakemassa jamesbondimaista vakoiluoppia paikan päällä Venäjällä? Siitä ei edes Suomea suojeleva viranomainen saanut puhu111169- 1111143