• Aucun résultat trouvé

SERIE SUR LES STRUCTURES CONDITIONNELLES

N/A
N/A
Protected

Academic year: 2022

Partager "SERIE SUR LES STRUCTURES CONDITIONNELLES"

Copied!
6
0
0

Texte intégral

(1)
(2)

Exercice N° 1 :

Comparer deux variables.

USES WINCRT;

var

a,b:integer;

begin

write('Donner a ');

readln(a);

write('Donner b ');

readln(b);

if a>b then write(a,' est superieur à ',b) else write(b,' est supérieure à ',a);

end.

Exercice N° 2 :

Tester la parité d'un entier.

USES WINCRT;

var a:integer;

begin

write('Donner a ');

readln(a);

if a mod 2<>0 then write(a,' est impair ') else write(a,' est pair');

end.

Exercice N° 3 :

Soient a et b deux entiers. Tester si a est le diviseur de b ou inversement.

USES WINCRT;

var

a,b:integer;

begin

write('Donner a ');

readln(a);

write('Donner b ');

readln(b);

if a mod b=0 then write(b,' est le diviseur de ',a) else if b mod a=0 then write(a,' est le diviseur de ',b) else write('Parmi ',a,' et ',b,' il n''existe plus de diviseur propre');

end.

Exercice N° 4 :

Soit l'entier n. Tester la parité de chacun des 2 chiffres de n.

Ex : n = 16  1 est impair et 6 est pair.

USES WINCRT;

var

n,a,b:integer;

begin

write('Donner n ');

readln(n);

a:=n mod 10;

b:=n div 10;

if b mod 2=0 then write(b,' est pair ') else write(b,' est impair ') ; if a mod 2=0 then write(a,' est pair ') else write(a,' est impair ') ; end.

(3)

Exercice N° 5 :

Décider si un entier est divisible par ses 2 chiffres.

Ex : 24 est divisible par 2 et par 4.

USES WINCRT;

var

n,a,b:integer;

begin

write('Donner n ');

readln(n);

a:=n mod 10;

b:=n div 10;

if (n mod a=0) and (n mod b=0) then write(n,' est divisible par ',a,' et ',b) else write (n,' n''est pas divisible par ',a,' et ',b) ;

end.

Exercice N° 6 :

Soit n un entier positif de deux chiffres de la forme ab.

Tester si a*b est divisible par a+b.

uses wincrt;

var

n,d,u:integer;

begin

write('n=');

readln(n);

u:=n mod 10;

d:=n div 10;

if u*d mod (u+d) =0 then

write(u*d,' est divisible par ',u+d) else write('condition non verifiée');

end.

Exercice N° 7 :

Décider si un entier est cubique ou non.

Un entier est dit cubique s'il est égal à la somme des cubes de ses trois chiffres.

Ex : 153 = 13 + 53 + 33 uses wincrt;

var

n,d,u,c:integer;

begin

write('n=');

readln(n);

c:=n div 100;

d:=n div 10 mod 10;

u:=n mod 10;

if u*sqr(u)+d*sqr(d)+c*sqr(c)=n then write(n,' est cubique')

else write(n,' est non cubique');

end.

Exercice N° 8 :

