Hi.
Nach langer und harter Recherche und Programmierung, hab ich nun ein Programm geschrieben, dass zwei Zufallszahlen generiert und diese vergleicht. Das macht das Programm nun solange, bis die generierten Ziffern übereinstimmen. Funzt.
So.
Nun soll das ganze mit einem anderen Programm ausgeführt werden, wo zusätzlich eine Laufvariable hinzukommt, die den Test so oft wiederholt, wie die Laufvariable sagt (meinet wegen fünf mal). Das sollte ja mit einer for-Schleife gehen.
Beim ersten Durchlauf stimmt es auch, nur bei allen danach kommen falsche Werte raus.
Hier der Code:
Code:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int mehrfacher_test(void)
{
int anzahl_tests;
printf("Wie viel Tests sollen durchgefuehrt werden? ");
scanf("%d", &anzahl_tests);
int zaehler, versuche;
for(zaehler=1; zaehler<=anzahl_tests; zaehler++)
{
einfacher_test();
}
printf("\nBei %d Tests wurden im Durchschnitt %d Chipkarten eingezogen.", anzahl_tests, versuche);
}
Und der einfache_test:
Code:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int einfacher_test(void)
{
int versuche, zufall1, zufall2;
srand((unsigned) time(NULL));
for(versuche = 1; zufall1 != zufall2; versuche++)
{
zufall1 = rand() % (9999 - 1111 + 1) + 1111;
zufall2 = rand() % (9999 - 1111 + 1) + 1111;
}
printf("\n\nEs wurden %d Chipkarten eingezogen.", versuche);
return 0;
}
Das ganze läuft über eine main-Funktion, die ein Auswahlmenü hat. Funzt ebenfalls.
Warum funktioniert der erste Durchlauf, danach allerdings keiner mehr?
Das Programm ist noch nicht fertig, also nicht wundern, dass es unvollständig aussieht.