C#編寫一個控制台應用程序,輸入正方形邊長或者半徑,計算其周長和面積並輸出


編寫一個控制台應用程序,輸入正方形邊長或者半徑,計算其周長和面積並輸出

(1) 編寫兩個接口,接口 IShape 包含三個方法:initialize, getPerimeter, getArea。分別進行初始化、獲取邊長和面積,其返回值均為 decimal。接口 IDisplayresult 顯示計算結果。

(2) 編寫兩個類,Square(正方形)和 Circle(圓形),實現 IShape 和 IDisplayresult接口。

代碼:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Lab06_2
{
    public interface Ishape {
        void initialize();
        decimal getPerimeter();
        decimal getArea();
    }
    public interface IDisplayresult {
        void showResult();
        
    }
    public class Square:Ishape,IDisplayresult{
        decimal l;
        public void initialize() {      
            Console.WriteLine("請輸入正方形邊長:");
            do
            {
                l = decimal.Parse(Console.ReadLine());
                if (l <= 0)
                {
                    Console.WriteLine("輸入數據錯誤,請重新輸入:");
                }
            } while (l <= 0);
        }
        public decimal getPerimeter()
        {
            return 4*l;
        }
        public decimal getArea()
        {
            return l*l;
        }
        public void showResult()
        {
            Console.WriteLine("該正方體的周長:{0}",getPerimeter());
            Console.WriteLine("該正方體的面積:{0}", getArea());
        }
    }
    public class Circle : Ishape, IDisplayresult
    {
        static decimal pi = 3.14M;
        decimal r;
        public void initialize()
        {
            Console.WriteLine("請輸入圓形的半徑:");
            do
            {
                r = decimal.Parse(Console.ReadLine());
                if (r <= 0)
                {
                    Console.WriteLine("輸入數據錯誤,請重新輸入:");
                }
            } while (r <= 0);
        }
        public decimal getPerimeter()
        {
            return 2*r*pi;
        }
        public decimal getArea()
        {
            return pi * r * r;
        }
        public void showResult()
        {
            Console.WriteLine("該圓形的周長:{0}", getPerimeter());
            Console.WriteLine("該圓形的面積:{0}", getArea());
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            int i;
            Square sq=new Square();
            Circle cr=new Circle();  
            do
            {
                Console.WriteLine("請選擇 1:正方形  2:圓形  3:退出");
                i = int.Parse(Console.ReadLine());
                switch (i)
                {
                    case 1: sq.initialize(); sq.showResult(); break;
                    case 2: cr.initialize(); cr.showResult(); break;
                    case 3: Console.WriteLine("感謝您的使用!!!"); break;
                    default: Console.WriteLine("輸入數據錯誤,請重新輸入:"); break;
                }
                Console.Write("\n請按任意鍵繼續...");
                Console.ReadKey();
                Console.Clear();
            } while (i !=3);
            
        }
    }
}

運行結果:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM