Saisir un nombre dans une base B
Page 1 sur 1
Saisir un nombre dans une base B
program base;
uses wincrt;
var n,b:integer;
ch:string;
function verif(ch:string;b:integer):boolean;
var i,d,e:integer;
begin
i:=0;
repeat
i:=1+i;
if ch[i] in ['A'..'Z'] then
d:= ord(ch[i])-55
else val(ch[i],d,e);
until not(d in [0..b-1]) or (i>length(ch));
verif:=(d in [0..b-1]);
end;
procedure saisir;
var i:integer;
begin
repeat
writeln('Donner la base : ');
readln (b) until b in [2..16];
repeat
writeln('Donner un nombre dans la base',b,' : ');
readln(ch);
for i:=1 to length(ch) do
ch[i]:= upcase(ch[i]);
until verif(ch,b);
end;
begin
saisir;
writeln(ch,' dans la base : ',b);
end.
uses wincrt;
var n,b:integer;
ch:string;
function verif(ch:string;b:integer):boolean;
var i,d,e:integer;
begin
i:=0;
repeat
i:=1+i;
if ch[i] in ['A'..'Z'] then
d:= ord(ch[i])-55
else val(ch[i],d,e);
until not(d in [0..b-1]) or (i>length(ch));
verif:=(d in [0..b-1]);
end;
procedure saisir;
var i:integer;
begin
repeat
writeln('Donner la base : ');
readln (b) until b in [2..16];
repeat
writeln('Donner un nombre dans la base',b,' : ');
readln(ch);
for i:=1 to length(ch) do
ch[i]:= upcase(ch[i]);
until verif(ch,b);
end;
begin
saisir;
writeln(ch,' dans la base : ',b);
end.
Sujets similaires
» Exercice cube d'un nombre
» Nombre en toutes lettres
» Devoir de contrôle N° 1 :
» Erreur dans l'execution
» Nombre en toutes lettres
» Devoir de contrôle N° 1 :
» Erreur dans l'execution
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|