Zunächst mal: Es gibt keine if-Schleifen
Das Problem mit der Null kannt du am einfachsten so lösen:
test := random(48) + 1;
Damit werden Zahlen zwischen 1 und 49 erzeugt.
Dir ist schon klar, dass du mit der Anweisung "memo1.clear" den kompletten Inhalt des Memos löscht, inklusive der Zahlen, die korrekt gezogen wurden?
Um zu verhindern, dass Zahlen doppelt kommen könntest musst du die bereits gezogenen Zahlen irgendwo speichern und nach dem Ziehen einer neuen Zahl prüfen, ob diese bereits vorhanden ist. In diesem Fall einfach noch eine neue Zahl ziehen.
Zitat:
weiterhin hab ich noch ne frage
Dafür solltest du bitte ein neues Thema eröffnen.