PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Anfängerproblem



Kernel-Error
07-03-2003, 22:42
Hi!

Ich bin hier ein bischen am Basten und ueben.

Ich will folgendes erreichen.

Der User soll 2 Zahlen eingeben. Einge Grundzahl (gzahl) und eine Hochzahl (hzahl).

Das Programm soll dann in der Funktion hoch Rechnen..

Vom Compiler her ist auch alles ok, zu mindest nörgelt er nicht rum und das Programm läuft.

Aber Rechnen tut er scheisse...

Hat jemand ne Idee was falsch ist?

########## schnipp ###########

#include <iostream>

using namespace std;
int hoch(int, int);

int main()
{
int gzahl;
int hzahl;
int ergeb;
cout << "Geben Sie die Grundzahl ein: ";
cin >> gzahl;
cout << "\nGeben Sie nun bitte die Hochzahl ein: ";
cin >> hzahl;
ergeb = hoch(gzahl, hzahl);
cout << "\n" << gzahl << " hoch " << hzahl << " ist: " << ergeb;
return 0;
}
int hoch(int a, int b)
{
for(int i = 0; i < b; i++)
{
a = a * a;
}
return a;
}

########## schnap ###########

Danke schon mal .


Kernel Error

3qualizer
07-03-2003, 23:15
die Berechnung stimmt nicht:
int hoch( int a, int b ) {
int res = 1;

for( int i = 0; i < b; i++ ) {
res = res * a;
}

return res;
}sonst würde er z.b. bei 2 hoch 3 das machen:
2*2=4
4*4=16
16*16=256

Eric

anda_skoa
07-03-2003, 23:38
Hi Kernel-Error,

bitte beim Code Posten Code-Tags verwenden, das macht es leichter lesbar.

Das geht im Posting Editor mit dem # Button.
Du kannst dein Posting auch noch nachträglich damit ausstatten.

Ciao,
_

ReSeT
08-03-2003, 10:18
Die Standard-API stellt übrigens hierfür die Funktion



double pow(double x, double y)


zur Verfügung.


btw : Ich gebs auf mit euren CODE-Tags :rolleyes:

Kernel-Error
08-03-2003, 10:44
Hi!

Erst einmal vielen Dank für eure Hilfe. :)


@ 3qualizer

Hätte ich auch selbst drauf kommen können... grrr..

Naja, wird noch kommen :)

Läuft aber genau so wie ichs wollte!

@anda_skoa

OK, werde ich in Zukunft beachten. Sorry!

@ReSeT

Ob du es glaubst oder nicht, das wusste ich. Nur, ich wollte es halt ohne diese Funkion erreichen. Halt mit einer eigenen. Damit dieses AHA und das Verständiss besser ist. Weisst was ich meine?


THX




Kernel Error