Problem beim Programm...

Tutorials.at
Verfügbare Informationen zu "Problem beim Programm..."

  • Qualität des Beitrags: 0 Sterne
  • Beteiligte Poster: toby-man - exbs - DrPhil_Guth - detewe89
  • Forum: Tutorials.at
  • Forenbeschreibung: Programmierforum
  • aus dem Unterforum: C / C++
  • Antworten: 10
  • Forum gestartet am: Mittwoch 19.04.2006
  • Sprache: deutsch
  • Link zum Originaltopic: Problem beim Programm...
  • Letzte Antwort: vor 16 Jahren, 6 Monaten, 22 Tagen, 5 Stunden, 23 Minuten
  • Alle Beiträge und Antworten zu "Problem beim Programm..."

    Re: Problem beim Programm...

    toby-man - 03.10.2007, 15:44

    Problem beim Programm...
    Hey ho!

    Bin neu hier und wollt als aller erste mal Hallo sagen...

    So. und nu zu meinem Problem:

    Ich hab vorn paar Tegen zum Programmieren angefangen (nehm den DevC++ her).
    Wollt mir etz mit meinen begrenzten Fähigkeiten ein Pogramm zum Berechnen von Ableitungen und Stammfunktionen erstellen (so als kleine Übung...)

    Und nun hab ich folgendes (1.) Problem:
    An einer Stelle muss die Variable t (int t;muss nur 1,2,3,4,5,usw. eingesetzt werden) durch 3 geteilt werden. Soweit noch kein Problem. Jetz isses nur so, dass wenn ich z.B. für t ne 3 einsetzen lass, dass dann 1 dasteht. Soweit in Ordnung.

    Also Zahlen, die durch 3 teilbar sind, zeigt er mir komplett richtig an. Außer wenn ich z. B. für t 2 einsetz (daraus folgt eigentlich 2/3), dann kommt nämlich 0.

    Heißt er teigt mir bei allen Brüchen nicht den Bruch eben an, sondern irgendwie ne ganze Zahl. Scheinbar die nächste (bei t=4:1;t=5:1;t=7:2;usw.).

    Also hab keine Ahnung, was da falschläuft...

    Hab mir dann gedacht: Könnt ja so machen, dass wenn t/3 ne ganze Zahl is (1,2,3,4,usw.), dann machter einfach printf ("%dx^3",t/3); , was ja geht, und bei t/3=Bruch dann printf ("%d/3x^3",t); , was soweit auch kein Problem wär.
    Wenn mans natürlich schafft (ich gehör nich dazu), dass irgendwo ne Bedingung dafür steht. Also if t is ne ganze Zahl, dann machs halt.


    So. Vorerst genug geschrieben. Hab bloß den Quelltext net mit reingeschrieben, da ich net weiß, in wiefern ihr euch mit Stammfunktionen und Ableitungen auskennt (is ja net sonderlich schwer...). Außerdem bin ich no net fertig...*g


    Würd mich wahnsinnig freun, wenn mir jemand helfen könnt...

    Thx, Toby



    Re: Problem beim Programm...

    exbs - 03.10.2007, 16:02


    int kann halt nur ganzzahlen beherbergen! nimm float!

    mich würde aber der quelltext trotzdem interessieren ;)!



    Re: Problem beim Programm...

    toby-man - 03.10.2007, 17:07


    ok. Habs etz a gecheckt, warum er kein 4/3 schreibt... (von http://www.c-programme.de/ : Achtung - bei Division von ganzen Zahlen ist 5 / 2 nicht 2.5 sondern 2).

    Dämlich halt...

    Wg dem Programm:
    Habs etz erst bis zur 2. Ordnung gemacht.

    Weiß bloß no net wie ma bei ner Schleife bis zum Anfang zurückspringt...
    Also wenn ich mit irgendwas berechnen fertig bin, dann beendet sich des Programm und man muss es wieder neu starten...
    Wies geht muss ich noch nachschaun, oder einer von euch sagts mir...


    Thx Toby



    Re: Problem beim Programm...

    toby-man - 03.10.2007, 17:10


    Oh!

    Und hier der Quelltext (is n bissl lang, da ich erst vorn paar Tagen zum programmieren (mit DevC++) angefangen hab; daher fehlen mir halt nochn paar Vereinfachungen):



    #include <stdio.h>
    #include <conio.h>


    int main()
    {
    int y,z,g,t,Eingabe,Ordnung;

    printf ("Ableitung und Stammfunktion!\n\n");
    printf ("Mit diesem Programm kannst du die Ableitungen und Stammfunktionen\n");
    printf ("einer positiven Funktion mit natuerlichen Zahlen bis zur 2. Ordnung\n");
    printf ("bestimmen!\n\n");
    printf ("Als Erstes:\n");
    printf ("Wievielter Ordnung entspricht deine Funktion?\n");
    scanf ("%d",&Ordnung);
    switch (Ordnung)
    {case 1:

    printf ("Gib die Funktion an:\n");
    scanf ("%d",&t);
    printf ("x+\n");
    scanf ("%d",&z);

    printf ("\nWillst du die Ableitung(1) oder die Stammfunktion(2)?\n");
    scanf ("%d",&Eingabe);
    if ((Eingabe==1) && (t>0))
    {

    printf ("\n\nDie Ableitung von ");
    printf ("%dx+%d ist:\n\n",t,z);
    printf ("f(x)\'=1");

    }
    if ((Eingabe==1) && (t==0))
    {

    printf ("\n\nBei 0x gibt es keine Ableitung, da y=0 nicht definiert ist!");

    }
    if ((Eingabe==2) && (t > 0))
    {

    printf ("\n\nDie Stammfunktion von ");
    printf ("%dx+%d ist:\n\n",t,z);
    printf ("F(x)=");
    printf ("%d/2x^2+%dx+C",t,z);

    }
    if ((Eingabe==2) && (t==0))
    {

    printf ("\n\nDie Stammfunktion von ");
    printf ("%dx+%d ist:\n\n",t,z);
    printf ("F(x)=");
    printf ("C");

    }
    if (!(Eingabe==1) && !(Eingabe==2))
    {

    printf ("\n\nDu musst \"1\" fuer die Ableitung oder \"2\" fuer die\n");
    printf ("Stammfunktion eingeben!");

    }
    break;
    case 2:
    printf ("Gib die Funktion an:\n");
    scanf ("%d",&t);
    printf ("x^2+\n");
    scanf ("%d",&z);
    printf ("x+\n");
    scanf ("%d",&g);

    printf ("\nWillst du die Ableitung(1) oder die Stammfunktion(2)?\n");
    scanf ("%d",&Eingabe);

    if ((Eingabe==1) && (t>0) && (z>0))
    {

    printf ("\n\nDie Ableitung von ");
    printf ("%dx^2+%dx+%d",t,z,g);
    printf ("ist:\n\n");
    printf ("f(x)\'=");
    printf ("%dx+%d",2*t,z);
    }

    if ((Eingabe==1) && (t==0) && (z>0))
    {

    printf ("\n\nDie Ableitung von ");
    printf ("%dx^2+%dx+%d",t,z,g);
    printf ("ist:\n\n");
    printf ("f(x)\'=");
    printf ("%d",z);
    }

    if ((Eingabe==1) && (t>0) && (z==0))
    {

    printf ("\n\nDie Ableitung von ");
    printf ("%dx^2+%dx+%d",t,z,g);
    printf ("ist:\n\n");
    printf ("f(x)\'=");
    printf ("%dx",2*t,z);
    }

    if ((Eingabe==1) && (t==0) && (z==0))
    {

    printf ("\n\nDie Ableitung von 0x^2+0x+%d ist nicht definiert, da y=%d\n",g,g);
    printf ("nicht definiert ist!");

    }

    if ((Eingabe==2) && (t>0) && (z>0) && (g>0))

    {
    printf ("\n\nDie Stammfunktion von ");
    printf ("%dx^2+%dx+%d",t,z,g);
    printf ("ist:\n\n");
    printf ("F(x)=");
    printf ("%d/3x^3+%d/2x^2+%dx+C",t,z,g);
    }

    if ((Eingabe==2) && (t>0) && (z>0) && (g==0))

    {
    printf ("\n\nDie Stammfunktion von ");
    printf ("%dx^2+%dx+%d",t,z,g);
    printf ("ist:\n\n");
    printf ("F(x)=");
    printf ("%d/3x^3+%d/2x^2+C",t,z);
    }

    if ((Eingabe==2) && (t==0) && (z>0) && (g>0))

    {
    printf ("\n\nDie Stammfunktion von ");
    printf ("%dx^2+%dx+%d",t,z,g);
    printf ("ist:\n\n");
    printf ("F(x)=");
    printf ("%d/2x^2+%dx+C",z,g);
    }

    if ((Eingabe==2) && (t==0) && (z>0) && (g==0))

    {
    printf ("\n\nDie Stammfunktion von ");
    printf ("%dx^2+%dx+%d",t,z,g);
    printf ("ist:\n\n");
    printf ("F(x)=");
    printf ("%d/2x^2+C",z);
    }

    if ((Eingabe==2) && (t>0) && (z==0) && (g>0))

    {
    printf ("\n\nDie Stammfunktion von ");
    printf ("%dx^2+%dx+%d",t,z,g);
    printf ("ist:\n\n");
    printf ("F(x)=");
    printf ("%d/3x^3+%dx+C",t,g);
    }

    if ((Eingabe==2) && (t>0) && (z==0) && (g==0))

    {
    printf ("\n\nDie Stammfunktion von ");
    printf ("%dx^2+%dx+%d",t,z,g);
    printf ("ist:\n\n");
    printf ("F(x)=");
    printf ("%d/3x^3+C",t);
    }

    if ((Eingabe==2) && (t==0) && (z==0) && (g>0))

    {
    printf ("\n\nDie Stammfunktion von ");
    printf ("%dx^2+%dx+%d",t,z,g);
    printf ("ist:\n\n");
    printf ("F(x)=");
    printf ("%dx+C",g);
    }

    if ((Eingabe==2) && (t==0) && (z==0) && (g==0))

    {
    printf ("\n\nDie Stammfunktion von ");
    printf ("%dx^2+%dx+%d",t,z,g);
    printf ("ist:\n\n");
    printf ("F(x)=");
    printf ("C");
    }

    if (!(Eingabe==1) && !(Eingabe==2))
    {
    printf ("\n\nDu musst \"1\" fuer die Ableitung oder \"2\" fuer die\n");
    printf ("Stammfunktion eingeben!");

    }
    break;}
    getch ();
    }





    *g...

    Und?



    Re: Problem beim Programm...

    DrPhil_Guth - 04.10.2007, 17:13


    ich habs mir nicht angesehen, aber an der zeit die ich zum scrollen gebraucht habe würde ich sagen: zu lang und zu umständlich. Überleg dir nochmal genau was man nicht weglassen könnte, was man mit einer shcleife erledigen kann und wie du deinen code effektiver gestaltest.

    Und noch was: wenn du code postest, bitte benutze die code- tags, dafür gibts nen schönen button.



    Re: Problem beim Programm...

    detewe89 - 04.10.2007, 19:42


    Hab's aus Lust und Laune mal bei Linux getestet (die Zeilen conio.h und getch() natürlich gelöscht...), irgendwie tut's nicht richtig:

    Code: ~$ ./infinitesimal
    Ableitung und Stammfunktion!

    Mit diesem Programm kannst du die Ableitungen und Stammfunktionen
    einer positiven Funktion mit natuerlichen Zahlen bis zur 2. Ordnung
    bestimmen!

    Als Erstes:
    Wievielter Ordnung entspricht deine Funktion?
    2
    Gib die Funktion an:
    6
    x^2+
    -6
    x+
    9

    Willst du die Ableitung(1) oder die Stammfunktion(2)?
    1
    ~$

    Geht's denn bei dir, toby-man???



    Re: Problem beim Programm...

    toby-man - 04.10.2007, 19:43


    sory wg. dem code button... Vergessen...

    Noch ne (dämliche) Frage:

    Wenn ich etz bei DevC++ nen anderen Quellcode eingeb (einen in c++) gehts net. Kommt kei Fenster, steht aber da, dass ers included hat.

    Naja. Etz mal den (wahnsinnig schwierigen *g) Quelltext:

    Code:
    #include <iostream.h>

    void main()
    {
         cout<<"Hello, World!"<<endl;
     };


    Hat sich scho erledigt...



    Re: Problem beim Programm...

    toby-man - 04.10.2007, 19:50


    @detewe89
    Hab oben geschrieben, dass es nur n Übungsbeispiel war. Daher auch äußerst simpel.
    ===> Nur positive Funktion.

    Hab mich da falsch ausgedrückt. Meinte, dass man da nur positive Zahlen einsetzen kann. Daher funzt des natürlich auch net, da du die Funktion 6
    x^2+-6x+9 hast. Wegen dem -6x.

    Hab nämlich erst am Dienstag zum programmieren angefangen und des Programm auch da gemacht. Daher konnte ich sowas aus Zeitgründen noch net einbauen.

    @DrPhil_Gut

    Is klar, dass man des Ganze noch kürzer machen kann.
    Wennste dich allerdings erst seit 2h mitm programmieren in C beschäftigst, isses zu dem Zeitpunkt noch a bissl schwierig, auf Schleifen und co zu achten. Da freuste dich wien Schnitzel, wenns überhaupt funzt...



    Re: Problem beim Programm...

    exbs - 05.10.2007, 17:22


    toby-man hat folgendes geschrieben: sory wg. dem code button... Vergessen...

    Noch ne (dämliche) Frage:

    Wenn ich etz bei DevC++ nen anderen Quellcode eingeb (einen in c++) gehts net. Kommt kei Fenster, steht aber da, dass ers included hat.

    Naja. Etz mal den (wahnsinnig schwierigen *g) Quelltext:

    Code:
    #include <iostream.h>

    void main() <--- KEIN, void main ... int main()
    {
         cout<<"Hello, World!"<<endl;
     }; <--- Brauch da nicht zu sein!


    Hat sich scho erledigt...

    siehe Code!



    Re: Problem beim Programm...

    toby-man - 05.10.2007, 21:59


    hab ja scho druntergeschrieben:

    Zitat: Hat sich scho erledigt...

    Aber trotzdem Thx



    Mit folgendem Code, können Sie den Beitrag ganz bequem auf ihrer Homepage verlinken



    Weitere Beiträge aus dem Forum Tutorials.at

    Befehl zum löschen einer Datei - gepostet von Bratwurst am Dienstag 14.08.2007
    ich kann mein programm nicht compilen - gepostet von absoluter noob tith am Dienstag 25.07.2006
    Compiler gibt ERROR wegen stdio.h - gepostet von Felx4ever am Dienstag 16.01.2007
    C bzw C++ um roboter zu programmieren?? - gepostet von Joe am Sonntag 05.08.2007
    Was habt ihr am Anfang programmiert? - gepostet von J. am Freitag 08.12.2006
    Problem mit Tutorial - gepostet von Domu am Dienstag 08.08.2006
    Mischen von Einträgen einer doppelt verketteten Liste - gepostet von Zuul am Mittwoch 21.03.2007



    Ähnliche Beiträge wie "Problem beim Programm..."

    Wir haben ein Problem!!! - Langi (Freitag 09.11.2007)
    Wer kommt in Mohrenkönig! Neues Programm!! - dussi (Montag 16.04.2007)
    ZITATE BEIM ZOCKEN! - -Kale- (Montag 11.06.2007)
    Hassu N Problem ????? - Anonymous (Montag 13.12.2004)
    Melanie beim Einkaufen - Jessy (Freitag 03.03.2006)
    schon das erste problem.... :-( - jonnyb (Donnerstag 21.06.2007)
    Die Knigge Beim Maffen - screamboy (Mittwoch 14.03.2007)
    Ein PC NooB hat ein Sound Problem - Vergil (Mittwoch 31.10.2007)
    Unfall beim Namen ändern :( - Alchi (Donnerstag 05.04.2007)
    Problem - Dragonfly (Samstag 21.07.2007)