conversion 10-B

Aller en bas

conversion 10-B

Message par Imen ESSASSI le Mar 3 Avr - 19:57

{Remarque: B varie entre 2 et 16}
program conversionB10;
uses wincrt;
type
tab=array[1..100] of integer;
var
n,B,c:integer;
t:tab;

procedure saisir_B(var B:integer);
begin
repeat
writeln('Donner B:');
readln(B);
until (B in [2..16]) and (b<>10);
end;
procedure conv10B(n,B:integer; var t:tab; var c:integer);
begin
c:=0;
repeat
c:=c+1;
t[c]:= n mod B;
n:=n div B;
until(n=0);
end;
procedure affiche(t:tab;n:integer);
var
i:integer;
Begin
for i:=n downto 1 do
if(t[i] in [0..9]) then write(t[i])
else write(chr(t[i]+55));
end;

BEGIN
saisir_B(B);
write('n=');
readln(n);
conv10B(n,B,t,c);
affiche(t,c);
END.


Imen ESSASSI

Messages : 9
Date d'inscription : 21/02/2018

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum