Board logo

標題: C# 7 210 捕捉錯誤 [打印本頁]

作者: may    時間: 2024-1-8 22:01     標題: C# 7 210 捕捉錯誤

TQC+ 物件導向程式語言
最新一次更新時間:2024-01-05 14:44:22

1. 題目說明:
請新增一個主控台應用程式,加入C:\ANS.CSF\CS02資料夾中的CSD02.cs進行編寫。依下列題意進行作答:改寫程式,使程序可以在錯誤時進行例外處理,使輸出值符合題意要求。檔案名稱請另存新檔為CSA02.cs,儲存於C:\ANS.CSF\CS02資料夾,再進行評分。

2. 設計說明:
Div類別的division方法,是執行兩個參數相除,由Main()方法提供兩個參數,參數1為被除數,預設為25;參數2為除數,由使用者輸入一個小於等於25的數字。
請修改「division」程式,使用try…catch…finally結構,在除數為0時,嘗試將整數除以零時所擲出的例外狀況輸出【errorivideByZeroException】;若除數輸入正確數字,同樣輸出兩個參數相除的計算結果。
* 提示:相除計算方式採用整數除法,如25 / 8 = 3,不考慮餘數。
若輸入文字或小數點,請輸出【error】。
3. 輸入輸出:
輸入說明
除數

輸出說明
相除結果或錯誤說明(輸出最後一行後不自動換行)

範例輸入1
0
範例輸出1
errorivideByZeroException

範例輸入2
5
範例輸出2
5

範例輸入3
cat
範例輸出3
error

4. 評分項目:
(1) 符合設計說明輸出正確格式配分        10
作者: may    時間: 2024-1-8 23:21

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;

  6. namespace CSA02
  7. {

  8.     class Div
  9.     {
  10.         int result;
  11.         Div()
  12.         {
  13.             result = 0;
  14.         }
  15.         public void division(int num1, int num2)
  16.         {
  17.             try
  18.             {
  19.                 result = num1 / num2;
  20.                 Console.Write(result);
  21.             }
  22.             catch (DivideByZeroException)
  23.             {
  24.                 Console.Write("error:DivideByZeroException");
  25.             }
  26.         }
  27.         static void Main(string[] args)
  28.         {
  29.             Div d = new Div();
  30.             try
  31.             {
  32.                 int n = Convert.ToInt32(Console.ReadLine());
  33.                 if (n <= 25)
  34.                 {
  35.                     d.division(25, n);
  36.                 }
  37.             }
  38.             catch
  39.             {
  40.                 Console.Write("error");
  41.             }
  42.             Console.ReadKey();
  43.         }
  44.     }
  45. }
複製代碼

作者: 李泳霖    時間: 2024-1-29 22:03

  1. class Div
  2. {
  3.     int result;
  4.     Div()
  5.     {
  6.         result = 0;
  7.     }
  8.     public void division(int num1,int num2)
  9.     {
  10.         try
  11.         {
  12.             result = num1 / num2;
  13.             Console.WriteLine(result);

  14.         }catch(DivideByZeroException)
  15.         {
  16.             Console.WriteLine("error:DivideByZeroException");
  17.         }
  18.     }
  19.     static void Main()
  20.     {
  21.         Div div = new Div();
  22.         try
  23.         {
  24.             int n=Convert.ToInt32 (Console.ReadLine());
  25.             if(n<=25)
  26.             {
  27.                 div.division(25, n);
  28.             }
  29.         }
  30.         catch
  31.         {
  32.             Console.WriteLine("error");
  33.         }
  34.     }
  35. }
複製代碼





歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://seed.istak.org.tw/) Powered by Discuz! 7.2