Zum Inhalt springen

dila

Mitglieder
  • Gesamte Inhalte

    6
  • Benutzer seit

  • Letzter Besuch

Beiträge von dila

  1. Eine kleine Ungenauigkeit steckt in deiner Funktion bei der Berechnung der Fakultät noch drin, mathematisch wird 0! auch als 1 definiert, dies wird in deiner Implementation jedoch nocht berücksichtigt.

    Also ? hihi sorry kenne mich mit solchen sachen nicht gut aus.

  2. Vielleicht ist der Sinn dieser Aufgabe auch, dass dir die Grenzen der Wertebereiche der Datentypen bewusst werden.

    Für 100! brauchst du einen Ganzzahltyp mit einer Größe von über 500 Bit. Es gibt spezielle Bibliotheken, die das können, aber ich glaube nicht, dass das der Sinn der Aufgabe ist.

    Du kannst wie gesagt auch einen Fließkommatyp wie double benutzen. Hätte den zusätzlichen Vorteil, dass du bei negativem Argument die Möglichkeit hättest, im Rückgabewert ein ungültiges Ergebnis anzuzeigen. Allerdings wäre der Wert dann nicht genau. Fließkommatypen erkaufen sich die großen Wertebereiche durch verringerte Genauigkeit.

    P.S.: Was ist ein "Schleifentyp"? Das habe ich noch nie gehört.

    Also die 2te Aufgabe lautet so:

    Programmieren Sie in der Programmiersprache C zwei weitere Funktionen zur Berechnung

    von n!mit Hilfe von Schleifen. Wählen Sie sich dazu zwei Schleifentypen aus, die sie in

    der Vorlesung kennengelernt haben. (Für-Schleife, Abweisenden-Schleife, Nicht-Abweisenden-

    Schleife).

  3. Nein, das ist falsch. Die Fakultät ist für negative Zahlen nicht definiert. Da du aber beim Rückgabetyp int nicht "nichts" zurückgeben kannst, könntest du eine Fehlermeldung ausgeben oder das Programm abbrechen.

    Da dürfte erheblich mehr fehlen. Du benutzt int, das ist auf heute üblichen Systemen 32 Bit groß. Die größte damit darstellbare Zahl ist 2.147.483.647, das reich noch nicht einmal für 13!. Selbst wenn dein int 64 Bit hat, kommst du nur bis 20!. Deine Funktion liefert dafür zwar noch Ergebnisse, aber sie sind alle falsch.

    Oh super dann ist ja ziemlich alles falsch :D durch was kann ich denn int ersetzen? (tut mir Leid für die dumen fragen :( )

  4. Was gibt deine Funktion denn für -5 zurück? Die Fakultät ist ja nun nur für nichtnegative Zahlen definiert ;)

    Das Problem ist, dass der richtige Wert viel zu groß ist, als dass er in einen int (oder irgendeinen anderen Ganzzahltyp) hineinpassen würde. Möglicherweise ist das das gewünschte Ergebnis des Tests. Du könntest auch mit Fließkommatypen rechnen, dort passen so große Werte eher hinein, allerdings auf Kosten der Genauigkeit.

    Also für den Wert -5 kommt auch Null raus, und ich habe mir gedacht, dass es soweit richtig ist. Also für negative Zahlen rechnet das Programm den Wert niht aus. Ich weiß das bei meinem Programm 1-2 Ziffern fehlen, damit ich den Wert 100 Berechne.Aber was es genua ist weiss ich leider nicht.

  5. Ich bitte um Hilfe! Ich habe die Folgende Aufgabenstellung :

    Ändern Sie die Implementierung des Euklidischen Algorithmus in rekursiven Stil um.

    &

    Implementieren Sie eine Funktion in der Programmiersprache C zur Berechnung von f(n)=n! , wobei f(0):=1 gilt. mittels rekursiven Aufrufes. Testen Sie ihre Funktion in einem Programm für die Werte n=10,0,-5,100.

    Also ich habe schon ein Programm geschrieben, was auch sehr gut funktioniert ABER nur bei den Werten 10,0,-5. Bei der Zahl 100 kommt leider 0 raus, was natürlich falsch ist.

    Das ist das , was ich geschrieben habe:

    #include<stdio.h>

    int factorial(int n)

    {

    if (n == 1)

    return 1;

    else

    return n*factorial(n-1);

    }

    int main ()

    {

    int m;

    int n;

    printf("Zahl eingeben:");

    scanf("%d", &m);

    printf("m lautet %d\n",m);

    printf("Zahl eingeben:");

    scanf("%d", &n);

    printf("n lautet %d\n",n);

    return 0;

    }

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...