C-Programmierung Hilfessuche

Status
Für weitere Antworten geschlossen.

Flasche

Cadet 2nd Year
Registriert
März 2014
Beiträge
20
hallo zusammen...
kurz... ich hab nächste Woche eine Prüfung in C-Programmieren und und brauche dazu dringend Hilfe... hab erst heute damit begonnen mich einzulesen und sehe mich changenlos ! Deshalb hier mein Hilferuf...
es geht um C-programmieren! Wenn mir jemand helfen kann wär ich auch gern zu einer kleinen "Wiedergutmachung" bereit!
ich hätte da 2 Aufgaben, welche wahrscheinlich kommen und wäre sehr dankbar wenn mir jemand diese 2 Aufgaben lösen könnte!

1)
a) Das Programm erwartet auf der Kommandozeile einen Integerparameter 0<n<12,einen int x >1, einen Arreynamen aname (Text) und einen Filenamen fname (Text). Alle Parameter müssen vorhanden sein und müssen die bedingungen erfüllen.Bei Fehlern ist eine ordentliche Usage-Meldung auszugeben und das Programm endet.

b)Stellen Sie nun sicher ,dass die Datei fname noch nicht existiert: öffnen Sie die Datei zu Lesen. Wenn das erfolgreich ist, beenden Sie das Programm mittels usage(...) . Öffnen Sie nun die Datei im Überschreibmodus.

c)schreiben Sie nun in diese Datei die definition eines C-int Arrays, das mit n in [1,x] gleichverteilten ganzzahligen Zufallszahlen initialisiert ist. Nach dem Aufruf ./a.out 10 10 MyArray My File sollte in der Datei MyFile ein ähnlicher Output stehen wie: int MyArray[10] = {1, 3, 7, 9, 4, 2, 1, 5, 5, 10};

2)
a) schreiben Sie eine Funktion int read_ints(int a[], int dim) ,die ausgibt: geben Sie maximal dim zahlen ein, Ende mit einem Buchstaben:
a[0]
...
Statt dim ist natürlich dessen Wert auszugeben. Jede Eingabe soll durch einen Prompt angefordert werden(s.o), der auch den laufenden Index enthält. Die Anzahl der eingelesenen Zahlen ist als Ergebnis der Funktionzurückzugeben. Im Hauptprogramm ist ein Array int x[1000]; zu definieren und obrige Funktionaufzurufen. Die Anzahlder eingelesenen Elemente ist in einer Variablen n zu speichern.

b)Modifizieren Sie die Einlesefunktion so, dass sie alle Zahlen <10 bei der Eingabe ingnoriert(nicht speichern). Der Index darf hier nicht erhöht werden. Am Ende gibt die Funktion aus:
Es wurden... Zahlen gespeichert und ... ignoriert

c)Schreiben sie eine Funktion double gmittel (int a [], int dim), die den Mittelwert der geraden Zahlen im Array a [] (als double!) berechnet und zurückgibt. Außerdem sollte folgende Ausgabe erfolgen:
Anzahl der geraden Zahlen: ...
Mittelwert: ...

Soo ich hoffe ich hab die Aufgaben richtig abgeschrieben, und natürlcih hoffe ich das mir jemand behilflich sein kann. Ich hoffe auch das es nicht zu zeitaufwändig ist die Aufgaben zu lösen! :pcangry:
 
Flasche schrieb:
Soo ich hoffe ich hab die Aufgaben richtig abgeschrieben, und natürlcih hoffe ich das mir jemand behilflich sein kann. Ich hoffe auch das es nicht zu zeitaufwändig ist die Aufgaben zu lösen! :pcangry:

Ist es nicht. Also ran den Speck! Das schaffst Du locker bis zur Prüfung!
 
Flasche schrieb:
ich hab nächste Woche eine Prüfung in C-Programmieren und und brauche dazu dringend Hilfe... hab erst heute damit begonnen mich einzulesen und sehe mich changenlos ! Deshalb hier mein Hilferuf...
Natürlich. Kurz vor der Prüfung, "mal eben" einlesen, dann wird das schon klappen. ;) Alternativ findet sich schon jemand, dessen Quelltext man kopieren oder auswendig lernen kann. So lernt man bestimmt nicht programmieren.
Schreib die Lösungen der Aufgaben in einem Flussdiagramm auf.
Programmieren heisst nicht die Befehle einer Programmiersprache auswendig zu kennen. Die Befehle und deren Wirkung kann man nachlesen, aber die Logik, mit der ein gestelltes Problem gelöst wird, lernt man nicht auswendig.
Zwischen Programmieren (Entwickeln einer Lösung für ein Problem) und dem reinen Codieren (das tippen von Befehlen im Quelltext) ist ein Unterschied.
 
