撰寫能計算二位小數的「加法」浮點運算器。
註一: 程式需包含由鍵盤輸入、螢幕輸出的機制,
且需利用迴圈,接受連續的輸入、出。
註二: 程式內不允許任何實數的使用。
註三: 程式需能處理負數。
#include<iostream>
using namespace std;
int y = 1;
void ke(int x)
{
if((10>(x%100)) & ((x%100)>=0))
cout << "第" << y <<"個數為:"<<(x/100)<<".0"<<(x%100)<<"\n\n";
if((0>(x%100)) & ((x%100)>-10))
cout << "第" << y <<"個數為:-"<<(x/100)*(-1)<<".0"<<((x%100)*(-1))<<"\n\n";
if((x%100)>=10)
cout <<"第"<< y <<"個數為:"<<(x/100)<<"."<<(x%100)<<"\n\n";
if((x%100)<=-10)
cout <<"第"<< y <<"個數為:-"<<(x/100)*(-1)<<"."<<(x%100*(-1))<<"\n\n";
y++;
}
int main()
{
int a = 0 , b = 0 , n = 0 , i = 0 ;
cout<<"輸入範例: [ 5.23請輸入523 , -6.09請輸入-609 ] \n"
<< "請問您要幾個數相加?\n" ;
cin >> n ;
if ( n <= 0 )
cout <<"輸入錯誤!!請再輸入一次!\n";
cin >> n ;
cout << "請輸入第1個數\n" ;
cin >> a;
ke(a);
for ( i = 2 ; i <= n ; i++)
{
cout << "請輸入第" << i <<"個數\n" ;
cin >> b ;
ke(b);
a+=b;
}
if((10>(a%100)) & ((a%100)>=0))
cout<<"其和為:"<<(a/100)<<".0"<<(a%100)<<"\n";
if((0>(a%100)) & ((a%100)>-10))
cout<<"其和為:-"<<(a/100)*(-1)<<".0"<<((a%100)*(-1))<<"\n";
if((a%100)>=10)
cout<<"其和為:"<<(a/100)<<"."<<(a%100)<<"\n";
if((a%100)<=-10)
cout<<"其和為:-"<<(a/100)*(-1)<<"."<<(a%100*(-1))<<"\n";
return 0;
}
留言列表