×
解除綁定,重新設定系統帳號的密碼
您的系統帳號 ID:
您的系統帳號:
您的帳號暱稱:
設定新密碼:
設定新密碼:
×
請輸入要加入的「課程代碼」
請向開設課程的使用者索取「課程代碼」
分類題庫
解題動態
排行榜
討論區
競賽區
登入
註冊
發表新討論
#9916: 編譯對 送出去錯?!
wiwi880114
(看似無盡的人生)
學校 : 國立武陵高級中學
編號 : 50212
×
傳送站內訊息
傳給:
主題:
內容:
來源 : [36.237.108.206]
最後登入時間 :
2021-10-16 13:40:17
a005.
Eva 的回家作業
--
POJ
| From: [110.26.72.120] | 發表日期 : 2015-06-14 09:31
#include<iostream>
#include<math.h>
using namespace std;
int main(){
int a , b, c ,d;
while(cin>>a){
cin>>b;
cin>>c;
cin>>d;
if(pow(b,2)==a*c){
int s=b/a;
cout<<a <<" "<<b <<" "<<c<<" " <<d<<" " <<d*s<< "\n";
}else{
int t=b-a;
cout<<a<<" "<< b<<" " <<c <<" "<<d <<" "<<d+t<< "\n"; }
}
return 0;
}
#9917: Re:編譯對 送出去錯?!
p3a_owhj
(阿普二信)
學校 : 不指定學校
編號 : 39897
×
傳送站內訊息
傳給:
主題:
內容:
來源 : [36.227.79.178]
最後登入時間 :
2024-06-04 22:09:36
a005.
Eva 的回家作業
--
POJ
| From: [49.159.134.149] | 發表日期 : 2015-06-14 16:29
…
(1)
if(pow(b,2)==a*c){
建議型別轉換成正確的,或直接 b*b如下
if ( b*b == a*c ) {
(2) 又題目規定有 t 筆資料,而不是讀到 EOF
#10060: Re:編譯對 送出去錯?!
TYHot31
(sagar)
學校 : 元智大學
編號 : 50120
×
傳送站內訊息
傳給:
主題:
內容:
來源 : [180.217.187.62]
最後登入時間 :
2016-09-25 15:53:06
a005.
Eva 的回家作業
--
POJ
| From: [111.249.44.136] | 發表日期 : 2015-07-19 22:00
#include
#include
using namespace std;
int main(){
int a , b, c ,d;
while(cin>>a){
cin>>b;
cin>>c;
cin>>d;
if(pow(b,2)==a*c){
int s=b/a;
cout<
}else{
int t=b-a;
cout<
}
return 0;
}
最明顯少掉的是說明中的 "
第一行是數列的數目t(0 <= t <= 20)
"而測驗執行預設為2,也就是兩個數列,兩次,所以當輸入時,會先輸入"2"後面才是真正的數列開數,導致輸出總是先出現個"2"然後才是數列
int main()
{
int a,b,c,d,x;
//x代表輸入次數
while(x--)
{.......}
}
說明:上面的while(x--)意思是類似布林判斷,只要x的值不為0,就會一直循環 ,可以試著把while(X--)改成while(1),就會進入無限循環,改成while(0)就會直接跳出
還有cin>>b>>c>>d可以試著用陣列和for(比較乾淨俐落)
前面先定義陣列
int arr[4];
後面
for(int i=0;i<4;i++)
cout<<arr[i] ;
這樣改改看
ZeroJudge Forum