[ xeron @ 28.09.2005. 18:26 ] @
| Kako napraviti program koji trazi da se unesu dva broja i onda stepenuje prvi broj na drugi....
Ova je moj pokusaj u cemu je greska ?
Code: #include <stdio.h>
#include <windows.h>
int power(int m, int n);
main(){
int baza, exp, rezultat;
printf("Unesite broj koji zelite da stepenujete pa onda exponent stepenovanja\n");
scanf("%d",&baza);
scanf("%d",&exp);
rezultat=power(baza,exp);
printf("%d podignut na %d iznosi %d",baza,exp,rezultat);
return 0;
system ("pause");
}
int power(int base, int n){
int i,p;
for (i=0;i<=n;++i)
p=p*base;
return p;
}
|
[ X Files @ 28.09.2005. 18:38 ] @
Odokativnom metodom:
int power(int base, int n){
int i,p=1; // <--- INICIJALNA VREDNOST ZA MNOZENJE, JER SA NULOM...
for (i=0;i<n;++i) // <--- TREBA OD 0 DO I<N, ILI OD 1 DO I<=N
p=p*base;
return p;
}
P.S. EDIT
Inace, vec postoji u 'math.h' funkcija pow()...
Takodje, 'windows.h' ti je nepotreban za ovaj program...
Dalje, system( "PAUSE" ) treba PRE return;
[Ovu poruku je menjao X Files dana 28.09.2005. u 19:49 GMT+1]
[ xeron @ 28.09.2005. 19:23 ] @
Za Visual Studio 6 treba windows.h da bi se mogla koristiti system ("pause")
[ xeron @ 28.09.2005. 19:26 ] @
Znaci problem je bio samo u inicijalizaciji
Code:
int i,p=1; // <--- INICIJALNA VREDNOST ZA MNOZENJE, JER SA NULOM...
Hvala
[ X Files @ 28.09.2005. 19:27 ] @
Probaj samo:
#include <stdlib.h>
... ako se ne varam.
[ X Files @ 28.09.2005. 19:28 ] @
Nije samo u incijalizaciji!
Petlja ti je vrtela jednu iteraciju (tj množenje) više!!!
[ Tronic @ 28.09.2005. 22:36 ] @
Citat:
X Files: Probaj samo:
#include <stdlib.h>
... ako se ne varam.
Ne varaš se.
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.