C Programmierung - Zufallszahlen
Halloooooooooo... :) ich werde mich bestimmt sehr blamieren aber ich komm einfach nicht weiter. :( also ich hab die Aufgabe, ein Programm zu schreiben das zufällig zwei ganze Zahlen a & b zwischen 1 & 1000 bestimmt, so dass a<=b gilt. Der Benutzer soll solange eine Zahl raten, bis er die Zahl gefunden hat, die genau in der Mitte von a & b liegt... Nach jedem Ratenversuch soll der Benutzer einen Hinweis erhalten: Ist die Zahl kleiner als a oder größer als b: „Viel zu klein!“ bzw. „Viel zu groß!“ Ist die Zahl im richtigen Bereich, aber näher einer Grenze als an der Mitte: „Zu klein!“ bzw. „Zu groß!“ Anderenfalls: „Ein bisschen zu klein!“ bzw. „Ein bisschen zu groß!“ Wenn der Benutzer richtig geraten hat, erhält er die Mitteilung „Richtig!“ und die Grenzen werden zur Kontrolle ausgegeben... Mein Problem: Meine Zufallszahlen ändern sich als nicht.. & die Zahl die ich raten muss ist nie genau in der Mitte von a & b... Mein Code den ich habe werde ich als Bild hinzufügen... vielleicht kann mir einer sagen ob das so richtig ist oder ich nur totalen Blödsinn gemacht habe... :D Ich danke euch schonmal. :)


1 Antwort
Also, ersten zweifel ich daran dass du die Funktion randomNumber richtig implementiert hast, da diese einfach eine Zufallszahl zwischen 1 und 1000 zurückliefern soll, nicht mehr und nicht weniger.
#include <stdio.h>
#include <cstdlib>
#include <time.h>
int randomNumber()
{
return rand() % 1000 + 1;
}
int main()
{
srand(time(NULL));
int a;
int b;
a = randomNumber();
while(true)
{
b = randomNumber();
if(a <= b)
{
break;
}
}
return 0;
}
Da hast du eine Lösung was das Zufallsproblem angeht. Denke ich muss das nicht weiter erläutern oder? ;)
Muss im Nachhinein zugeben dass das mit der while-Schleife doof gelöst ist. Man kann auch einfach beiden variablen so oft Zufallszahlen zuweisen, bis die entsprechende Bedingung stimmt.