返回列表 發帖

老師--對不起可以發問嗎?

本帖最後由 謝瀞儀 於 2014-8-29 21:10 編輯

我發現程式裡除了對話框已外都不能用[],是這樣嗎?如果可以,要怎樣才不會出錯?

這是我設計的程式,不曉得哪裡出錯?(此程式為參考費曼求平方的算法所寫出的程式)
  1. #include <iostream>
  2. #include <cstdlib>
  3. using namespace std;
  4. int main ()
  5. {
  6.     int x,y;
  7.     cout<<"x=";
  8.     cin>>x;
  9.     cout<<"請輸入50~400之間50的倍數";
  10.     cin>>y;
  11.    
  12.     if (y=50)
  13.     {
  14.       if(x>y)
  15.       {
  16.       cout<<"50*50+(("<<x<<"-50)*100)+("<<x<<"-50)("
  17.           <<x<<"-50)="
  18.           <<50*50+((x-50)*100)+(x-50)*(x-50)<<endl;
  19.       }
  20.       else if (x<y)
  21.       {
  22.       cout<<"50*50-[("<<x<<"-50)*100]+("<<x<<"-50)("
  23.           <<x<<"-50)="
  24.           <<50*50+((x-50)*100)+(x-50)*(x-50)<<endl;
  25.       }
  26.       else if(x=y)
  27.       {
  28.       cout<<"50*50="<<50*50<<endl;
  29.       }
  30.     }
  31.     else if (y=100)
  32.     {
  33.       if(x>y)
  34.       {
  35.       cout<<"100*100+[("<<x<<"-100)*100]+("<<x<<"-100)("
  36.           <<x<<"-100)="
  37.           <<100*100+((x-100)*100)+(x-100)*(x-100)<<endl;
  38.       }
  39.       else if (x<y)
  40.       {
  41.       cout<<"100*100-[("<<x<<"-100)*100]+("<<x<<"-100)("
  42.           <<x<<"-100)="
  43.           <<100*100+((x-100)*100)+(x-100)*(x-100)<<endl;
  44.       }
  45.       else if(x=y)
  46.       {
  47.       cout<<"100*100="<<100*100<<endl;
  48.       }
  49.     }
  50.     else if (y=150)
  51.     {
  52.       if(x>y)
  53.       {
  54.       cout<<"150*150+[("<<x<<"-150)*100]+("<<x<<"-150)("
  55.           <<x<<"-150)="
  56.           <<150*150+((x-150)*100)+(x-150)*(x-150)<<endl;
  57.       }
  58.       else if (x<y)
  59.       {
  60.       cout<<"150*150-[("<<x<<"-150)*100]+("<<x<<"-150)("
  61.           <<x<<"-150)="
  62.           <<150*150+((x-150)*100)+(x-150)*(x-150)<<endl;
  63.       }
  64.       else if(x=y)
  65.       {
  66.       cout<<"150*150="<<150*150<<endl;
  67.       } 
  68.     else if (y=200)
  69.     {
  70.       if(x>y)
  71.       {
  72.       cout<<"200*200+[("<<x<<"-200)*100]+("<<x<<"-200)("
  73.           <<x<<"-200)="
  74.           <<200*200+((x-200)*100)+(x-200)*(x-200)<<endl;
  75.       }
  76.       else if (x<y)
  77.       {
  78.       cout<<"200*200-[("<<x<<"-200)*100]+("<<x<<"-200)("
  79.           <<x<<"-200)="
  80.           <<200*200+((x-200)*100)+(x-200)*(x-200)<<endl;
  81.       }
  82.       else if(x=y)
  83.       {
  84.       cout<<"200*200="<<200*200<<endl;
  85.       }
  86.       else if (y=250)
  87.     {
  88.       if(x>y)
  89.       {
  90.       cout<<"250*250+[("<<x<<"-250)*100]+("<<x<<"-250)("
  91.           <<x<<"-250)="
  92.           <<250*250+((x-250)*100)+(x-250)*(x-250)<<endl;
  93.       }
  94.       else if (x<y)
  95.       {
  96.       cout<<"250*250-[("<<x<<"-250)*100]+("<<x<<"-250)("
  97.           <<x<<"-250)="
  98.           <<250*250+((x-250)*100)+(x-250)*(x-250)<<endl;
  99.       }
  100.       else if(x=y)
  101.       {
  102.       cout<<"250*250="<<250*250<<endl;
  103.       }
  104.       else if (y=300)
  105.     {
  106.       if(x>y)
  107.       {
  108.       cout<<"300*300+[("<<x<<"-300)*100]+("<<x<<"-300)("
  109.           <<x<<"-300)="
  110.           <<300*300+((x-300)*100)+(x-300)*(x-300)<<endl;
  111.       }
  112.       else if (x<y)
  113.       {
  114.       cout<<"300*300-[("<<x<<"-300)*100]+("<<x<<"-300)("
  115.           <<x<<"-300)="
  116.           <<300*300+((x-300)*100)+(x-300)*(x-300)<<endl;
  117.       }
  118.       else if(x=y)
  119.       {
  120.       cout<<"300*300="<<300*300<<endl;
  121.       }
  122.       else if (y=350)
  123.     {
  124.       if(x>y)
  125.       {
  126.       cout<<"350*350+[("<<x<<"3500)*100]+("<<x<<"-350)("
  127.           <<x<<350+((x-350)*100)+(x-350)*(x-350)<<endl;
  128.       }
  129.       else if (x<y)
  130.       {
  131.       cout<<"350*350-[("<<x<<"-350)*100]+("<<x<<"-350)("
  132.           <<x<<"-350)="
  133.           <<350*350+((x-350)*100)+(x-350)*(x-350)<<endl;
  134.       }
  135.       else if(x=y)
  136.       {
  137.       cout<<"350*350="<<350*350<<endl;
  138.       }
  139.       else if (y=400)
  140.     {
  141.       if(x>y)
  142.       {
  143.       cout<<"400*400+[("<<x<<"-400)*100]+("<<x<<"-400)("
  144.           <<x<<"-400)="
  145.           <<400*400+((x-400)*100)+(x-400)*(x-400)<<endl;
  146.       }
  147.       else if (x<y)
  148.       {
  149.       cout<<"400*400-[("<<x<<"-400)*100]+("<<x<<"-400)("
  150.           <<x<<"-400)="
  151.           <<400*400+((x-400)*100)+(x-400)*(x-400)<<endl;
  152.       }
  153.       else if(x=y)
  154.       {
  155.       cout<<"400*400="<<400*400<<endl;
  156.       }
  157.     } 
  158.     system("pause");
  159.     return 0;
  160. }
複製代碼
還有我曾經試著寫過算梯形面積了公式,如果要朽出等腰或值繳梯形都能算的周長的程式,要怎麼寫?

1.上面的程式犯了三種錯誤:
  (1)判斷式要用==而不是=
  (2){一定要有相對應的},欠了一堆的},程式養成對齊的習慣就不會容易犯這錯誤
  (3)有兩個全形空白在裡面。全行空白不等於空白!

TOP

修正後可以編譯的程式如下:(程式邏輯我沒有檢查!)
  1. #include <iostream>
  2. #include <cstdlib>
  3. using namespace std;
  4. int main ()
  5. {
  6.     int x,y;
  7.     cout<<"x=";
  8.     cin>>x;
  9.     cout<<"請輸入50~400之間50的倍數";
  10.     cin>>y;
  11.    
  12.     if(y==50)
  13.     {
  14.       if(x>y)
  15.       {
  16.       cout<<"50*50+(("<<x<<"-50)*100)+("<<x<<"-50)("
  17.           <<x<<"-50)="
  18.           <<50*50+((x-50)*100)+(x-50)*(x-50)<<endl;
  19.       }
  20.       else if (x<y)
  21.       {
  22.       cout<<"50*50-[("<<x<<"-50)*100]+("<<x<<"-50)("
  23.           <<x<<"-50)="
  24.           <<50*50+((x-50)*100)+(x-50)*(x-50)<<endl;
  25.       }
  26.       else if(x==y)
  27.       {
  28.       cout<<"50*50="<<50*50<<endl;
  29.       }
  30.     }
  31.     else if (y==100)
  32.     {
  33.       if(x>y)
  34.       {
  35.           cout<<"100*100+[("<<x<<"-100)*100]+("<<x<<"-100)("
  36.           <<x<<"-100)="
  37.           <<100*100+((x-100)*100)+(x-100)*(x-100)<<endl;
  38.       }
  39.       else if (x<y)
  40.       {
  41.           cout<<"100*100-[("<<x<<"-100)*100]+("<<x<<"-100)("
  42.           <<x<<"-100)="
  43.           <<100*100+((x-100)*100)+(x-100)*(x-100)<<endl;
  44.       }
  45.       else if(x==y)
  46.       {
  47.           cout<<"100*100="<<100*100<<endl;
  48.       }
  49.     }
  50.     else if (y==150)
  51.     {
  52.       if(x>y)
  53.       {
  54.           cout<<"150*150+[("<<x<<"-150)*100]+("<<x<<"-150)("
  55.           <<x<<"-150)="
  56.           <<150*150+((x-150)*100)+(x-150)*(x-150)<<endl;
  57.       }
  58.       else if (x<y)
  59.       {
  60.       cout<<"150*150-[("<<x<<"-150)*100]+("<<x<<"-150)("
  61.           <<x<<"-150)="
  62.           <<150*150+((x-150)*100)+(x-150)*(x-150)<<endl;
  63.       }
  64.       else if(x==y)
  65.       {
  66.       cout<<"150*150="<<150*150<<endl;
  67.       }
  68.     }
  69.     else if (y==200)
  70.     {
  71.       if(x>y)
  72.       {
  73.       cout<<"200*200+[("<<x<<"-200)*100]+("<<x<<"-200)("
  74.           <<x<<"-200)="
  75.           <<200*200+((x-200)*100)+(x-200)*(x-200)<<endl;
  76.       }
  77.       else if (x<y)
  78.       {
  79.       cout<<"200*200-[("<<x<<"-200)*100]+("<<x<<"-200)("
  80.           <<x<<"-200)="
  81.           <<200*200+((x-200)*100)+(x-200)*(x-200)<<endl;
  82.       }
  83.       else if(x==y)
  84.       {
  85.       cout<<"200*200="<<200*200<<endl;
  86.       }
  87.     }
  88.     else if (y==250)
  89.     {
  90.       if(x>y)
  91.       {
  92.       cout<<"250*250+[("<<x<<"-250)*100]+("<<x<<"-250)("
  93.           <<x<<"-250)="
  94.           <<250*250+((x-250)*100)+(x-250)*(x-250)<<endl;
  95.       }
  96.       else if (x<y)
  97.       {
  98.       cout<<"250*250-[("<<x<<"-250)*100]+("<<x<<"-250)("
  99.           <<x<<"-250)="
  100.           <<250*250+((x-250)*100)+(x-250)*(x-250)<<endl;
  101.       }
  102.       else if(x==y)
  103.       {
  104.       cout<<"250*250="<<250*250<<endl;
  105.       }
  106.     }
  107.     else if (y==300)
  108.     {
  109.       if(x>y)
  110.       {
  111.       cout<<"300*300+[("<<x<<"-300)*100]+("<<x<<"-300)("
  112.           <<x<<"-300)="
  113.           <<300*300+((x-300)*100)+(x-300)*(x-300)<<endl;
  114.       }
  115.       else if (x<y)
  116.       {
  117.       cout<<"300*300-[("<<x<<"-300)*100]+("<<x<<"-300)("
  118.           <<x<<"-300)="
  119.           <<300*300+((x-300)*100)+(x-300)*(x-300)<<endl;
  120.       }
  121.       else if(x==y)
  122.       {
  123.       cout<<"300*300="<<300*300<<endl;
  124.       }
  125.     }
  126.     else if (y==350)
  127.     {
  128.       if(x>y)
  129.       {
  130.       cout<<"350*350+[("<<x<<"3500)*100]+("<<x<<"-350)("
  131.           <<x<<350+((x-350)*100)+(x-350)*(x-350)<<endl;
  132.       }
  133.       else if (x<y)
  134.       {
  135.       cout<<"350*350-[("<<x<<"-350)*100]+("<<x<<"-350)("
  136.           <<x<<"-350)="
  137.           <<350*350+((x-350)*100)+(x-350)*(x-350)<<endl;
  138.       }
  139.       else if(x==y)
  140.       {
  141.       cout<<"350*350="<<350*350<<endl;
  142.       }
  143.     }
  144.     else if (y==400)
  145.     {
  146.       if(x>y)
  147.       {
  148.       cout<<"400*400+[("<<x<<"-400)*100]+("<<x<<"-400)("
  149.           <<x<<"-400)="
  150.           <<400*400+((x-400)*100)+(x-400)*(x-400)<<endl;
  151.       }
  152.       else if (x<y)
  153.       {
  154.       cout<<"400*400-[("<<x<<"-400)*100]+("<<x<<"-400)("<<x<<"-400)="<<400*400+((x-400)*100)+(x-400)*(x-400)<<endl;
  155.       }
  156.       else if(x==y)
  157.       {
  158.       cout<<"400*400="<<400*400<<endl;
  159.       }
  160.     }
  161.     system("pause");
  162.     return 0;
  163. }
複製代碼

TOP

>>還有我曾經試著寫過算梯形面積了公式,如果要朽出等腰或值繳梯形都能算的周長的程式,要怎麼寫?

這種程是很簡單,難的只是公式,所以你應該要解決的是去找這數學公式出來~~如果沒有直接公式那你就用三角形公式搭配應該也不會太難!

TOP

返回列表