#5811: 請各位幫幫我,我問題出在哪?想很久了


sivs912018 (★紫鋒☆)

學校 : 國立彰化師範大學附屬高級工業職業學校
編號 : 19380
來源 : [101.15.148.210]
最後登入時間 :
2012-12-05 11:21:35
a007. 判斷質數 | From: [114.33.123.53] | 發表日期 : 2011-09-13 21:45

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
    int a,b,x,y,i,j;
    double z;
    while(scanf("%d",&a)==1)
    { 
      b=sqrt(a);
      
      for(y=b;y>=2;y--)
      {
        j=(a%y==0);
           if(j==1)
           {
           printf("非質數\n");
           break;                 
           }
           
           
         for(x=a-1;x>=2;x--)
         {
          i=(a%x==0);
               if(i==1)
               {
                printf("非質數\n");
                break;
               }
         }
               
               
       } 
              if(i!=1)
               {
               printf("質數\n");
               }
    }
         return 0;
}
 
#5826: Re:請各位幫幫我,我問題出在哪?想很久了


longbiau ((~o ̄▽ ̄)o Summer)

學校 : 臺北市立中正高級中學
編號 : 8414
來源 : [203.64.138.253]
最後登入時間 :
2013-02-27 15:34:10
a007. 判斷質數 | From: [120.107.174.102] | 發表日期 : 2011-09-16 01:03

 if(i!=1)
 {
 printf("質數\n");
 }

這個i會被沿用,試試看先輸入一個質數再輸入一個非質數,看看輸出結果後再想看看微笑
 
ZeroJudge Forum