Beruflich Dokumente
Kultur Dokumente
CONSIGNE :
Ecrire un programme Pascal qui permet de convertir un
nombre d’une base départ vers une base d’arrivée.
L’utilisateur aura un menu pour effectuer les choix des bases.
PLAN
Introduction
1. Présentation du projet
2. Déroulement du projet
Description détaillée de la réalisation du projet
Description des difficultés rencontrées
Contenu du programme
Conclusion
1. Présentation du projet
Notre projet consiste à écrire un programme Pascal qui nous
permettrons de convertir un nombre d’une base de départ
vers une base d’arrivée. Ceci nécessite l’utilisation des
structures de données telles qu’if …then the mais aussi nous
devons faire appel aux procédures et aux fonctions qui sont
déclarées après les variables. Le nom de mon programme est
CONVERSION_BASE.
1. Déroulement du Projet
Description détaillée
Program CONVERSION_BASE ;
uses crt;
type tab=array[1..30] of integer;
var
d,a,n:integer;
B:tab;
procedure binaire(n:integer; var B:tab);
var i:integer;
begin
writeln('Entrer les chiffres binaires un en un');
for i:=1 to n do
read(B[i]);
end;
Function octale(ch2:string):string;
var
s,d1,d2,d3:integer;
e1,e2,e3:integer;
c,ch8:string;
begin
(ch2) := '';
while length(ch2) mod 3 <>0 do
begin
ch2:= '0'+ ch2;
end;
repeat
val (ch2[1],d1,e1);
val (ch2[2],d2,e2);
val (ch2[3],d3,e3);
s:= d1*4+d2*2+d3*1;
str(s,c);
ch8 := ch8+c;
delete(ch2,1,3);
until ch2='';
octale:=ch8;
end;
function decimale(n:integer;B:tab):longint;
var r:longint;
i:integer;
begin
r:=B[1];
for i:=2 to n do
r:=2*r+B[i];
decimale:=r;
end;
function hexadecimale (ch2:string):string;
var
s,d1,d2,d3,d4:integer;
e1,e2,e3,e4:integer;
c,ch16:string;
begin
repeat
val (ch2[1],d1,e1);
val (ch2[2],d2,e2);
val (ch2[3],d3,e3);
val (ch2[4],d4,e4);
s:= d1*8+d2*4+d3*2+d4*1;
str(s,c);
ch16:=ch16+c;
delete(ch2,1,4);
until ch2='';
hexadecimale:=ch16;
end;
begin
writeln('DONNER VOTRE BASE DE DEPART ');
writeln('TAPER 2 pour choisir la base 2');
writeln('TAPER 8 pour choisir la base 8');
writeln('TAPER 10 pour choisir la base 10');
writeln('TAPER 16 pour choisir la base 16');
readln(d);
if d=2 then
writeln('CHOISIR VOTRE BASE D''ARRIVEE');
writeln('TAPER 2 pour choisir la base 2');
writeln('TAPER 8 pour choisir la base 8');
writeln('TAPER 10 pour choisir la base 10');
writeln('TAPER 16 pour choisir la base 16');
readln(a);
writeln('Donner la longueur n du nombre en binaire');
readln(n);
if a=2 then
begin
writeln('VOUS AVEZ CHOISI LA MEME BASE')
end
if a=2 then
begin
writeln('En base 2 on a ');
b8b2(ch8);
end
else if a=8 then
begin
writeln('Vous avez choisi la meme base!');
end
else if a=16 then
begin
end;
(* BASE 16 VERS 2 8 10 16 *)
begin
writeln('En base 2 on a ');
b16b2(ch16);
end
else if a=16 then
writeln('Vous avez choisi la meme base !');
readkey;
end.
CONCLUSION
Ce projet Pascal constitue un intérêt
particulier pour l’étudiant dans ce langage. Il
nous a permis de lieux connaitre ce qu’est la
programmation et les difficultés qu’on
traverse lors de leur mise au point.