小学奥数读本(三年级),P133第12题。
用一到八,八个数,组成一道除法算式:口口口口÷口=口口口
这题有两个答案:
453*6=2718
582*3=1746
用pascal编程解决,解法一:
1 var
2 i,j:longint;
3 s:set of char;
4 st:string;
5 begin
6 for i:=123 to 987 do
7 for j:=1 to 8 do begin
8 s:=[];
9 str(i,st);
10 s += [st[1]]+[st[2]]+[st[3]];
11 str(j,st);
12 s += [st[1]];
13 if(i*j>=1234) then begin
14 str(i*j,st);
15 s += [st[1]]+[st[2]]+[st[3]]+[st[4]];
16 end;
17 if( s = [‘1‘..‘8‘] ) then writeln(i,‘ ‘,j,‘ ‘,i*j);
18 end;
19 end.
解法二:
1 var
2 i,j,k:longint;
3 s:set of 0..8;
4 begin
5 for i:=123 to 987 do
6 for j:=1 to 8 do begin
7 s:=[];
8 s += [j];
9 k:=i;
10 while(k>0) do begin
11 s += [k mod 10];
12 k := k div 10;
13 end;
14 k:=i*j;
15 while(k>0) do begin
16 s += [k mod 10];
17 k := k div 10;
18 end;
19 if( s = [1..8] ) then writeln(i,‘ ‘,j,‘ ‘,i*j);
20 end;
21 end.
小学奥数读本(三年级),P133第12题,布布扣,bubuko.com
时间: 2024-10-29 19:10:02