#2249: 為啥會RE呢? RE是什麼?


nim2456 (冷月無華)


RE這是我開始玩這個系統第一次碰上....

 這是啥鬼?? = =

執行時發生錯誤 (SIGFPE)(8)!!
可能原因包含溢位或者除以0的問題
sh: line 1: 25884 浮點數出錯 

這個程式有需要用到浮點數嗎? =.=

 我實在想了好幾天了.....真的是受不了才來拜託前輩們 = =  

 是我的程式出了什麼問題嗎??

#2250: Re:為啥會RE呢? RE是什麼?


nim2456 (冷月無華)


RE這是我開始玩這個系統第一次碰上....

 這是啥鬼?? = =

執行時發生錯誤 (SIGFPE)(8)!!
可能原因包含溢位或者除以0的問題
sh: line 1: 25884 浮點數出錯 

這個程式有需要用到浮點數嗎? =.=

 我實在想了好幾天了.....真的是受不了才來拜託前輩們 = =  

 是我的程式出了什麼問題嗎??

忘了附上程式...

 

#include "stdio.h"                //話說...我是用VISUAL C++ 所以原本是stdafx.h
#include <iostream>
#include "string"
#include "math.h"
using namespace std;
int count_1(int x)                                
{
 int count=0;
 for(int i=10;i<=x;i*=10)
   if(x/i>=1)
    count++;
 return count;
}
int count_2(int c,int x)                         
{
 int temp=1;
 int y;
 for(int i=1;i<=c;i++)
  temp=temp*10;
 y=x/temp;
    return y;
}
int count_3(int x)
{
 for(int i=10;i<=x;i*=10)
 {
  if((x%i)==((x/10)%i))
   return 2;
  if((x/i)==0)
   return 1;
      return 1;
 }
}
int main()
{
 int x;
 while(cin>>x && x>=0 && x<=2147483647)
 {
  while(x>1)
  {
   int a=(count_1(x));
         int b=(count_2(a,x));
   if(count_3(x)>1)
    cout<<"零";
   if(a>=8)
    if(a>=8)
   {
         if(b==0)
         cout<<"零";
                  if(b==1)
         cout<<"壹";
         if(b==2)
         cout<<"貳";
         if(b==3)
         cout<<"参";
         if(b==4)
         cout<<"肆";
         if(b==5)
         cout<<"伍";
         if(b==6)
         cout<<"陸";
         if(b==7)
         cout<<"柒";
         if(b==8)
         cout<<"捌";
         if(b==9)
         cout<<"玖";
         if(a==11)
         cout<<"仟";
         if(a==10)
         cout<<"佰";
         if(a==9)
         cout<<"拾";
   }
   if(a==8)
    cout<<"億";
   
   if(a>=4)
   {
         if(b==0)
         cout<<"零";
                  if(b==1)
         cout<<"壹";
         if(b==2)
         cout<<"貳";
         if(b==3)
         cout<<"参";
         if(b==4)
         cout<<"肆";
         if(b==5)
         cout<<"伍";
         if(b==6)
         cout<<"陸";
         if(b==7)
         cout<<"柒";
         if(b==8)
         cout<<"捌";
         if(b==9)
         cout<<"玖";
         if(a==7)
         cout<<"仟";
         if(a==6)
         cout<<"佰";
         if(a==5)
         cout<<"拾";
   }
   if(a==4)
    cout<<"萬";
   if(a<=3)
   {
   if(b==0)
    cout<<"零";
            if(b==1)
    cout<<"壹";
   if(b==2)
    cout<<"貳";
   if(b==3)
    cout<<"参";
   if(b==4)
    cout<<"肆";
   if(b==5)
    cout<<"伍";
   if(b==6)
    cout<<"陸";
   if(b==7)
    cout<<"柒";
   if(b==8)
    cout<<"捌";
   if(b==9)
    cout<<"玖";
   if(a==1)
    cout<<"拾";
   if(a==2)
    cout<<"佰";
   if(a==3)
    cout<<"仟";
   if(a<=3 && b==0)
    cout<<"零";
   }
   int k=1;
   for(int i=1;i<=a;i++)
    k=k*10;
   x=x%k;                                                                          
 
  }
 }

  return 0;

}

#2297: Re:為啥會RE呢? RE是什麼?


poiu790621 (歪歪)


RE這是我開始玩這個系統第一次碰上....

 這是啥鬼?? = =

執行時發生錯誤 (SIGFPE)(8)!!
可能原因包含溢位或者除以0的問題
sh: line 1: 25884 浮點數出錯 

這個程式有需要用到浮點數嗎? =.=

 我實在想了好幾天了.....真的是受不了才來拜託前輩們 = =  

 是我的程式出了什麼問題嗎??

忘了附上程式...

 

#include "stdio.h"                //話說...我是用VISUAL C++ 所以原本是stdafx.h
#include
#include "string"
#include "math.h"
using namespace std;
int count_1(int x)                                
{
 int count=0;
 for(int i=10;i<=x;i*=10)
   if(x/i>=1)
    count++;
 return count;
}
int count_2(int c,int x)                         
{
 int temp=1;
 int y;
 for(int i=1;i<=c;i++)
  temp=temp*10;
 y=x/temp;
    return y;
}
int count_3(int x)
{
 for(int i=10;i<=x;i*=10)
 {
  if((x%i)==((x/10)%i))
   return 2;
  if((x/i)==0)
   return 1;
      return 1;
 }
}
int main()
{
 int x;
 while(cin>>x && x>=0 && x<=2147483647)
 {
  while(x>1)
  {
   int a=(count_1(x));
         int b=(count_2(a,x));
   if(count_3(x)>1)
    cout<<"零";
   if(a>=8)
    if(a>=8)
   {
         if(b==0)
         cout<<"零";
                  if(b==1)
         cout<<"壹";
         if(b==2)
         cout<<"貳";
         if(b==3)
         cout<<"参";
         if(b==4)
         cout<<"肆";
         if(b==5)
         cout<<"伍";
         if(b==6)
         cout<<"陸";
         if(b==7)
         cout<<"柒";
         if(b==8)
         cout<<"捌";
         if(b==9)
         cout<<"玖";
         if(a==11)
         cout<<"仟";
         if(a==10)
         cout<<"佰";
         if(a==9)
         cout<<"拾";
   }
   if(a==8)
    cout<<"億";
   
   if(a>=4)
   {
         if(b==0)
         cout<<"零";
                  if(b==1)
         cout<<"壹";
         if(b==2)
         cout<<"貳";
         if(b==3)
         cout<<"参";
         if(b==4)
         cout<<"肆";
         if(b==5)
         cout<<"伍";
         if(b==6)
         cout<<"陸";
         if(b==7)
         cout<<"柒";
         if(b==8)
         cout<<"捌";
         if(b==9)
         cout<<"玖";
         if(a==7)
         cout<<"仟";
         if(a==6)
         cout<<"佰";
         if(a==5)
         cout<<"拾";
   }
   if(a==4)
    cout<<"萬";
   if(a<=3)
   {
   if(b==0)
    cout<<"零";
            if(b==1)
    cout<<"壹";
   if(b==2)
    cout<<"貳";
   if(b==3)
    cout<<"参";
   if(b==4)
    cout<<"肆";
   if(b==5)
    cout<<"伍";
   if(b==6)
    cout<<"陸";
   if(b==7)
    cout<<"柒";
   if(b==8)
    cout<<"捌";
   if(b==9)
    cout<<"玖";
   if(a==1)
    cout<<"拾";
   if(a==2)
    cout<<"佰";
   if(a==3)
    cout<<"仟";
   if(a<=3 && b==0)
    cout<<"零";
   }
   int k=1;
   for(int i=1;i<=a;i++)
    k=k*10;
   x=x%k;                                                                          
 
  }
 }

  return 0;

}

 

我用了一下你的程式

"参"的部分好像會變成"?"

你看一下是不是這裡