1-тапсырма. Жеңіс күні қарсаңында «Ешкім де, еш нәрсе де ұмытыл- майды!» айдарымен қазақстандық Кеңес Одағы батырларының ерлі- гін сипаттайтын электрондық журнал дайында. bz/ йтын классик жазу
Procedure GetAB(x: integer; var a: integer; var b: integer); begin a := 0; b := 1; while x > 0 do begin a := a + 1; b := b * (x mod 100); x := x div 100; end; end;
var x, a, b: integer;
begin for x := 10000 to 2000000000 do begin GetAB(x, a, b); if (a = 3) and (b = 18) then Println(a, b, x); end; end.
procedure nod( var dv,tr,pt,dv1,tr1,pt1,dv2,tr2,pt2 :real; ); var a:array[1..6] of real; i : integer; begin dv1:=100; tr1:=100; pt1:=100; for i:= low(a) to high (a) do begin readln(a[i]); repeat if( (a[i] mod 2) =0) then begin a[i]:=a[i]/2; dv:=dv+1; end else if( ( a[i] mod 3)=0) then begin a[i]:=a[i]/3; tr:=tr+1; end else if ( ( a[i] mod 5)=0) then begin a[i]:=a[i]/5; pt:=pt+1; end;
untill(a=1); if dvif trif ptdv:=0; tr:=0; pt:=0; end; if dv1>0 then dv2:=dv1*2 else dv2:=1; if tr1>0 then tr2:=tr1*3 else tr2:=1; if pt1>0 then pt2:=pt1*5 else pt2:=1; nod:=dv2*tr2*pt2; writeln(nod); end; begin nod( dv,tr,pt,dv1,tr1,pt1,dv2,tr2,pt2 ); end.
begin
a := 0;
b := 1;
while x > 0 do
begin
a := a + 1;
b := b * (x mod 100);
x := x div 100;
end;
end;
var
x, a, b: integer;
begin
for x := 10000 to 2000000000 do
begin
GetAB(x, a, b);
if (a = 3) and (b = 18) then
Println(a, b, x);
end;
end.
выдает такие значения
3 18 10118
3 18 10209
3 18 10306
3 18 10603
3 18 10902
3 18 11801
3 18 20109
3 18 20303
3 18 20901
3 18 30106
3 18 30203
3 18 30302
3 18 30601
3 18 60103
3 18 60301
3 18 90102
3 18 90201
3 18 180101
Выделенное наибольшее