Pagini recente » Cod sursa (job #1654757) | Cod sursa (job #624072) | Cod sursa (job #3196197) | Cod sursa (job #1958634) | Cod sursa (job #1016328)
#include <stdio.h>
#include <stdlib.h>
int cap_stanga,cap_dreapta,k,c,rez=0;
int* Date()
{
FILE *f = fopen("cifre.in","r");
fscanf(f,"%d %d %d %d",&cap_stanga,&cap_dreapta,&k,&c);
fclose(f);
int i,k=0,*v;
v = (int*)malloc((cap_dreapta-cap_stanga+1)*sizeof(int));
for(i = cap_stanga; i <= cap_dreapta; i++)
{
v[k++] = i;
}
return v;
}
int Alg(int n,int d)
{
if(n == 0)
return d;
if(n < 10 && n == c)
return d+1;
if(n%10 == c)
{
d++;
}
return Alg(n/10,d);
}
void Scriere()
{
FILE *f = fopen("cifre.out","w");
fprintf(f,"%.4f",(float)rez/cap_dreapta);
fclose(f);
}
int main()
{
int *v,i;
v = Date();
for(i = 0; i < cap_dreapta-cap_stanga+1; ++i)
{
if( Alg(v[i],0) >= k )
rez++;
}
// printf("%.4f",(float)rez/cap_dreapta);
Scriere();
return 0;
}