Sry... aber diese Prüfung ist enorm wichtig für mich...
ich werde alles geben diese Woche!!!
ist nicht so das ich erst jetzt beginne... sondern bis heute wusste ich gar nicht das ich diese Prüfung machen muss... lange geschichte...
es geht auch nicht darum den Quelltext auswendig zu lernen ... da ja nicht die selben Aufgaben kommen... sondern es wäre eine Megahilfestellung für mich beim lernen!

...für den behilflichen Menschen wirds dann auch ein kleines Bounty tragen sofern er es denn möchte!
 
Flasche schrieb:
sondern bis heute wusste ich gar nicht das ich diese Prüfung machen muss
Das glaube ich dir nicht. Wenn man ein Fach hat, hat man am Ende auch eine oder mehrere Prüfungen zu den behandelten Themen. Das war nie anders. Und deine Lehrer werden sich auch zwischendurch mal einen Kommentar fallen gelassen haben, was für die Prüfung wichtig ist und was nicht. Spätestens in diesem Moment muss man doch spitze Ohren bekommen haben.


Tja, nach der Aufgabenstellung nach kommen einfache und komplexe Datentypen dran, Kontrollstrukturen, Datei-I/O und Keyboard-I/O. Das alles in einer Woche? Auswendig lernen schafft man, Können tut man es dann aber trotzdem nicht. Und wenn die Klausur vernünftig gestaltet ist, dann sind die Punkte 50:50 zwischen Können und Wissen aufgeteilt.
Können kommt nur durch Übung. Eine Woche reicht den meisten Leuten nicht, damit es "Klick" macht.

Bei Erst- und Zweitsemesterstudenten, die ich an meiner Hochschule im Fach Java-Programmierung betreut habe, war ziemlich klar zu erkennen, dass vielleicht nur ein Drittel wirklich kapiert hat, was da vor sich geht. Ein weiteres Drittel hat nix gerafft, dafür aber fleißig auswendig gelernt. Das sind üblicherweise diejenigen, die das Fach erst in der Zwei- oder Drittprüfung schaffen. Das letzte Drittel hat gar nix gemacht und ist naturgemäß durchgerasselt. Aber die hatten eh nix in diesem Studiengang zu suchen. :o
 
Zuletzt bearbeitet:
e-Laurin schrieb:
Das glaube ich dir nicht.
Ist aber so...

e-Laurin schrieb:
Das alles in einer Woche? Auswendig lernen schafft man, Können tut man es dann aber trotzdem nicht. Und wenn die Klausur vernünftig gestaltet ist, dann sind die Punkte 50:50 zwischen Können und Wissen aufgeteilt.
Können kommt nur durch Übung. Eine Woche reicht den meisten Leuten nicht, damit es "Klick" macht.

ja und genau aus diesem Grund mach ich mir auch die Mühe hier zu posten... ist ja auch nicht so dass ich faul auf der Haut liege... sonder zieh mir seit Stunden Youtube tutorials rein!
 
Du musst üben, und nicht Videos glotzen. Es wirklich der einzige Weg, das auf die Reihe zu bekommen.

Es ist wie Fahrrad fahren. Man kann sich tausende Videos und Bücher dazu anschauen - fahren muss man dennoch alleine lernen. Hat es dann aber erst mal "Klick" gemacht, wird der Rest sehr, sehr einfach.
 
Programmieren lernt man nur, wenn man selber programmiert...
Am Besten durch Programme, die dir Spaß machen zu schreiben.
Dafür ist es aber nun zu spät.

Aber hier mal 2c: (C# und Java-konform)
double gmittel (int a[], int dim) //dim = dimension? ur unnötig, dafür gibts doch .length()
{
int sum = 0;
int anzahl = 0;
for (int i = 0; i < dim; i++) {
if (a % 2 == 0) { sum += a; anzahl++;} //Gerade Zahlen
}
return (double)sum / (double)anzahl;
}

Ausgabe musst du selber machen.... das solltest du wohl noch schaffen

Ich habe int benutzt um Rundungsfehler bei Fließkommazahlen-Rechenoperationen zu vermeiden.
 
Zuletzt bearbeitet:
Status
Für weitere Antworten geschlossen.
Zurück
Oben