Pagini recente » Cod sursa (job #2296182) | Cod sursa (job #1517229) | Cod sursa (job #2764927) | Cod sursa (job #2865959) | Cod sursa (job #1056649)
#include <stdio.h>
#include <math.h>
int main ()
{
FILE *f1;
FILE *f2;
int t,n,gasit;
int r;
int i,j,number, number_to_print, new_number,rad,number2;
f1 = fopen ("progresie.in","r");
f2 = fopen ("progresie.out","w");
fscanf (f1, "%d", &t);
for(i=0;i<t;i++)
{ gasit=0;
fscanf (f1, "%d %d", &number, &r);
number2 = number-1;
for (n=1;gasit==0; n++) {
for (j= n*n-n+1; j<=n*n&&gasit==0; j++){
number2=number-1;
number_to_print=j;
new_number=j+r;
rad=(int)(sqrt(new_number));
while (number2>0) {
if(rad*rad<new_number&&new_number<rad*rad+rad+1)
{
number2=-1;
}
else {new_number=new_number+r;
rad=(int)(sqrt(new_number));
number2--;
if(number2==0)
gasit=1;
}
}
}
}
if (number2 == 0) {gasit = 1;
fprintf(f2, "%d\n", number_to_print);
}
}
fclose(f2);
fclose(f1);
return 0;
}