Zahlenmenge erzeugen!?!?!ß

Hallo ihr Wissenden,
ich habe leider ein riesen Problem. Und zwar hab ich eine Aufgabe, die ich seit Stunden probiere zu lösen. Ich glaub, die kapier ich nichtmal richtig ganz, deswegen der Originaltext:

Erstelle ein Programm, das in aufsteigender Reihenfolge mindestens die ersten 30 Zahlen der Menge M generiert und ausgibt. Die Menge M ist wie folgt definiert:

  1. Die Zahl 1 ist in M.
  2. Wenn x in M ist, so sind auch y=2*x+1 und z:=3*x+1 in M.

Beachte, dass M eine Menge und keine Zahlenfolge ist. Das bedeutet, dass in M keine gleichen Zahlen vorkommen. Zur Kontrolle: Die ersten 15 Werte lauten:
M={1,3,4,7,9,10,13,15,19,21,22,27,28,31,39,…}

So, also ich habe bis jetzt mir mal gedacht, dass man auf jeden Fall einen Array benötigt und wahrscheinlich eine extra Funktion, mit der man die vorherigen Werte berechnen muss, da ja manche Werte mit z und manche mit y berechnet werden. Wer kann mir einen Tipp (odeer vielleicht sogar Lösung) geben?

Noch eine Hausaufgabe…
Hi Adrian,

ich habe leider ein riesen Problem. Und zwar hab ich eine
Aufgabe, die ich seit Stunden probiere zu lösen. Ich glaub,
die kapier ich nichtmal richtig ganz, deswegen der
Originaltext:…

Erstmals klingt dies nach Hausaufgabe und wahrscheinlich sollte ich das nicht beantworten.
Du gehst an das Problem falsch ran. Du benötigst eben keinen Array, sondern, wie es in der Angabe steht, eine Menge. Mengen in Pascal definierst du über

TYPE zahlenmenge = SET OF Byte;

Eine Menge kann immer nur ein Element des gleichen Typs enthalten, mit maximal 256 Werten. Weitere Infos gibt es hier:
http://www.lernnetz-sh.de/kmlinux/doc/Pascal-Kurs/pa…

Der Rest ergibt sich irgendwie von selbst. Der Wert 1 ist vorgegeben, somit ergeben sich automatisch 3 und 4, usw. Wenn Du Dir das oberhalb durchgelesen und verstanden hast, dann verstehst Du auch folgendes Programm:

program menge;

uses crt;

type zahlenmenge = set of byte;
var M: zahlenmenge;
 i,j:byte;
 x,y,z:integer;
begin
i:=1;
M:=[1];
j:=1;
while j 
Schönen Gruß,
Rudy (der nun die letzte Hausaufgabe hier gemacht hat)

Noch eine Hausaufgabe…
Ich dachte mir schon, das so was kommt, aber es ist zum Glück nicht so! Handelt sich um keine Hausaufgabe, sondern nur mal eine Aufgabe, bei der uns gesagt wurde, dass wir mal probieren sollen sie zu lösen! Und ich habs eben ewig lang nicht kapiert! Aber vielen Dank für deine Hilfe!