Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Praktische Informatik » Softwaretechnik » C - Funktionsausgabe in TXT speichern » Antwort erstellen » Hallo Gast [Anmelden|Registrieren]

Antwort erstellen
Benutzername: (du bist nicht eingeloggt!)
Thema:
Nachricht:

HTML ist nicht erlaubt
BBCode ist erlaubt
Smilies sind erlaubt
Bilder sind erlaubt

Smilies: 21 von 33
smileWinkDaumen hoch
verwirrtAugenzwinkerngeschockt
Mit ZungeGottunglücklich
Forum Kloppebösegroßes Grinsen
TanzentraurigProst
TeufelSpamWillkommen
LehrerLOL HammerZunge raus
Hilfe 
aktuellen Tag schließen
alle Tags schließen
fettgedruckter Textkursiver Textunterstrichener Text zentrierter Text Hyperlink einfügenE-Mail-Adresse einfügenBild einfügen Zitat einfügenListe erstellen CODE einfügenPHP CODE farbig hervorheben
Spamschutz:
Text aus Bild eingeben
Spamschutz

Die letzten 6 Beiträge
Elisa59

Guten Tag,

ich bin über Mr. und Dr. Goohle auf die Aufgabe gestoßen und hab da einige Fragen zu. Ist da jemand eventuell, der mir die ein oder andere Frage beantworten könnte?

Viele Grüße

Elisa
Karlito

Passt so, ist rekursiv.

Gruß,

Karlito
LightSideOfLife

Ich hätte nochmal eine Frage:
Unser Prof gab uns auf die Funktion "AnzahlBerechnen" rekursiv zu lösen.
Meine Funktion ist rekursiv, oder nicht?
Sie ruft sich selbst auf, also gehe ich davon aus, dass dies die korrekte Lösung ist.
Oder müsste ich dies anders lösen?
LightSideOfLife

Danke, ich werde es mal versuchen!
eulerscheZahl

Warum machst du dann nicht einfach zu übrigen printf auch alle zu fprintf (bzw. zusätzlich)?
Du solltest die Datei dann aber mit "a" wie append öffnen, statt "w", da sonst alles vorherige ersetzt wird.

Alternativ kannst du auch beim Programmstart sagen, dass die Ausgabe gespeichert werden soll: wenn du das Programm in der Console startest, geht das mit programmname > ausgabe.txt. Dabei wird aber sämtliche Ausgabe umgeleitet.
LightSideOfLife C - Funktionsausgabe in TXT speichern

Hallo Leute!
Für mein SoftwareTechnik Praktikum sollte ich einen kleinen Geldautomaten programmieren.
Wir sollten den Automat vor allem in verschiedene Funktionen unterteilen.
Ich habe die Aufgabe bereits gelöst und mein Code sieht nun so aus:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
#include <stdio.h>

int schein[7] = {500,200,100,50,20,10,5};
int scheinanzahl[7] = {0,0,0,0,0,0,0};
FILE *Datei;

int BetragEingeben(){
	int eingabe;
		do{
			printf("Wie viel Geld möchten Sie abheben? (5er Schritte) ");
			scanf("%d", &eingabe);
			if (eingabe % 5 != 0)
				printf("\nUngültige Eingabe! \n\n");
		}
		while (eingabe % 5 != 0);
	return eingabe;
}

int* AnzahlBerechnen(int rest, int i){
		if (rest > 0){
			if (rest >= schein[i]){
				scheinanzahl[i] = rest/schein[i];
				rest = rest % schein[i];}
			AnzahlBerechnen(rest, i+1);
		}
			return scheinanzahl;
}


int Ausgabe(int schein[], int scheinanzahl[]){
	int i;
	printf("\nDer Automat drückt folgende Scheine raus: \n\n Anzahl\t |     Schein\n");
	printf("-----------------------\n");
	for (i = 0; i < 7; i++){
		/*if (scheinanzahl[i] != 0){*/
		printf("   %d \t |\t%d\n",scheinanzahl[i], schein[i]);
		/*}*/
		
	}
}

void Speichern(){
	int i;
	Datei = fopen("Log.txt","w");
	for (i = 0; i < 7; i++)
		fprintf(Datei,"%d x %d, ",scheinanzahl[i], schein[i]);
	fclose(Datei);
}

main()
{
	Ausgabe(schein,AnzahlBerechnen(BetragEingeben(), 0));
	Speichern();
}



Ich möchte jetzt aber nicht (wie bereits geschehen) nur sinngemäß die Lösung in Log.txt speichern, sondern die komplette Ausgabe meiner Funktion "Ausgabe()".
Ich habe es bereits mit stdout versucht aber kam auch nicht weiter.
Falls mir wer helfen kann wäre ich sehr dankbar smile

Freundliche Grüße,
Marvin