Collatz mit Pascal

Aus ProgrammingWiki
Archivierte Version vom 2021-02-05T23:10:55+00:00. Aktuelle Version

var zahl, zaehler: uint64;

begin

 while true do
 begin
   zaehler := 0;
   write('Gib eine natürliche Zahl größer 1 ein. Mit 1 terminiert das Programm: ');
   ReadLn (zahl);
   if zahl <= 1 then break;
   while zahl > 1 do
     begin
       if zahl mod 2 = 0 then zahl := zahl div 2
       else zahl := 3*zahl + 1;
       zaehler := zaehler + 1;
       writeln('Zahl: ', zahl, ' Schritt: ', zaehler);
     end;
  end;