Notentabelle Ausgebe - Anfänger ;-) Programmiersprache C
-
Das Design ist doch nebensächlich. Das kann man auch naqchher noch ändern. Erstmal muss das prog laufen.
Hast du glaub ich missverstanden. Nicht, wie es ausguckt sondern die internen Programmstrukturen. So viele ifs sind umständlich.
mfg
-
Geht vielleicht an den Sinn des Threads vorbei aber hier mal ein etwas eleganteres Programm:
#include <stdio.h> #include <assert.h> const char * get_mark(int percentage) { const char * mark_names[] = { "Note 1", "Note 2", "Note 3", "Note 4", "Note 5", "Note 6" }; int mark_ranges[] = { 100, 91, 78, 69, 48, 28, 0 }; int i; assert(0 <= percentage && percentage <= 100); /* find out correct array indecies */ for (i = 0; i <= 6; i++) { if (percentage >= mark_ranges[i]) break; } if (i == 6) i = 5; /* finally return the name*/ return mark_names[i]; } int main(void) { int i; for (i = 0; i <= 100; i += 5) { printf("%d percent gives Mark %s\n", i, get_mark(i)); } return 0; }
mfg
-
Danke für das Prog, doch findet keiner in meinem quelltext den fehler, der das vollständige anwenden vermießt
mfg
Mr.Vain
-
Mr.Vain schrieb:
Doch da harkts bei mir. Bitte helft mir, damit das Programm richtig gut läuft.
Meinst Du wirklich mit so einer exakten Fehlerbeschreibung wird Dir irgendwer helfen können?
Definiere "richtig gut". Was heißt "richtig gut"?
-
ok, bei mir funzt es jetz
verbesserungsvorschläge:
- definiere für all deine funktionen (ausser der main-funktion) void als rückgabetyp (also void Eingabe() { ... } usw.)
- dann schreibst du ganz unten an deine main-funktion ein return 0;
- mach aus deinem scanf("%c",&t) einfach das hier t = getch();
das wärs glaub ich erst ma.
MFG
Chris
-
Klasse das Programm funktioniert.
Besten Dank.
Kannman eigentlich auch irgendwo switch und case miteinbneziehen??
mfg
Mr.Vain
-
also ich würd die beiden klassenverarbeitungsfunktionen zusammenfassen zu einer und dann prüfst du mittels switch(Klasse) { ... } um welche klasse es sich jeweils handelt und kannst dann in den case marken ggf. noch eine weitere switch-anweisungen reinpacken die halt den prozentsatz prüft und dementsprechend die ausgabe bewältigt.
mfg
#C
-
hi
wie muss ich das denn machen, wenn ich vor der Abfrage der Klase angebe, wieviele Schüler es gibt und dei Summe der Noten aller Schüler. Wie der Durchschnitt.Angabe der Summe und Schüler dann anstatt von der Angabe der Prozantzahl
mfg
Mr.Vain
-
ich verstehe deine frage nicht so ganz.
kannst du sie ein wenig umformulieren und an den stellen ein fragezeichen setzen, wo eins hingehört?
-
HI
sorry dass ich mich so schlecht ausgedrückt habe, hatte keine zeit:)naja
also da das Programm nun läuft wollte ich es optimieren.
Ganz am Anfang soll ein Menü kommen, bei dem man entweder direkt eine Prozentzahl angeben kann, oder die Prozentzahl berechnen kann. Da heisst dass man die Gesamtpunktzahl einer Arbeit und die eigentlichen (erreichten) Punkte angeben kann. Davon soll das Prog dann die Prozentzahl angeben und wie schon in dem Programm die entsprechende Note finden.
mfg
Mr.VainPS: Bitte helft mir. Habe nur noch bis morgen Zeit