Kezdőoldal » Számítástechnika » Programozás » Miért ír ki 0-t (C nyelv)?...

Miért ír ki 0-t (C nyelv)? Miért működik rosszul?

Figyelt kérdés

még az elején tartok a nyelvnek, de sehogy sem boldogulok a hatványfügvénnyel.

Problémák:

miután Beütöm az első számot, be kell üssek még 1 et hogy váltson a 2. számra.

Ha nem írok double-t a pow-ok után akkor nem jó eredményt ad

Ha nem %e-vel akarom kiszámoltatni, akkor sem jó eredményt ad. A program:


#include <stdio.h>


#include <math.h>

main(){

int a,b;


printf("Ez a program ket szamot emel egymas hatvanyaira!\n");

printf("Usd be az elso szamot\n");

scanf("%d" "\n",&a);

printf("Usd be a masodik szamot!:");

scanf("%d" "\n", &b);

printf("%d a^b\n" , pow(a,b));

printf("%d b^a\n", pow(b,a));

system("PAUSE");

return 0;


}


2015. febr. 21. 19:56
 1/3 uno20001 ***** válasza:
100%
Ha megnézed: [link] akkor láthatod, hogy a pow egy double-t ad vissza, te pedig azt %d-vel (ami az egész számokhoz használható) próbálod meg kiíratni. Próbáld meg %f vagy %lf -fel.
2015. febr. 21. 20:03
Hasznos számodra ez a válasz?
 2/3 A kérdező kommentje:

Köszi, ment a zöld :)

Rájöttem közben hogy %f kell és mivel double-t vár ezért így a helyes :

printf("%f"" a^b""\n" , pow((double)a,(double)b));

printf("%f"" b^a""\n", pow((double)b,(double)a));

system("PAUSE");

return 0;

2015. febr. 21. 20:13
 3/3 anonim ***** válasza:
Jótanács: scanf-ben nincs szükség \n-re ha számot olvasol, mert nem valószínű, hogy ortörést tudnának adni enter lenyomása (azaz scanf beküldése) nélkül. A scanf csak inputm ha sortörést akarsz, azt printfbe rakd.
2015. márc. 1. 20:56
Hasznos számodra ez a válasz?

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!