09/01/04 05:25:09
>>176
一応元のコードをベースにしたけどこんなんでおk?
#include <stdio.h>
#include <math.h>
int main(void)
{
{ int i, n, Limit;
n = 0x7FFFFFFF;
for(;;--n){
Limit=(int)sqrt(n);
for (i=Limit;i>1;i--)
if (n%i == 0)break;
if (i==1)break;
}
printf("int型の最大の素数は%dです\n",n);
}{ unsigned int i, n, Limit;
n = 0xFFFFFFFF;
for(;;--n){
Limit=(unsigned int)sqrt(n);
for (i=Limit;i>1;i--)
if (n%i == 0)break;
if (i==1)break;
}
printf("unsigned int型の最大の素数は%uです\n",n);
}
return 0;
}