国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

定義類及輸出型參數求100~200之間的奇數和與偶數和

2023-05-02 19:48:19
字體:
來源:轉載
供稿:網友

在本站曾經有兩篇文中分別實現在主方法中直接求1~50之間的奇數和與偶數和以及在某個類中定義方法來計算并輸出。

本文在此基礎上繼續探討在類中定義帶輸出型參數的方法來解決本題。具體思路如下:

(1)在類EvenOdd中定義循環的開始值和結束值;

(2)在類的構造方法中由鍵盤輸入開始值及結束值,如果輸入有誤,則提示輸入錯誤,則自動進入下一輪輸入,循環直到兩個數輸入正確為止;

(3)在類中定義求奇數和與偶數和的方法EvenOddSum,其帶有兩個輸出型參數even和odd,用于分別帶出其偶數和與奇數和;

(4)在測試類Test中定義主方法,定義類EvenOdd的實例和兩個整型變量,用于接收EvenOddSum帶出的兩個值,并將其輸出。

從以上敘述中可知,此方法具有通用性,可以求任何區間之間的奇數和與偶數和。

此方法中仍有需要探討的地方,如輸入的結束值比開始值小的情況,此程序處理起來會出現問題。

本案例源代碼如下

using System;

namespace EvenOdd2
{
    class EvenOdd
    {
        int begin; //開始值
        int over; //結束值
        bool isRight; //輸入正確與否
        public EvenOdd()
        {
            isRight = false;
            while(!isRight) //循環輸入,當輸入正確時退出循環
            {
                try
                {
                    Console.WriteLine("請輸入第一個數:");
                    begin = int.Parse(Console.ReadLine());
                    Console.WriteLine("請輸入第二個數:");
                    over = int.Parse(Console.ReadLine());
                    isRight = true;
                }
                catch
                {
                    Console.WriteLine("數據格式錯誤,請重新輸入!");
                    isRight = false;
                }
            }
        }
        /// <summary>
        /// 求出偶數和奇數之和
        /// </summary>
        /// <param name="even">輸出型參數,保存偶數之和</param>
        /// <param name="odd">輸出性參數,保存奇數之和</param>

        public void EvenOddSum(out int even,out int odd)
        {
            even = 0;
            odd = 0;
            for(int i = begin;i<=over;i++)
            {
                if(i%2==0)
                    even += i;
                else
                    odd += i;
            }
        }
        /// <summary>
        /// 返回開始值
        /// </summary>
        /// <returns>開始值</returns>

        public int RetBegin()
        {
            return begin;
        }
        /// <summary>
        /// 返回結束值
        /// </summary>
        /// <returns>結束值</returns>

        public int RetOver()
        {
            return over;
        }
    }
    class Test
    {
        /// <summary>
        /// 應用程序的主入口點。
        /// </summary>

        static void Main(string[] args)
        {
            int evenSum,oddSum;
            EvenOdd eo = new EvenOdd();
            eo.EvenOddSum(out evenSum,out oddSum);
            Console.WriteLine("{0}~{1}之間的偶數之和為:{2},奇數之和為:
               {3}",eo.RetBegin(),eo.RetOver(),evenSum,oddSum);
        }
    }
}

運行結果為:

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 甘洛县| 泸水县| 凤冈县| 哈尔滨市| 普格县| 铁力市| 苍山县| 乌苏市| 陇西县| 沙洋县| 镇平县| 平塘县| 阿瓦提县| 东辽县| 云梦县| 灵丘县| 铁岭县| 阿坝| 潞城市| 安丘市| 张北县| 延长县| 桃源县| 富裕县| 吴川市| 新龙县| 连南| 鄱阳县| 郴州市| 石台县| 高邮市| 南汇区| 蓬莱市| 伊川县| 抚远县| 安顺市| 清原| 山阴县| 龙江县| 宁河县| 朝阳市|