Saisir deux entiers et un opérateur (+ - * /) et afficher le résultat correspondant (suivant l'opérateur).

(4)

uses wincrt;

var

a,b:integer;

op:char;

begin

write('a=');

readln(a);

write('b=');

readln(b);

write('op=');

readln(op);

case op of '+': write(a+b);

'-': write(a-b);

'*': write(a*b);

'/': if b<>0 then write(a/b:0:2) else write('Division par 0 impossible ');

end;

end.

uses wincrt;

var

a,b:integer;

op:char;

begin

write('a=');

readln(a);

write('b=');

readln(b);

write('op=');

readln(op);

if op= '+' then write(a+b)

else if op= '-' then write(a-b) else if op= '*' then write(a*b)

else if b<>0 then write(a/b:0:2) else write('Division par 0 impossible ');

end.

Exercice N° 9 :

Saisir un entier positif n (n ≤ 32767). Décider s’il est palindrome ou non.

Un entier est dit palindrome si ses chiffres sont symétriques.

Ex : si n = 2442 alors n est palindrome.

Uses wincrt ; Var

N :integer ; Res,ch:string;

Begin write('n=');

Readln(n);

Str(n,ch);

Res:='Non Pal';

Case n of

0..9 : res:='Pal';

10..99: if ch[1]=ch[2] then res:='Pal';

(5)

100..999: if ch[1]=ch[3] then res:='Pal';

1000..9999: if (ch[1]=ch[4]) and (ch[2]=ch[3]) then res:='Pal';

10000..32767: if (ch[1]=ch[5]) and (ch[2]=ch[4]) then res:='Pal';

End;

Write(n,' est ',res);

End.

Exercice N° 10 :

Saisir un caractère et afficher sa nature :

 S'il est une lettre (majuscule ou minuscule) et (voyelle ou consonne).

 S'il est un chiffre (pair ou impair).

 S'il est un symbole (son code ASCII).

uses wincrt ; var

c:char ; begin

write ('c=') ; readln (c) ; case c of

'a'.. 'z': if c in ['a','e','i','u','o','y'] then write( 'Lettre miniscule voyelle') else write('Lettre miniscule consonne') ;

'A'.. 'Z': if c in ['A','E','I','O','U','Y'] then write( 'Lettre majuscule voyelle') else write('Lettre majuscule consonne') ;

'0','2','4','6','8': write('Chiffre pair') ; '1','3','5','7','9': write('Chiffre impair') ; else write(ord(c));

end ; end.

Exercice N° 11 :

Un étudiant passe trois examens. Il est déclaré admis si :

 Soit, il a au moins 9 points à chaque examen.

 Soit, la moyenne des trois examens est au moins égale à 10 points et la plus basse note est au moins égale 8 points.

S'il n'est pas admis alors il est refusé.

uses wincrt;

var

a,b,c:integer;

res:string;

begin

write('a=');

readln(a);

write('b=');

readln(b);

write('c=');

readln(c);

res:='Refusé';

if (a>=9)and (b>=9) and (c>=9) then res:='admis';

if ((a+b+c)/3>=10)and(a>=8) and(b>=8) and(c>=8) then res:='Admis';

write('L''elève est ',res);

end.

(6)

Exercice n° 12 :

Écrire un programme qui fait entrer une chaîne alphabétique CH, formé de trois lettres.

=> dans le cas où la chaîne est symétrique (de la forme XYX),

déterminer puis afficher le minimum et le maximum des lettres X et Y.

=> dans le cas contraire, déterminer et afficher un message indiquant si cette chaîne commence par une lettre majuscule ou minuscule.

Exemple 1 : CH = ICI ICI est symétrique Min = C Max = I Exemple 2 : CH = EYE EYE est symétrique Min = E Max = Y

Exemple 3 : CH = DEL DEL n’est pas symétrique et la 1ère lettre de la chaîne est majuscule Exemple 4 : CH = cAs cAs n’est pas symétrique et la 1ère lettre de la chaîne est minuscule.

uses wincrt ; var

ch:string ; begin

write ('ch=') ; readln (ch) ;

if (ch[1]=ch[3])and(ch[1]>ch[2]) then write(ch,' est symetrique et max = ',ch[1],' et min= ',ch[2]);

if (ch[1]=ch[3])and(ch[1]<ch[2]) then write(ch,' est symetrique et max = ',ch[2],' et min= ',ch[1]);

if (ch[1]<>ch[3])and(ch[1]in ['a'..'z']) then write(ch,' n''est pas symetrique et commence par une miniscule');

if (ch[1]<>ch[3])and(ch[1]in ['A'..'Z']) then write(ch,' n''est pas symetrique et commence par une majuscule');

end.

Exercice N° 13 :

Dans cet exercice, nous nous intéressons aux ordinaux abrégés en anglais, ou le nombre est écrit en chiffres.

Les premiers sont :« 1st », « 2nd », « 3rd », « 4th », etc. (abbreviation de « first, second, third, fourth, ... »).

Pour déterminer le suffixe, on regarde le dernier chiffre du nombre : - si c'est 1, on ajoute le suffixe est -st

- si c'est 2, le suffixe est -nd - si c'est 3, le suffixe est -rd- sinon le suffixe est -th.

- si l'avant-dernier chiffre du nombre est 1, le suffixe est toujours -th.

Écrire un programme qui lit un nombre, et qui affiche l'ordinal anglais abrégée correspondant.

uses wincrt;

var

n,u,d:integer;

ch:string;

begin

write('N=');

readln(n);

u:=n mod 10;

d:=n div 10 mod 10;

if d=1 then ch:='-th' else if u=1 then ch:='-st' else if u=2 then ch:='-nd'

(7)

else if u=3 then ch:='-rd' else ch:='-th';

write(n,' a comme suffixe ',ch);

end.

Exercice 14 :

Ecrire un programme intitulé DATES, qui saisit une date sous la forme jj/mm/aaaa (chaîne de 10 caractères) où jj représente le jour, mm le mois, aaaa l’année et l’affiche décodée (jj Mois aaaa).

Exemple : 10/01/2007 donne 10 Janvier 2007

program dates ; uses wincrt;

var

mois,aaaa,jj,date:string;

mm,e:integer;

begin

writeln ('Donner une date ');

readln(date);

jj:= copy(date,1,2);

mois := copy(date,4,2);

aaaa := copy(date,7,4);

val(mois,mm,e);

if e=0 then

case mm of 1: mois := 'janvier';

2: mois := 'Février';

3: mois := 'mars';

4: mois := 'Avril';

5: mois := 'Mai';

6: mois := 'Juin';

7: mois := 'juillet';

8: mois := 'Aout';

9: mois := 'Septembre';

10: mois := 'Octobre';

11: mois := 'Novembre';

12: mois := 'Décembre';

end;

writeln(date,’ devient ', jj,' ', mois,' ',aaaa);

end.

Références

Documents relatifs

[r]

Lettre Minuscule Variante Majuscule Lettre Minuscule Variante Majuscule.

Une structure de contrôle conditionnelle est dite à choix lorsque le traitement dépend de la valeur que prendra le sélecteur, Ce sélecteur doit être de type scalaire (entier

=&gt; dans le cas contraire, déterminer et afficher un message indiquant si cette chaîne commence par une lettre majuscule ou minuscule. (abbreviation de « first, second,

Avec les conditions testées par if, elif et else nous entrons pour la première fois dans un bloc d´instruction. Le bloc d´instruction est ensuite indenté (c´est à dire décalé)

(Third conditional) If Luke hadn’t sent flowers to his mother, she wouldn’t have been happy.. (Second conditional) If the children were in bed, I would be able to have

Mettre en relation les lettres majuscules et scriptes Consigne : Entoure puis colorie de la même couleur. Les

Exercice 7: Ecrire un programme permettant de saisir un entier N compris entre 5 et 10 puis de remplir un tableau T par N caractères alphabétiques majuscules ensuite on vous demande