標題:
老師--對不起可以發問嗎?
[打印本頁]
作者:
謝瀞儀
時間:
2014-8-29 21:02
標題:
老師--對不起可以發問嗎?
本帖最後由 謝瀞儀 於 2014-8-29 21:10 編輯
我發現程式裡除了對話框已外都不能用[],是這樣嗎?如果可以,要怎樣才不會出錯?
這是我設計的程式,不曉得哪裡出錯?(此程式為參考費曼求平方的算法所寫出的程式)
#include <iostream>
#include <cstdlib>
using namespace std;
int main ()
{
int x,y;
cout<<"x=";
cin>>x;
cout<<"請輸入50~400之間50的倍數";
cin>>y;
if (y=50)
{
if(x>y)
{
cout<<"50*50+(("<<x<<"-50)*100)+("<<x<<"-50)("
<<x<<"-50)="
<<50*50+((x-50)*100)+(x-50)*(x-50)<<endl;
}
else if (x<y)
{
cout<<"50*50-[("<<x<<"-50)*100]+("<<x<<"-50)("
<<x<<"-50)="
<<50*50+((x-50)*100)+(x-50)*(x-50)<<endl;
}
else if(x=y)
{
cout<<"50*50="<<50*50<<endl;
}
}
else if (y=100)
{
if(x>y)
{
cout<<"100*100+[("<<x<<"-100)*100]+("<<x<<"-100)("
<<x<<"-100)="
<<100*100+((x-100)*100)+(x-100)*(x-100)<<endl;
}
else if (x<y)
{
cout<<"100*100-[("<<x<<"-100)*100]+("<<x<<"-100)("
<<x<<"-100)="
<<100*100+((x-100)*100)+(x-100)*(x-100)<<endl;
}
else if(x=y)
{
cout<<"100*100="<<100*100<<endl;
}
}
else if (y=150)
{
if(x>y)
{
cout<<"150*150+[("<<x<<"-150)*100]+("<<x<<"-150)("
<<x<<"-150)="
<<150*150+((x-150)*100)+(x-150)*(x-150)<<endl;
}
else if (x<y)
{
cout<<"150*150-[("<<x<<"-150)*100]+("<<x<<"-150)("
<<x<<"-150)="
<<150*150+((x-150)*100)+(x-150)*(x-150)<<endl;
}
else if(x=y)
{
cout<<"150*150="<<150*150<<endl;
}
else if (y=200)
{
if(x>y)
{
cout<<"200*200+[("<<x<<"-200)*100]+("<<x<<"-200)("
<<x<<"-200)="
<<200*200+((x-200)*100)+(x-200)*(x-200)<<endl;
}
else if (x<y)
{
cout<<"200*200-[("<<x<<"-200)*100]+("<<x<<"-200)("
<<x<<"-200)="
<<200*200+((x-200)*100)+(x-200)*(x-200)<<endl;
}
else if(x=y)
{
cout<<"200*200="<<200*200<<endl;
}
else if (y=250)
{
if(x>y)
{
cout<<"250*250+[("<<x<<"-250)*100]+("<<x<<"-250)("
<<x<<"-250)="
<<250*250+((x-250)*100)+(x-250)*(x-250)<<endl;
}
else if (x<y)
{
cout<<"250*250-[("<<x<<"-250)*100]+("<<x<<"-250)("
<<x<<"-250)="
<<250*250+((x-250)*100)+(x-250)*(x-250)<<endl;
}
else if(x=y)
{
cout<<"250*250="<<250*250<<endl;
}
else if (y=300)
{
if(x>y)
{
cout<<"300*300+[("<<x<<"-300)*100]+("<<x<<"-300)("
<<x<<"-300)="
<<300*300+((x-300)*100)+(x-300)*(x-300)<<endl;
}
else if (x<y)
{
cout<<"300*300-[("<<x<<"-300)*100]+("<<x<<"-300)("
<<x<<"-300)="
<<300*300+((x-300)*100)+(x-300)*(x-300)<<endl;
}
else if(x=y)
{
cout<<"300*300="<<300*300<<endl;
}
else if (y=350)
{
if(x>y)
{
cout<<"350*350+[("<<x<<"3500)*100]+("<<x<<"-350)("
<<x<<350+((x-350)*100)+(x-350)*(x-350)<<endl;
}
else if (x<y)
{
cout<<"350*350-[("<<x<<"-350)*100]+("<<x<<"-350)("
<<x<<"-350)="
<<350*350+((x-350)*100)+(x-350)*(x-350)<<endl;
}
else if(x=y)
{
cout<<"350*350="<<350*350<<endl;
}
else if (y=400)
{
if(x>y)
{
cout<<"400*400+[("<<x<<"-400)*100]+("<<x<<"-400)("
<<x<<"-400)="
<<400*400+((x-400)*100)+(x-400)*(x-400)<<endl;
}
else if (x<y)
{
cout<<"400*400-[("<<x<<"-400)*100]+("<<x<<"-400)("
<<x<<"-400)="
<<400*400+((x-400)*100)+(x-400)*(x-400)<<endl;
}
else if(x=y)
{
cout<<"400*400="<<400*400<<endl;
}
}
system("pause");
return 0;
}
複製代碼
還有我曾經試著寫過算梯形面積了公式,如果要朽出等腰或值繳梯形都能算的周長的程式,要怎麼寫?
作者:
ray
時間:
2014-11-29 23:35
1.上面的程式犯了三種錯誤:
(1)判斷式要用==而不是=
(2){一定要有相對應的},欠了一堆的},程式養成對齊的習慣就不會容易犯這錯誤
(3)有兩個全形空白在裡面。全行空白不等於空白!
作者:
ray
時間:
2014-11-29 23:35
修正後可以編譯的程式如下:(程式邏輯我沒有檢查!)
#include <iostream>
#include <cstdlib>
using namespace std;
int main ()
{
int x,y;
cout<<"x=";
cin>>x;
cout<<"請輸入50~400之間50的倍數";
cin>>y;
if(y==50)
{
if(x>y)
{
cout<<"50*50+(("<<x<<"-50)*100)+("<<x<<"-50)("
<<x<<"-50)="
<<50*50+((x-50)*100)+(x-50)*(x-50)<<endl;
}
else if (x<y)
{
cout<<"50*50-[("<<x<<"-50)*100]+("<<x<<"-50)("
<<x<<"-50)="
<<50*50+((x-50)*100)+(x-50)*(x-50)<<endl;
}
else if(x==y)
{
cout<<"50*50="<<50*50<<endl;
}
}
else if (y==100)
{
if(x>y)
{
cout<<"100*100+[("<<x<<"-100)*100]+("<<x<<"-100)("
<<x<<"-100)="
<<100*100+((x-100)*100)+(x-100)*(x-100)<<endl;
}
else if (x<y)
{
cout<<"100*100-[("<<x<<"-100)*100]+("<<x<<"-100)("
<<x<<"-100)="
<<100*100+((x-100)*100)+(x-100)*(x-100)<<endl;
}
else if(x==y)
{
cout<<"100*100="<<100*100<<endl;
}
}
else if (y==150)
{
if(x>y)
{
cout<<"150*150+[("<<x<<"-150)*100]+("<<x<<"-150)("
<<x<<"-150)="
<<150*150+((x-150)*100)+(x-150)*(x-150)<<endl;
}
else if (x<y)
{
cout<<"150*150-[("<<x<<"-150)*100]+("<<x<<"-150)("
<<x<<"-150)="
<<150*150+((x-150)*100)+(x-150)*(x-150)<<endl;
}
else if(x==y)
{
cout<<"150*150="<<150*150<<endl;
}
}
else if (y==200)
{
if(x>y)
{
cout<<"200*200+[("<<x<<"-200)*100]+("<<x<<"-200)("
<<x<<"-200)="
<<200*200+((x-200)*100)+(x-200)*(x-200)<<endl;
}
else if (x<y)
{
cout<<"200*200-[("<<x<<"-200)*100]+("<<x<<"-200)("
<<x<<"-200)="
<<200*200+((x-200)*100)+(x-200)*(x-200)<<endl;
}
else if(x==y)
{
cout<<"200*200="<<200*200<<endl;
}
}
else if (y==250)
{
if(x>y)
{
cout<<"250*250+[("<<x<<"-250)*100]+("<<x<<"-250)("
<<x<<"-250)="
<<250*250+((x-250)*100)+(x-250)*(x-250)<<endl;
}
else if (x<y)
{
cout<<"250*250-[("<<x<<"-250)*100]+("<<x<<"-250)("
<<x<<"-250)="
<<250*250+((x-250)*100)+(x-250)*(x-250)<<endl;
}
else if(x==y)
{
cout<<"250*250="<<250*250<<endl;
}
}
else if (y==300)
{
if(x>y)
{
cout<<"300*300+[("<<x<<"-300)*100]+("<<x<<"-300)("
<<x<<"-300)="
<<300*300+((x-300)*100)+(x-300)*(x-300)<<endl;
}
else if (x<y)
{
cout<<"300*300-[("<<x<<"-300)*100]+("<<x<<"-300)("
<<x<<"-300)="
<<300*300+((x-300)*100)+(x-300)*(x-300)<<endl;
}
else if(x==y)
{
cout<<"300*300="<<300*300<<endl;
}
}
else if (y==350)
{
if(x>y)
{
cout<<"350*350+[("<<x<<"3500)*100]+("<<x<<"-350)("
<<x<<350+((x-350)*100)+(x-350)*(x-350)<<endl;
}
else if (x<y)
{
cout<<"350*350-[("<<x<<"-350)*100]+("<<x<<"-350)("
<<x<<"-350)="
<<350*350+((x-350)*100)+(x-350)*(x-350)<<endl;
}
else if(x==y)
{
cout<<"350*350="<<350*350<<endl;
}
}
else if (y==400)
{
if(x>y)
{
cout<<"400*400+[("<<x<<"-400)*100]+("<<x<<"-400)("
<<x<<"-400)="
<<400*400+((x-400)*100)+(x-400)*(x-400)<<endl;
}
else if (x<y)
{
cout<<"400*400-[("<<x<<"-400)*100]+("<<x<<"-400)("<<x<<"-400)="<<400*400+((x-400)*100)+(x-400)*(x-400)<<endl;
}
else if(x==y)
{
cout<<"400*400="<<400*400<<endl;
}
}
system("pause");
return 0;
}
複製代碼
作者:
ray
時間:
2014-11-29 23:38
>>還有我曾經試著寫過算梯形面積了公式,如果要朽出等腰或值繳梯形都能算的周長的程式,要怎麼寫?
這種程是很簡單,難的只是公式,所以你應該要解決的是去找這數學公式出來~~如果沒有直接公式那你就用三角形公式搭配應該也不會太難!
歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/)
Powered by Discuz! 7.2