Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

hey hab ne aufgabe is zwar nicht viel ,,bin aber c neuling kann mir jemand helfen!?

Erstellen Sie ein ANSI-C-Programm, mit dem ein Histogramm von Prüfungsnoten ermittelt und in folgender Form auf dem Bildschirm ausgegeben werden kann:

Histogramm der Noten

|

|

|

|

|

|

|

|

|

|

|

|

|

| *

| * * *

| * * * * *

| * * * * * *

| * * * * * * * * *

| * * * * * * * * * * * *

| * * * * * * * * * * * * *

--+--+--+--+--+--+--+--+--+--+--+--+--+

0 1 2 3 4 5 6 7 8 9 10 11 12

Die Noten werden bei der Eingabe in Kategorien (0 bis 12) eingeteilt und zwar nach folgenden Schema:

Noten: 1.0 1.3 1.7 2.0 2.3 2.7 3.0 3.3 3.7 4.0 4.3 4.7 5.0

Kategorie: 0 1 2 3 4 5 6 7 8 9 10 11 12

Damit die gesamte Bildschirmausgabe sichtbar ist, ist bei Noten, deren Auftritte die Anzahl 20 überschreitet die Ausgabe auf 19 Sternchen zu begrenzen und an der Position des 20. (obersten) Sternchens die tatsächliche Anzahl der Auftritte auszugeben.

Die Noten stehen in einer Textdatei namens noten.dat, jeweils eine Note pro Zeile. Das Programm öffnet die Datei und liest alle Noten (bis EOF). Danach wird die Datei geschlossen und das Histogramm ausgegeben.

@Xanthi24:

Beginne einfach mal mit einen Programmablauf:

1.) Datei einlesen

2.) Werte zählen (in Kategorie umrechnen und zählen)

3.) Histogramm ausgeben

Diese Dinge kannst du dann weiter unterteilen und Implementierungsideen entwickeln: z.b. "Lese ich zuerst die dei ein und zähle dann die Werte oder verarbeite ich gleich den Wert nach dem einlesen ?"

Weiters überlege, welche Datenstrukturen du brauchst (arrays, listen, ...)

Dann befaße dich auch mit Textausgabe: Erstellst Du das histogramm in einem "virtuellen Bildschirm" und gibst es zeilenweise aus oder gleich direkt.

Dann gehe Detailfragen an: Wie zähle ich die Noten ?, Wie rechne ich die Noten in Kategorien um ? Welche Datenstruktur brauch ich für einen "virtuellen Bildschirm" ? usw.

MfG, Michael

Naja soweit wie du mir das schilderst bin ich auch schon gekommen ,,mein problem ist nur das in c-syntax zu schreiben!!!;)

bin ja wie gesagt neuling!!!

bin ja wie gesagt neuling!!!
Dann solltest du eine solche Aufgabe nicht annehmen.

Wie nic_power schon sagte, eine Komplettlösung wirst du hier nicht bekommen. Zeig, wo die konkreten Probleme sind, dann helfen wir gern weiter.

P.S.: Einzelne Ausrufezeichen tun's auch.

Gehen wir einen großen Schritt zurück, ganz an den Anfang:

Was tut man, wenn man kein C kann ?

Man besorgt sich ein Buch zu diesem Thema (a la "C für blutige Anfänger")

und arbeitet dieses mal soweit durch bis man glaubt diese Aufgabe lösen zu können.

Zur Aufgabe: Die Lösung hat sicher nicht mehr als 100 Zeilen, und ist daher schonmal vom Aufwand her realtiv einfach.

Will ja mit sicherheit keine Komplettlösung dazu..

zumindest n ansatz;)

ich hab schon etliche bücher ausgeliehen momentan arbeite ich mit Programmieren lernen mit c aber ist trotzdem nicht soo leicht ..

Ein Ansatz?

Okay lese deine Noten (wie auch immer) in ein zweidimensionales Array ein z.B. histogramm[sCHUELERANZ][NOTEN].

sind keine Werte vorhanden, dann liesst Du ein Blank ein.

Dann durschläufst Du das Array einfach nur in 2 for Schleifen von oben nach unten durch mit einem printf und fertig ist das ganze.

fertigen Code bekommst Du nicht :P

ein Ansatz:


#include <stdio.h>

int main()
{
return 0;
}
[/php]

Super, das hätten wir ... im ansatz schon mal falsch gepostet :rolleyes: oder is C++ = PHP ... dann wäre VC++ eine geniale IDE für PHP entwickler.

Zum Ansatz, ich denke es hilft einem Blutigen anfänger wenig, ihm nur die Grundstruktur einer Konsolen-Anwendung zu geben.

Ich verweise freundlichst auf diese Tutorials:

- Hallo Welt - Tutorial

- Arrays - Tutorial

- Bloody Develope - C++ Tutorial

Bedingt der situation, das lernenden Menschen geholfen wird, solltest du ersteinmal versuchen einen eigenen Quelltext für dein Programm zu überlegen, zumindest versuchen einen Quelltext zu realisieren. Das was du hast, wo du AFAIK nicht weiterkommst, Poste hier. So denke ich, wird dir am schnellsten geholfen :cool:

grüße Exelsior.

P.S.: Hunde weckt man mit Knochen, int main() { return 0 } ... ist ein sehr leckerer Knochen :floet:

Hallo,

oder is C++ = PHP ... dann wäre VC++ eine geniale IDE für PHP entwickler.

Nur weil der PHP Tag verwendet wird, heisst das noch lange nicht, dass der getaggte Code auch PHP-Code sein muss!

P.S.: Hunde weckt man mit Knochen, int main() { return 0 } ... ist ein sehr leckerer Knochen :floet:

Tja, das ist leider kein gültiges C/C++ Programm, im Gegensatz zum Code in den PHP-Tags!!

Es ist auch nicht besonders hilfreich, bei einem konkreten Problem auf diverse C/C++ Tutorials allgemeiner Art zu verlinken.

Nic

Hallo,

Super, das hätten wir ... im ansatz schon mal falsch gepostet :rolleyes: oder is C++ = PHP ... dann wäre VC++ eine geniale IDE für PHP entwickler.

Ich liebe es, (vor allem unsinnig) klugzugeschissen zu werden. Aber das kann ich auch: Ansi C != C++.

Zum Ansatz, ich denke es hilft einem Blutigen anfänger wenig, ihm nur die Grundstruktur einer Konsolen-Anwendung zu geben.

Das sehe ich ein wenig anders, aber natürlich gibt es mehrere Ansätze dazu. Ich fange selber immer so an, auch wenn mir durchaus bewusst ist, dass das nicht unbedingt der Königsweg ist.

Bedingt der situation, das lernenden Menschen geholfen wird, solltest du ersteinmal versuchen einen eigenen Quelltext für dein Programm zu überlegen, zumindest versuchen einen Quelltext zu realisieren. Das was du hast, wo du AFAIK nicht weiterkommst, Poste hier. So denke ich, wird dir am schnellsten geholfen :cool:

Weise Worte, aber so weit waren wir schon. Die einzelnen Schritte sind, soweit ich mich erinnere, bereits gepostet worden. Es galt eben "nur" noch, das in Code umzusetzen und da kann eine Referenz a la www.cpprerence.com schonmal behilflich sein, zumal anschließend auch "nur" nach der Syntax gefragt wurde:

mein problem ist nur das in c-syntax zu schreiben!!!

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.