#1 13. November 2008 projekt für schule hallo! ich muss am montag ein projekt in der schule ageben. leider hab ich keinen plan, wie ich das programm schreiben soll. es geht um folgendes: es handelt sich um eine statistik der arbeiter in österreich. es sollen die geburtsjahre von personen im alter von 16-65 jahren eingelesen werden (scanf). das geburtsjahr soll 2 stellig eingelesen werden (zb. für 1990 - 90 oder für 1991 - 91) (scanf) die eingaben sollen statistisch und schön formatiert in einem ansi-c programm ausgegeben werden. die anzahl wieviel personen eingelesen werden ist egal. ich sage mal 10, damit es gut sichtbar ist. es soll etwa so aussehen: printf("Auflistung des Alters der Arbeiter in Oesterreich"); printf("1980/t 2 Arbeiter"); printf("1985/t 12 Arbeiter"); printf("1975/t 5 Arbeiter"); printf("1960/t 8 Arbeiter"); und so weiter... das programm soll mit funktionen aufgerufen werden. weiters soll ein histogramm erstellt werden. davon habe ich keine ahnung. weiß nicht einmal ganz, was ein histogramm sein soll. laut dem unterricht eine statistische auflistung oder so in der art. beim start des programmes soll eine art menü aufgerufen werden, was man für ein unterprogramm man aufrufen möchte. etwa so: printf("Waehlen Sie bitte aus/nFuer A - Statistik fuer 16-65 jaehrige/nFuer B-Histogramm"); leider habe ich keine ahnung, wie ich das programm ansetzen soll. wäre nett wenn mir da jemand weiterhelfen könnte. ist leider etwas zeit aufwendig. aber eine bewertung ist natürlich drin. greez + Multi-Zitat Zitieren
#2 13. November 2008 AW: projekt für schule Hausaufgaben wird dir hier keiner machen. Wenn du Probleme mit deinem Programm hast helfen wir dir gerne, dazu einfach deinen jetzigen Sourcecode posten. Wenn du im Unterricht nicht aufgepasst hast, ist das dein Problem. Am besten wendest du dich erstmal an einen Kolegen aus deiner Klasse. + Multi-Zitat Zitieren
#3 14. November 2008 AW: projekt für schule Code: #include <stdio.h> int main(void); void statistik(void); void histogramm(void); int main(void) { char menuewahl; int eingabe1; int eingabe2; int eingabe3; int eingabe4; int eingabe5; printf("Willkommen im Eingabemenue\n\n"); printf("Bitte geben Sie A fuer eine Statistische Auflistung der 16-65 Jaehrigen ein\n\n"); printf("Bitte geben Sie B fuer ein Histogramm ein\n"); scanf("%c", &menuewahl); printf("Sie haben %c gewaehlt\n", &menuewahl); if (menuewahl=='A') statistik(); else printf("Falsche Eingabe\n"); if (menuewahl=='B') histogramm(); else printf("Falsche Eingabe\n"); } int statistik(int eingabe1, int eingabe2, int eingabe3, int eingabe4, int eingabe5) { printf("Bitte geben sie 5 Geburtsdaten ein:\n"); scanf("%i", &eingabe1); scanf("%i", &eingabe2); scanf("%i", &eingabe3); scanf("%i", &eingabe4); scanf("%i", &eingabe5); //Ab hier weiß ich nicht mehr weiter } //Hier soll dann das Histogramm hinkommen, davon habe ich leider gar keine ahnung + Multi-Zitat Zitieren
#4 14. November 2008 AW: projekt für schule versteh nicht wo es hängt... hast du schonmal ein programm in C geschrieben? Fang doch erstmal an überhaupt was einzulesen und auszugeben viel mehr musst du ja nicht machen. Sollte auch für einen anfänger kein problem sein. Einlesen wie du schon geschrieben hast kannst du mit scanf. Und ein Auswahlmenü erstellst du einfach mit If und else. Ist im prinzip nicht wirklich aufwendiger als ein Hello World programm. sag mal genau wos hängt dann kann mir dir auch helfen + Multi-Zitat Zitieren
#5 15. November 2008 AW: projekt für schule wie du bemerkt haben wirst funktioniert das programm nicht. möchte wissen wo der fehler ist. und die größte frage: was ist ein histogramm und wie programmier ich so etwas? + Multi-Zitat Zitieren
#6 15. November 2008 AW: projekt für schule ein histogramm ist ein saeulendiagramm bei dem alle balken gleich dick sind und den gleichen abstand haben genaueres findest du hier: Histogramm – Wikipedia steht auch was zur erstellung bei + Multi-Zitat Zitieren
#7 15. November 2008 AW: projekt für schule hmm ja, also den aufbau deines programmes solltest du zuerst mal überdenken. Meiner Meinung nach sollten IMMER zuerst werte eingelesen werden und erst danach sollte eine Verarbeitung der Daten erfolgen (Auflistung, Histogramm, ...). Dein Histogramm braucht ja auch werte. Die Werte kannst du natürlich in einzelne Integer packen, wobei sich hier evt. doch eher ein Array lohnt. Da du einzelne Funktionen verwenden willst, musst du entweder globale Variablen definieren, oder sie immer übergeben bzw. zurückgeben (mit return). Beispiel: Code: void histogramm(int jahre[5]) { //Mache was } Was die einzelnen Funktionen machen sollen, musst du dir selbst überlegen, nur bei Problemen bei der Umsetzung können wir dir helfen. Nur so viel: Das Histogramm kannst du z.B. aus Rauten (#) zusammensetzen, sodass du zu jeder Jahreszahl den prozentualen Anteil ermittelst und je nach dem in einer zeile eine ganz bestimmte anzahl von zeichen ausgibst (85 16% -> ##; 90 34% -> ###; ...) Ich hoffe du hast das System verstanden. Hier mal eine Beispielausgabe: Code: 85 #### 86 ## 87 # 88 ### Ich hoffe ich konnte etwas helfen + Multi-Zitat Zitieren
#8 15. November 2008 AW: projekt für schule Also Hausaufgaben kannst du wohl selbst erlädigen nix für ungut ansonsten lG killa65 + Multi-Zitat Zitieren
#9 15. November 2008 AW: projekt für schule Edit:sry hab ausversehen nochmal was geschrieben Nicht mit abschicht hatte ein Dc und habs dann nochmal hin geschrieben Sry mfG killa65 + Multi-Zitat Zitieren