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
559
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
- 1077773
Siekkilässä ajettu ihmisten yli- mitä tapahtui? Länsi-Savo ei ole uutisoinut asiata
Manneja, vaiko matuja?1126036- 835187
- 1394546
Alavuden sairaala
Säästääkö Alavuden sairaala sähkössä. Kävin Sunnuntaina vast. otolla. Odotushuone ja käytävä jolla lääkäri otti vastaan113230- 633014
- 582948
Törkeää toimintaa
Todella törkeitä kaheleita niitä on Ylivieskassakin. https://www.ess.fi/uutissuomalainen/8570818102454- 612437
Hei........
Pelkkä sun näkeminen saa mut hymyilemään pitkin iltaa. Oot niin 🤩😘 Edellinen poistettiin.562066