Algorithmes et programmation en Pascal Faculté des Sciences de Luminy On donne cette liste de propriétés (non vue en cours) avant de poser l'exercice :
En DEUG A, les premiers cours d'informatique commencent traditionnellement par des notions d'algorithmique et l'apprentissage d'un langage de programmation
Corrigé Préparé par : Zouari Lazhar Professeur d'enseignement secondaire Ecrire un programme en Pascal permet de déterminer et d'afficher le successeur
Exercices de programmation en Pascal - Série 1 : exercice 1 et introduction à TopPascal - Série 2 : exercices 2 à 7 - Série 3 : exercices 8 et 9 - Série 4
Exercice 6 Ecrire un programme Pascal intitulé PARITE qui saisit un nombre entier et détecte si ce Exercices en Turbo Pascal : Corrigés FENNI SALAH ©®
TD sur les tableaux en PASCAL (corrigé) ECE 1 Lycée Dumas jeudi 26 avril Exercice 1 Voici un programme calculant le polynome dérivé (appelé q dans le
De même les exercices proposés sont également progressifs Ils ne seront généralement pas tous traités au cours de la séance, aussi un polycopié de corrigés
TURBO PASCAL W Exercices Corrigés Prof: FENNI Salah Lycée Chebba Ecrire un algorithme puis la traduction en Pascal d'un programme intitulé
Ces résultats peuvent être vérifiés à l'aide du programme PASCAL ci-après : Program DEUG_DG; {Programme de résolution d'une équation du second degré }
Belaid, Algorithmique et programmation en Pascal, cours, exercices et travaux pratique avec corrigés, Edition Les Pages Bleues, 2004 • M ZAIR, Apprendre l'
[PDF] exercices corrigés réaction chimie terminale s pdf
[PDF] exercices corrigés réaction chimique
[PDF] exercices corrigés recherche opérationelle
[PDF] exercices corrigés recherche opérationnelle pdf
[PDF] exercices corrigés recherche opérationnelle s5
[PDF] exercices corrigés repère dans le plan
[PDF] exercices corrigés repère dans le plan 3ème
[PDF] exercices corrigés repère dans le plan pdf
[PDF] exercices corrigés représentation de newman
[PDF] exercices corrigés sciences physiques premiere s
[PDF] exercices corrigés semi conducteurs pdf
[PDF] exercices corrigés statique des fluides pdf
[PDF] exercices corrigés statique pfs
[PDF] exercices corrigés statistique
[PDF] exercices corrigés statistique descriptive
AlgorithmesetprogrammationenPascal
FacultedesSciencesdeLuminyEdouardThiel
TDcorriges
Deug1MassMA
Modulede75heures
1997a2004
Tabledesmatieres
1Expressionsetaectations4
1.1Typed'uneexpression4
1.2Anneebissextile5
1.3Boulangerie5
1.4LogiquedeBoole5
1.5SupplementspourleTP6
2Intervallesetenregistrements7
2.1Heures7
2.2SupplementspourleTP10
3Procedures11
3.1MinetMax11
3.2
Echangedansl'ordrecroissant12
3.3Passaged'enregistrements13
3.4SupplementspourleTP14
4Bouclesetfonctions15
4.1Fonctionsnumeriques15
4.2Lectureauclavier16
4.3Intervallesdetemps17
4.4SupplementspourleTP18
5Tableauxetindices19
5.1LeprogrammeAppaLet19
6Tableaux,recordetstring23
6.1LeprogrammeRendezV23
6.2Cryptage25
7Detectiondemots27
7.1LeprogrammeColEcran27
8Fichierstexte31
8.1LeprogrammeMinusCol31
9Recherchedansunchier35
9.1Recherchedemots35
9.2LeprogrammeNuMots37
TDDeug1MassMA,1997a20043
10Tris39
10.1Triparpermutation39
10.2Triabullesoptimise40
10.3SupplementspourleTP42
1.Expressionsetaectations
1.1Typed'uneexpression
Rappel
Tabledesprioritesclasseesparordre
decroissant,lesoperateurssurunem^eme ligneayantuneprioriteegale(onevaluealors degaucheadroite).()fonction()primaire +-notunaire */divmodandmultiplicatif +-oradditif =<><<=>=>relation pasbienformees.Exemple: round(2:6|{z} reel+1|{z} entier| {z} reel3.6) {z} entier4>4|{z} entier=3|{z} entier| {z} reel1.33.. {z} booleentrue
1.2-5*3+4(2-5)*(3+4)2-(5*3+4)
2.12/312div311div3div211mod3+5.2
3.1.0*2+3-4round(2*6.3)-15/3(50<3*8)
4.falseornotfalseandtrue(12>24)+(2+4=12)
5.(37-3>=14)-'a'+3pred('b')>'k'12>3>4
6.3.5+7>4>falsenot(12<>3*16.8/4)andtrue
7.3*cos(8.0/(17-(3*4)-5))
Correction
1.entier9entier21entier17
2.reel4:0entier4entier1reel7:2
3.reel1:0reel8:0booleenfalse
4.booleentrueerreur:bool+bool
6.booleentruebooleenfaux
7.erreur:divisionpar0
TDDeug1MassMA,1997a20045
1.2Anneebissextile
TD
Ecrireb:=l'expression.
TP
Correction
(1)!(3):(xandy)or(xandz)=xand(yorz).
1.3Boulangerie
TD TP estouverte.
Correction
b:=(h>=7)and(h<=13)and(j<>1)or (h>=16)and(h<=20)and(j>1); !Re echirchezsoiaucasoulesminutessontxees.
1.4LogiquedeBoole
TD
Simplierlesexpressions:
Correction
xory=yorx(idempourand){10} :=(x<7);{5} q:=not(aand(notaorb))orb; :=true;{7}
Remarque:(x)y)s'ecritnotxory
1.5SupplementspourleTP
1)CodesASCII
2)Erreurs
3)Portrait
TDDeug1MassMA,1997a20047
2.Intervallesetenregistrements
2.1Heures
enregistrementtemps_t.
Correction
TYPEheure_t=0..23;minute_t=0..59;
s:seconde_t;End;
2)Soitt1ett2deuxtemps_t.
Correction
PROGRAMtp_egaux;TYPE{cf1)}
VARt1,t2:temps_t;egal:boolean;
writeln('Egalite:',egal);END.
3)Modierleprogrammepourqu'ildisesit1 a)Avecuneexpressionbooleenne. b)Avecdesifthenelse. Correction
a)Ondeclareinf:boolean. Onpeutencorereduirel'expression:
nement. inf:=false;if(t1.h4)Soittuntemps_t.
depuis0:0:0.
Correction
virgule).
PROGRAMnb_sec;TYPE{cf1)}
VARt:temps_t;ns:integer;
writeln('ns:',ns);END.
TDDeug1MassMA,1997a20049
passantparlaconversionensecondes.
Correction
PROGRAMtp_comp;TYPE
{cf1)}VARt1,t2:temps_t; ns1,ns2:integer;BEGIN{Lecturet1ett2...} ns2:=t2.h*3600+t2.m*60+t2.s; if(ns1
Correction Onplaceleresultatdanst3:temps_t.
ecrire: 2.2SupplementspourleTP
1)Procedures
2)Programmemystere
Quefaitceprogramme?
PROGRAMabyz;VARd:char;
BEGINread(d);
END. TDDeug1MassMA,1997a200411
3.Procedures
3.1MinetMax
1)ProcedureMinde2entiers.
2)ProcedureMaxde2entiers.
Correction
BEGINifa END; BEGINifa>bthensup:=aelsesup:=b;
END; BEGINMin(x,y,p);Max(x,y,g);
END; 4)PROGRAMexo1;
VARu,v,pp,pg:integer;{varglobales}
{iciproceduresMin,MaxetMinMax} BEGIN writeln('min',pp,'max',pg);END. 3.2 Echangedansl'ordrecroissant
estabc.Ecrireplusieursversions. Correction
BEGINifa>bthenbegint:=a;a:=b;b:=t;end;
END; PROGRAMTri1;
VARu,v:real;{Mettreicilaprocedure}BEGIN
END. Onseposelaquestion:varoupasvar?
apres. .Avecunvar:aetbsontdesaliasdeuetv. 2)PROCEDUREEchange3(vara,b,c:real);BEGIN
END; Ilyad'autressolutionspossibles.Exemple:
Echange2(a,b);{onmetleplusgranddansb}
TDDeug1MassMA,1997a200413
3.3Passaged'enregistrements
parametres. 1) detsouslaformeh:m:ssansretouralaligne. 2) leschampsdet. 3) ecouleesdepuis0:0:0. Correction
PROGRAMtemps;
TYPE heure_t=0..23;minute_t=0..59; seconde_t=0..59;temps_t=Recordh:heure_t; m:minute_t;s:seconde_t;End; 1)PROCEDUREecriture(t:temps_t);BEGIN
write(t.h,':',t.m,':',t.s);END; readln(t.h,t.m,t.s);END; END; 4)VARt1,t2:temps_t;
n1,n2:integer;c:char; BEGIN ifn13.4SupplementspourleTP 1)Programmemystere
Laballeestsousquelgobelet?
PROGRAMballe;
TYPEgobelet_t=recordballe:boolean;
abra(g1,g2);cad(g2,g3);abra(g3,g1); END. TDDeug1MassMA,1997a200415
4.Bouclesetfonctions
4.1Fonctionsnumeriques
1)Factorielle
Faireunefonctionfacto(n)quirenvoien!.
2)Puissance
Faireunefonctionpuiss(x,n)quirenvoiexn.
3)Exponentielleex'1+x
1+x22!+x33!++xnn!
appelauxfonctionsfactoetpuiss. Correction
END; {Lafonctionestjusteegalementpourn=0. {Onpeutaussicommencerlefora2. puiss:=r;END; {00n'estmathematiquementpasdeni. expn:=r;END; deplusenpluslents. 4.2Lectureauclavier
1)Compterdescaracteres
2)CompterlesL
Correction
c:char;BEGINres:=0;{init} END; 3)CompterlesLEUniquementenTP
Correction
c,d:char;BEGINres:=0;{init} whilec<>CFindo end; readln; nb_couple:=res; END; TDDeug1MassMA,1997a200417
4.3Intervallesdetemps
Soitletypetemps_tdeniaux2.
1) periodedetemps. 2) depuis0:0:0. 3) etrenvoieleresultatsousformed'untemps_t. 4) etdeconvertir. Correction
1)TYPEheure_t=0..23;
h:heure_t;m:minute_t;s:seconde_t; End;inter_t=Recorddebut,fin:temps_t;
End; 2)FUNCTIONcalc_ns(t:temps_t):integer;
BEGINcalc_ns:=t.h*3600+t.m*60+t.s;END;
BEGINres.h:=nsdiv3600;ns:=nsmod3600;
res.m:=nsdiv60;ns:=nsmod60;res.s:=ns; convertir:=res;END; END; 4.4SupplementspourleTP
1)Calculdepi
4=113+1517+19
lorsqueleterme1 xestpluspetitque". Correction
PROGRAMcalculpi;
repeat s:=-s;{inverselesigne} untilabs(t)VARe:real;
END. TDDeug1MassMA,1997a200419
5.Tableauxetindices
5.1LeprogrammeAppaLet
Ondisposedestypessuivants.
CONSTMaxTabCar=4096;CMin='a';
1)Lectureauclavier
2)Achageal'envers
contenudetabCar:TabCar_t. 3)Calculdepourcentage
detabCar. 4)Recherchedumaximum
5)Recherchedesplusfrequents
t^ete. 6)Programmeprincipal
achedansl'ordrecroissantdefrequence. Correction
varnbCar:integer;CarFin:char);VARc:char; whilec<>CarFindobeginnbCar:=nbCar+1; readln;{absorbeleretourchariot}END; END; VARi,n:integer;c:char;BEGIN
{comptage}fori:=1tonbCardo tabP[c]:=tabP[c]+1.0;n:=n+1;end; end; {calculpourcentages} TDDeug1MassMA,1997a200421
n:integer);VARi:integer;c:char; BEGINfori:=1tondobegin
end;{lemaxsuivantnesoitpluscec}END; 6)PROGRAMAppaLet;
VAR tc,tf:TabCar_t; tp:TabPourcent_t;nc:integer;BEGIN AfficheEnvers(tf,5);END.
TDDeug1MassMA,1997a200423
6.Tableaux,recordetstring
6.1LeprogrammeRendezV
introduitlestypessuivants: 1)Saisie
besoinenappelantlaprocedurelecture(). 2)Achage
besoinenappelantlaprocedureecriture(). 3)Chevauchement
vousr1,r2:Rdv_tsechevauchent. 4)Testjournee
5)Programmeprincipal
Correction
1)PROCEDURESaisieRdv(varr:Rdv_t);
lecture(r.fin);END; ecriture(r.debut);ecriture(r.fin);END; AffiRdv(j[k]);end;END;
5)PROGRAMRendezV;
TDDeug1MassMA,1997a200425
6.2Cryptage
TD successivesdesvariablesetexpressions). TP successivesdesvariablesetexpressions). VARm,c:t;
END. Correction
1ord('o')1ord('i')ord('i')-ord('a')=8'w'
2ord('n')2ord('e')ord('e')-ord('a')=4'r'
3ord('c')3ord('g')ord('g')-ord('a')=6'i'
4ord('l')1ord('i')ord('i')-ord('a')=8't'
5ord('a')2ord('e')ord('e')-ord('a')=4'e'
6ord('f')3ord('g')ord('g')-ord('a')=6'l'
7ord('f')1ord('i')ord('i')-ord('a')=8'n'
TDDeug1MassMA,1997a200427
7.Detectiondemots
7.1LeprogrammeColEcran
1)Debutavecdes'a'
ousiin'estpasdansl'intervalle1::255. 2)Finavecdes'a'
mot.Ecrire: majusculeousouligne). 4)Debutetnavecdeslettres
pasdeslettres. 5)Achaged'unmot
6)Programmeprincipal
Correction
ifs[i]='a'thenDetecteDebut:=i;end;End; (c>='A')and(c<='Z')or(c='_');End; elseDetecteFin:=i-1;End; fori:=debuttofindowrite(s[i]);End; TDDeug1MassMA,1997a200429
6)PROGRAMColEcran;
Vars:ligne_t;i,j:integer;
i:=DetecteDebut(s,1);whilei<>0dobegin i:=DetecteDebut(s,j+1);end;End. TDDeug1MassMA,1997a200431
8.Fichierstexte
Rappel
8.1LeprogrammeMinusCol
cestunelettre,sinonrenvoiecinchange. desenminuscules. 3)Ouvertureetfermeture
chiers. 4)GestiondeserreursEnTPuniquement
surnom2. 5)Caractereparcaractere
6)Ligneparligne
7)Unmotparligne
8)Programmeprincipal
endessousdesautres. Correction
1)FunctionMinusCar(c:char):char;Begin
End; 2)ProcedureMinusLig(vars:ligne_t);
Vari:integer;Beginfori:=1tolength(s)do
s[i]:=MinusCar(s[i]);End; rewrite(f2);CasseFi(f1,f2);close(f1); close(f2);End; err:integer;Beginerr:=0; assign(f1,nom1);assign(f2,nom2); iferr=0thenbegin end; iferr=0thenCasseFi(f1,f2); CasseNom:=err;End;
TDDeug1MassMA,1997a200433
quotesdbs_dbs19.pdfusesText_25