Cod sursa(job #604015)
Utilizator | Iulian iu.ciocoiu | Data | 19 iulie 2011 18:32:47 |
---|---|---|---|
Problema | Cifre | Scor | 20 |
Compilator | fpc | Status | done |
Runda | Arhiva de probleme | Marime | 1.05 kb |
program cifra_III;
var a,b,c,k,cop,i,n,sol,pow:longint;
p:real;
f,g:text;
cond:boolean;
begin
assign (f,'cifre.in'); reset (f);
assign (g,'cifre.out'); rewrite (g);
read (f,a,b,c,k);
sol:=0;
pow:=1;
for i:=1 to k-1 do pow:=pow*10;
for i:=a to b do begin cop:=i;
cond:=false;
n:=0;
while (cop>0) and (cond<>true) and (i div pow>=k) do begin if (cop mod 10=c) then n:=n+1;
if (k=n) then begin sol:=sol+1;
cond:=true;
end;
cop:=cop div 10;
end;
end;
p:=sol/(b-a+1);
write (g,p:4:4);
close (f);
close (g);
end.