Mittelwert aus Funktionswerten bestimmen



  • ok...ich bin jetzt soweit, daß alle Werte in die richtige Textdatei geschrieben werden:

    FILE *fp;
    		char name[40];
    		printf("Dateiname:");scanf("%s",name);
            fp = fopen(name,"w+");
    
            if(fp==NULL) {
                    printf("Error: Dateieroeffnung");
                    return 0;
            }
    
            for( x=0.1; x < 0.2; x += 0.003) {
                    y = 100-(x/0.002);
                    a = fabs((Summe/n)-y);
                    printf("%20.3f %16.3f %20.3f\n", x, y, a);
                    fprintf(fp, "%20.3f %16.3f %20.3f\n", x, y, a);
            }
    
            fclose (fp);
            return 0;
    }
    

    Was aber nicht klappt,ist die richtige Formatierung:
    i + 1. Datensatz: i x y a

    wobei der 1. Datensatz den Definitionsbereich xvon xbis beinhalten soll

    kann mir bitte jemand weiter helfen?



  • Merlin_1334 schrieb:

    Was aber nicht klappt,ist die richtige Formatierung:
    i + 1. Datensatz: i x y a
    wobei der 1. Datensatz den Definitionsbereich xvon xbis beinhalten soll
    kann mir bitte jemand weiter helfen?

    Wie ist das gemeint, gib mal ein konkretes Beispiel mit Zahlen.



  • das ist ja mein Problem, aber ich denke mal es sollte etwa so in der txt-datei aussehen:

    0. Definitionsbereich: x=0.1; x < 0.2; x += 0.003
    1. 0.100           50.000               24.750
    2. 0.103           48.500               23.250
    3. 0.106           47.000               21.750
    ...usw
    


  • Ist doch kein Ding. Hast du ein Buch, wo die Formattierungszeichen für printf erklärt sind ?



  • ich versteh eigtl. nur nicht, wie ich den Definitionsbereich automatisch übergebe und die Nummerierung realisiere



  • Der Definitionsbereich muss ja vor der Ausgabe fest stehen.
    Entweder 'fest eingebrannt' im Programm, oder vom Benutzer eingegeben, oder als irgendeine Schrittweite im Programm berechnet.

    In deiner Version ist der Definitionsbereich fest eingebrannt, dann könntest du den gleich in die printf Anweisung mittels entsprechender Formatierungszeichen schreiben, for dem Eintritt in die Schleife.

    Die Nummerierung ist ja auch nicht weiter schwer: du brauchst eine Variable, welche die Schleifendurchläufe zählt und schreibst das entsprechende Formatierungszeichen an die erste Stelle von printf 🙂



  • Lernst du für dich allein, oder in einer Schule ?



  • Danke für die Antwort 🙂
    Ma kucken,ob ich das umsetzen kann 😕



  • Machst du einen Fernkurs in C Programmierung ?



  • nein...isn Fach beim Studium


Anmelden zum Antworten