• Aucun résultat trouvé

if a > b then a := a - b else b := b - a;

N/A
N/A
Protected

Academic year: 2022

Partager " if a > b then a := a - b else b := b - a; "

Copied!
2
0
0

Texte intégral

(1)

function puissance(a,b:integer):longint;

var p:longint;

i:integer;

begin p:=1;

for i:=1 to b do p:=p*a;

puissance:=p;

end;

function factoriel(a:integer) :longint;

var f:longint;

i:integer;

begin f:=1;

for i:=2 to a do f:=f*i;

factoriel:=f;

end;

function

maximum(t:tab;n:integer):integer;

var

max,i:integer;

begin max:=t[1];

for i:=2 to n do if t[i]>max then max:=t[i];

maximum:=max;

end;

function

minimum(t:tab;n:integer):integer;

var min,i:integer;

begin min:=t[1];

for i:=2 to n do if t[i]<min then min:=t[i];

minimum:=min;

end;

function

majus_espace(ch:string):boolean;

var

i:integer; test:boolean;

begin i:=0;

repeat i:=i+1;

if ch[i] in ['A'..'Z',' '] then test:=true else test:=false;

until (test=false) or (i=length(ch));

majus_espace:=test;

end;

function

exist(t:tab;n,x:integer):boolean;

var i:integer; test:boolean;

begin i:=0;

repeat i:=i+1;

if t[i] =x then test:=true else test:=false;

until (test=true) or (i=n);

exist:=test;

end;

function

palindrome(ch:string):boolean;

var i:integer; test:boolean;

begin i:=0;

repeat i:=i+1;

if ch[i] = ch[length(ch)-i+1] then test:=true else test:=false;

until (test=false) or( i=length(ch) div 2);

palindrome:=test;

end;

function

distinct(t:tab;k:integer):boolean;

var i:integer; test:boolean;

begin i:=0;

repeat i:=i+1;

if t[i]=t[k] then test:=false else test:= true;

until (test=false) or (i=k-1);

distinct:=test;

end;

procedure saisie_distinct(var t:tab;var n:integer);

var i:integer;

begin

write('t[1]='); readln(t[1]);

for i:=2 to n do repeat

write('t[',i,']='); readln(t[i]);

until distinct(t,i)=true;

end;

procedure saisie_tableau_trie(var t:tab;var n:integer);

var i:integer;

begin

write('t[1]='); readln(t[1]);

for i:=2 to n do repeat write('t[',i,']=');

readln(t[i]);

until t[i]>t[i-1];

end;

function occurence(t:tab; n,x:integer) :integer;

var

i,occ :integer;

begin occ:=0;

for i:=1 to n do

if t[i]=x then occ:=occ+1;

occurence:=occ;

end;

function premier(n:integer):boolean;

var i:integer;

begin i:=2;

while (n mod i <>0) and (i<=n div 2) do i:=i+1;

if i > n div 2 then

premier:=true else premier:=false;

end;

(2)

function premier(n:integer):boolean;

var i:integer;

begin

premier :=true ; for i :=2 to n-1 do if n mod i =0 then premier:=false ; end;

function recherchedichotomique (t:tab;x:integer):boolean;

var

d,g,i:integer;

begin g:=1;

d:=n;

repeat i:=(d+g) div 2;

if x<t[i] then d:=i-1 else g:=i+1;

until (x=t[i]) or (g>d);

if x=t[i] then recherchedichotomique:=true else recherchedichotomique:=false;

end;

function pgcd(a,b:integer):integer;

begin

while a <> b do

if a > b then a := a - b else b := b - a;

pgcd := a;

end;

Function Pgcd( a , b : integer) : integer;

Var r : integer;

Begin

While b <> 0 Do Begin

r := a mod b;

a := b;

b := r;

End;

Pgcd := a ; end;

procedure fact_premiers(var t1:tab;

var k:integer;a:integer);

var i:integer;

begin k:=0;

i:=2;

while a<>1 do if a mod i =0 then begin

a:= a div i;

k:=k+1;

t1[k]:=i;

end else i:=i+1;

end;

function ppcm(a,b:integer):integer;

var Max,Min:integer;

begin

Max := a; Min := b;

If b > Max Then Begin

Max := b;

Min := a;

End;

While Max Mod Min <> 0 Do Max := Max + (a + b - Min);

ppcm := Max;

end;

function

chaine_sans_redandance(ch:string):stri ng;

var i,j:integer;

chf :string ; begin chf :=’’ ;

for i:=1 to length(ch)-1 do if pos(ch[i]=chf)=0 then chf :=chf+ch[i] ;

chaine_sans_redandance:=chf;

end;

Références

Documents relatifs

- si deux opérateurs hermitiques non dégénérés commutent, ils ont un système commun de

[r]

[r]

[r]

Calcule le nombre maximum de lots qu'il pourra réaliser et dans ce cas, le nombre de timbres de chaque sorte par lot.. C HAPITRE N1 – N OMBRES ENTIERS

Calcule le nombre maximum de lots qu'il pourra réaliser et dans ce cas, le nombre de timbres de chaque sorte par lot.. C HAPITRE N1 – N OMBRES ENTIERS

Il donne ses deux nombres à son voisin de droite qui doit déterminer leur PGCD par la méthode géométrique (sur une feuille à petits

1 re Partie : Découverte de la méthode Dans cette partie, nous allons illustrer le calcul du PGCD de 18 et 22 par une figure géométrique.. On commence par construire un