#778: 請問我錯在那呢


twjs (老頭子)

學校 : 不指定學校
編號 : 3471
來源 : [210.62.247.188]
最後登入時間 :
2011-07-12 08:53:24
a010. 因數分解 | From: [61.231.194.31] | 發表日期 : 2008-10-26 12:59

#include<stdio.h>   
#include<stdlib.h>
#include<math.h>
int main(){           
    int x,y,time=0;     
    while(scanf("%d",&x)==1){
 
   while(x%2==0)
   {
    time++;
    x/=2;
    }
   if(time>1)
     printf("2^%d * ",time);
   else if(time)
     printf("2 * ");
    for(y=3;y<=x;y+=2)
    {
      time=0;   
      while(x%y==0)
      {                      
      time++;
      x/=y;
      }
     if(time>1)
     printf("%d^%d * ",y,time);
   else if(time)
     printf("%d * ",y);
    }  
    printf("\b\b   \n");
   
  }  
return 0;

在自己的電腦上是對的耶....不解中..

 
#877: Re:請問我錯在那呢


shiratori (新人王)

學校 : 國立臺灣大學
編號 : 2109
來源 : [8.39.120.216]
最後登入時間 :
2018-11-12 01:31:54
a010. 因數分解 | From: [140.112.48.129] | 發表日期 : 2008-11-05 13:00

#include<stdio.h>    
#include<stdlib.h>
#include<math.h>
int main(){            
    int x,y,time=0;      
    while(scanf("%d",&x)==1){

    time = 0;
   while(x%2==0)
   {
    time++;
    x/=2;
    }
   if(time>1)
     printf("2^%d * ",time);
   else if(time)
     printf("2 * ");
    for(y=3;y<=x;y+=2)
    {
      time=0;    
      while(x%y==0)
      {                       
      time++;
      x/=y;
      }
     if(time>1)
     printf("%d^%d * ",y,time);
   else if(time)
     printf("%d * ",y);
    }   
    printf("\b\b   \n");
    
  }   
return 0;

在自己的電腦上是對的耶....不解中..

 
ZeroJudge Forum