|
Procédures
|
|
||
|
> Mul11:= proc(n) local M: M:=n*11: lprint(M): end: > Mul11(7); 77 En effet, 11 x 7 = 77
> for i from 10 to
15 do Mul11(i): od: 110 121 132 143 154 165 En effet, 11 x 10 = 110 11 x 11 = 121, etc. |
|
|
> Mul:=
proc(n,m) local M:
M:=n*m: lprint(M): end: > Mul(15,6); 90 |
|
|
||
|
> SoCh:=proc(n) local Somme, nn, q, r;
Somme:=0: nn:=n:
q:= iquo(nn,10):
r:= irem(nn,10): while
0<nn do Somme:=Somme+r;
nn:=iquo(nn,10):r:=irem(nn,10) od: lprint(Somme): end: > SoCh(1234); SoCh(123456789); 10 45 |
|
|
||
|
> SoCh:=proc(n) local Somme, nn,
q, r; Somme:=0: nn:=n: q:= iquo(nn,10): r:= irem(nn,10):
while 0<nn do
Somme:=Somme+r; nn:=iquo(nn,10):r:=irem(nn,10) od: return(Somme): end: > a:=SoCh(123456789): b:=SoCh(123): c:=SoCh(456): d:=SoCh(789): e:=b+c+d: lprint(a,b,c,d,e): 45, 6, 15, 24, 45 |
|
|
||
|
> Ch:=proc(n) local C,nn, q, i,R: nn:=n: C:=[]: while nn>0 do C:=[op(C),irem(nn,10)]; nn:= iquo(nn,10): od: q:=nops(C):R:=[]:
for i from 1 to q do R:=[op(R),C[q-i+1]] od: print(R): end: > Ch (123); Ch(9876006789); |
|
|
||
au lieu de demander une impression, nous demandons
un retour (return) du résultat pour utilisation dans un autre
programme.
Le cube
de tous les nombres se terminant par 99 se termine aussi par 99, et que
ceux-là. |
Procédure extraction des chiffres > Chiffre:=proc(n) local C,nn, q, i,R: nn:=n: C:=[]: while nn>0 do C:=[op(C),irem(nn,10)]; nn:= iquo(nn,10): od: q:=nops(C):R:=[]:
for i from 1 to q do R:=[op(R),C[q-i+1]] od: return (R): end: > for
Nb from 1 to 1000 do Cube:=Nb^3:
CC:= Chiffre (Cube):
q:= nops(CC): if CC[q]=9 and CC[q-1]=9 then lprint (Nb,CC): fi: od: 99, [9, 7, 0, 2, 9, 9] 199, [7, 8, 8, 0, 5, 9, 9] 299, [2, 6, 7, 3, 0, 8, 9,
9] 399, [6, 3, 5, 2, 1, 1, 9,
9] 499, [1, 2, 4, 2, 5, 1, 4,
9, 9] 599, [2, 1, 4, 9, 2, 1, 7,
9, 9] 699, [3, 4, 1, 5, 3, 2, 0,
9, 9] 799, [5, 1, 0, 0, 8, 2, 3,
9, 9] 899, [7, 2, 6, 5, 7, 2, 6,
9, 9] 999, [9, 9, 7, 0, 0, 2, 9,
9, 9] |
|
|
Suite |
|
Voir |
|
Aussi |
|
Cette page |