• 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

[r]

[r]

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

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

[r]