pascal語言 求n個自然數的最大公約數和最小公倍數 急

2022-02-02 09:47:00 字數 1062 閱讀 1095

1樓:匿名使用者

lz,怪不得沒人答題啦

用pascal實現 求n個自然數的最大公約數和最小公倍數 是很難的用for語句也可以,但要想很久```

我也想了很久

勸你別用這個題目了

可以用求2個自然數的最大公約數和最小公倍數要明確一些嘛

2樓:

program sd;

const m=3;

var a:array[1..m]of integer;

i,s,n:integer;

function zdgy(num1,num2:integer):integer;

var j,k:integer;

begin

if num1num2 then k:=num1

else k:=num2;

for j:=k to num1*num2 do

if (j mod num1=0)and(j mod num2=0) then

begin

zxgb:=j;

exit;

end;

end;

begin

for i:=1 to m do

readln(a[i]);

s:=a[1];

n:=a[1];

for i:=2 to m do

begin

s:=zdgy(s,a[i]);

n:=zxgb(n,a[i]);

end;

writeln('zui da gong yue shu shi ',s);

writeln('zui xiao gong bei shu shi ',n);

end.

m是這些數的個數,這些數要自己賦值

3樓:

最大公約數 先將所有數進行排序,按從小到大排。先第乙個和第二個求最大公約數,然後存起來,和第三個數求,依此類推。

至於最小公倍數就按從大到小排。此是思想而已,應該挺優化了。自己實現吧。

呼叫procedure,應該很方便的。

將自然數N寫在任意自然數的右邊,如果得到的新數能被N整除

當魔力數m為 1位數時 m是10的一位數因數 1 2 5 2位數時 m是100的二位數因數 10 20 25 50 3位數時 m是1000的三位數因數 100 125 200 250 500 四位數時 m是10000的四位數因數 且要小於2012 1000 1250 2000 綜上,符合條件的魔力數...

已知24n是整數求自然數n所有可能的值

24n 4 6n,那麼開根號即得到2 根號6n,如果是整數的話,即6n是完全平方數,所以自然數n是6乘以完全平方數即可,即6,24,54 6x 2 已知根號18 n是整數求自然數n所有可能的值 0 18 n 18 18之內的非負完全平方數有 0,1,4,9,16 自然數n所有可能的值 n 18 17...

如下對於任意自然數n,nnn1n

表示階乘。階乘指從1乘以2乘以3乘以4一直乘到所要求的數。例如所要求的數是4,則階乘式是1 2 3 4,得到的積是24,24就是4的階乘。例如所要求的數是6,則階乘式是1 2 3 6,得到的積是720,720就是6的階乘。例如所要求的數是n,則階乘式是1 2 3 n,設得到的積是x,x就是n的階乘。...