Qu'est ce qu'il affiche ce programme

Fermé
bzminfo Messages postés 25 Date d'inscription dimanche 24 janvier 2010 Statut Membre Dernière intervention 17 mai 2013 - 21 mars 2010 à 10:04
 le père - 21 mars 2010 à 15:32
bonjour,
y a-t-il quelqu'un qui peut m'expliquer qu'est ce qu'il affiche ce programme, et merci d'avance.

uses wincrt;
var
ch:string;n:integer;
 
function inconnue(ch:string;i,p:integer):integer;
begin
    if i=0 then inconnue:=0
    else if ch[i]='1' then  inconnue:= p + inconnue(ch,i-1,2*p)
                      else inconnue:= inconnue(ch,i-1,2*p);
end; 
 
begin
    write('ch = ');readln(ch);
    writeln(inconnue(ch,length(ch),1));
end.

2 réponses

Bonjour

Si tu n'arrives pas à deviner en lisant le programme, essaye-le avec les chaînes suivantes (sans les guillemets):
"1"
"1x"
"1xy"
"1x1"
Ça devrait te guider
0
bzminfo Messages postés 25 Date d'inscription dimanche 24 janvier 2010 Statut Membre Dernière intervention 17 mai 2013 2
21 mars 2010 à 14:38
bonjour le père,
mais essayer avec les chaines "101" ==>5
et la chaine "11011"==>27
malgré ça j'ai rien compris!!!!
0
Ne te contente pas de deux valeurs
essaye
1
1x
11
1xy
1x1
11x
111
10ab
1231
0