C++, suche Tutorial

Ah danke eig. soll sie die eingegebene zahl a hoch die eingegebene zahl b errechnen, was aber irgendwie nicht funktioniert :-/
 
Vielleicht hilft dir dieser Gedankenanstoß weiter:
Code:
            int a = 4;
            int b = 5;
            int ergebnis = 0; 
            int temp = 0;
            
            
            
            

            for (int i = 0; i <= b; i++)
            {
                temp = a * a;
                       .
                       .
                       .
 
Danke für die Antworten ich wollte aber eig wissen was an meinem code falsch ist den ich auf der letzten seite oder so gepostet habe.
LG
silent12
 
Code:
double pow(double a, double b)
{
return pow(a,b);}
Also das mit der Namensgebung ist doch eigentlich nicht so schwer oder? Zweimal den gleichen Namen zu verwenden ist definitiv nicht die beste Idee! Was meinst du wohl was hier passiert? :ugly:

Mach doch lieber
Code:
double Potenz(double a, double b)
{
return pow(a,b);}
 
es sollte doch bestimmt eine rekursive Methode werden :D

naja, aber wie Fragile Heart schon schrieb, solltest du in deinem Code etwaige Mehrdeutigkeiten lieber vermeiden.

ich verwende manchmal auch extrem lange namen für funktionen und Variablen, damit ich die auseinanderhalten kann xDDD
 
Man kann gleich Namen verwenden, wenn aus den Kontext in dem man etwas verwendet klar ist was gemeint ist. ;) Das ist ja auch zum Teil gewollt, virtuelle Funktionen zum Beispiel, aber hier gibt es quasi keinen wirklich Kontext und der Compiler kann das nicht sauber auflösen. Also entweder wir haben eine rekusvive Funktion (eine Funktion die sich selbst wieder aufruft), was in deinen Fall zwangsläufig zu einen Stack overflow führt da keine Abbruchbedingung definiert ist, oder der Compiler jammert sofort (sehr Wahrscheinlich!). ;)
 
Ohman warum habe ich da immer noch einen Fehler und vorallem warum bei dem return .. ?

#include<iostream>
using namespace std;

double Potenz(double a, double b)
{
return pow(a,b);}

int main ()
{ int a, b;
cout <<"Geben sie 2 Zahlen ein" <<endl;
cin >> a;
cin >> b;
cout << pow(a, b) << endl;


}
 
Return ? Bei mir funktioniert dank dem Tip jetzt alles (Ausgabe durch das cout ... auch)
Code:
[B]int[/B] main ()
{  int a, b;
cout <<"Geben sie 2 Zahlen ein" <<endl;
cin >> a;
cin >> b;
cout << pow(a, b) << endl;
 
[B]// hier fehlt was...[/B]
}
Rückgabetyp ist int, Funktion gibt aber nichts zurück...
 
0, aber das ist auch wieder Ansichtssache, wen du sehr korrekten Code schreiben wilst, den wirklich jeder compiler frisst, dann muss nen return 00 nach unten, aber in der regel geht es auch ohne.
 
Warum man bei einer Funktion int main() auch ohne return 0; kompilieren soll geht mir so nich ganz in den Kopf.

Ich hab jetzt mal den Thread komplett durchgelesen und mir ist aufgefallen, dass du den Fehler begehst, den alle machen die mit Programmieren anfangen: Du setzt dich an den PC und tippst mal los. Ideal wäre es, wenn du hingest und erst mal Stift und Papier in die Hand nimmst und das Thema theoretisch angehst. Das klingt jetzt bei einer Funktion die dir die Quersumme einer Zahl berechnet arg übertrieben aber wenn du es dir nicht von Anfang an angewöhnst wird es später mal viel schwerer und spätestens dann wenn du komplexere Funktionen entwickeln willst kommst du ohne Vorarbeit abseits vom Compieler nicht drum rum. Das muss jetzt gar kein UML oä. im privaten Umfeld sein aber zumindest sollte man sich gedanken über die zu erstellenden Interfaces machen und diese dann mal textuell vorbereiten. Oftmals entdeckt man zu diesem Zeitpunkt schon ob ein Interface sinnvoll ist oder man sich permanent in den allerwertesten beißt wenn man es später mal verwenden will.
 
So noch einmal eine Frage: Bei der Erstellung von Strukturen kann man einfach eine Struktur erstellen, eine eingegebene Zahl darin speichern und sie wieder ausgeben oder muss ich dazu erstmal eine Variable vom Typ der Struktur erstellen und dann in dieser speichern ?
Grüße
silent12
 
Zurück