Verfügbare Informationen zu "Blatt5_Aufgabe2"
Qualität des Beitrags: Beteiligte Poster: Bully - robert - crisneldo Forum: Ihr-Domainname.de Forenbeschreibung: Beschreibung Ihres Forums aus dem Unterforum: Programmierung Antworten: 3 Forum gestartet am: Donnerstag 12.10.2006 Sprache: deutsch Link zum Originaltopic: Blatt5_Aufgabe2 Letzte Antwort: vor 17 Jahren, 5 Monaten, 26 Tagen, 11 Stunden, 45 Minuten
Alle Beiträge und Antworten zu "Blatt5_Aufgabe2"
Re: Blatt5_Aufgabe2
Bully - 13.11.2006, 16:51Blatt5_Aufgabe2
brauche mal wieder hilfe habe nen fehler und sehe ihn nicht es geht alles bis auf die berechnung der negativen potenzen also der untere teil danke schonmal 4 help
private float BerechnePotenz(int nBasis , int nHochzahl )
{
int nBasis_Speicher = nBasis;
int nHochzahl_Speicher;
if(nHochzahl > 0 )
{
for(int i = 1; i < nHochzahl ; i++)
{
nBasis = nBasis * nBasis_Speicher;
}
return(nBasis);
}
if(nHochzahl < 0)
{
nHochzahl_Speicher = nHochzahl * -1;
float nBasis_Erg = 1 / nBasis;
for (int x = 1; x < nHochzahl_Speicher; x++)
{
nBasis_Erg = nBasis_Erg * nBasis_Speicher;
}
return (nBasis_Erg);
}
return (1);
}
Re: Blatt5_Aufgabe2
robert - 13.11.2006, 18:52
in den kommentaren hab ich mir im kopf überlegt was deine methode macht mit beispiel 2 und -3
public float BerechnePotenz(int nBasis , int nHochzahl ) // 2 , -3
{
int nBasis_Speicher = nBasis; //2=2
int nHochzahl_Speicher;
if(nHochzahl > 0 )
{
for(int i = 1; i < nHochzahl ; i++)
{
nBasis = nBasis * nBasis_Speicher;
}
return(nBasis);
}
if(nHochzahl < 0)
{
nHochzahl_Speicher = nHochzahl * -1; // 3
float nBasis_Erg = 1 / nBasis; // 1/2
for (int x = 1; x < nHochzahl_Speicher; x++) //x<3
{
nBasis_Erg = nBasis_Erg * nBasis_Speicher; //1.)1/2*2->2.) 1*2
}
return (nBasis_Erg);
}
return (1);
}
PROBLEM: deine methode macht nicht was sie soll, mach doch einfach bei negativen hochzahlen das selbe wie mit positiven und teil dann 1 durch dein ergebnis! weiss nciht warum dein ergebnis immer 0.0 is
Re: Blatt5_Aufgabe2
crisneldo - 13.11.2006, 19:28Hier ist die Lösung deines Problems
Ich schreibe jetzt nur den Teil mit "nHochzahl<0" //Kommentare
(...)
if(nHochzahl < 0)
{
nHochzahl_Speicher = nHochzahl * -1;
//float nBasis_Erg = (float)1 / (float)nBasis; //Das benötigst du nicht mehr
float nBasis_Erg=1; //Es reicht schon aus dies nur mit 1 zu initialisieren
for (int x = 1; x <= nHochzahl_Speicher; x++) //hier habe ich ein "<=" ergänzt
{
nBasis_Erg = nBasis_Erg * nBasis_Speicher;
}
return 1/nBasis_Erg;
}
(...)
Gruß
Christian
Mit folgendem Code, können Sie den Beitrag ganz bequem auf ihrer Homepage verlinken
Weitere Beiträge aus dem Forum Ihr-Domainname.de
TEX - gepostet von *natascha* am Samstag 25.11.2006
Ähnliche Beiträge wie "Blatt5_Aufgabe2"
Aufgabe2 - fgerard (Donnerstag 10.05.2007)