Kezdőoldal » Számítástechnika » Programozás » Miért nem működik rendesen a...

Miért nem működik rendesen a következő kód C-ben?

Figyelt kérdés

Az első két vizsgálatot rendesen végrehajtja, bármelyiket teszem a két első helyre, de az utolsó kettőt már nem. Vizsgálati eredményt nem ír ki hozzájuk.

Túl sok lenne az elágazás?


#include<stdio.h>


main()

{

int n;


printf("\nKérek egy egész számot: ");

scanf("%d", &n);

if (n > 0)

{

if (n % 2==0)

printf("Pozitív páros szám!\n");

}

else if (n < 0)

{

if (n % 2==0)

printf("Negatív páros szám!\n");

}

else if (n > 0)

{

if (n % 2!=0)

printf("Pozitív páratlan szám!\n");

{

else if (n < 0)

{

if (n % 2!=0)

printf("Negatív páratlan szám!\n");

}

}



2013. márc. 9. 16:05
 1/5 A kérdező kommentje:
A pozitív páros szám után {-et gépeltem, de csak itt gépeltem el, a kód az jó.
2013. márc. 9. 16:12
 2/5 anonim ***** válasza:
100%

A kódod átgondolatlan, átláthatatlan (legalábbis számomra).


if (n > 0)

{

if (n % 2 == 0)

printf("Pozitiv paros szam!\n");

else

printf("Pozitiv paratlan szam!\n");

}

else if (n < 0)

{

if (n % 2 == 0)

printf("Negativ paros szam!\n");

else

printf("Negativ paratlan szam!\n");

}

else

printf("Nulla!\n");

2013. márc. 9. 17:26
Hasznos számodra ez a válasz?
 3/5 anonim ***** válasza:
Pont úgy gondoltam, ahogy az előttem író.
2013. márc. 9. 17:29
Hasznos számodra ez a válasz?
 4/5 anonim ***** válasza:
A hiba oka: ugye az első if-edbe akkor megy bele, ha n>0. Ezen belül megvizsgálja hogy páros-e. Aztán ugye az else a legközelebbi lezárt ifhez tartozik, tehát belelép ha nem pozitív a szám. Itt megvizsgálod hogy negatív-e (fölöslegesen). Majd a negatív számra megnézed hogy pozitív-e...
2013. márc. 9. 17:37
Hasznos számodra ez a válasz?
 5/5 A kérdező kommentje:
Köszönöm a válaszokat, én azt gondoltam, hogy minden egyes feltételt végignéz. Watch funkcióval jól látszik a működése.
2013. márc. 9. 19:36

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!