ส่งการบ้านครั้งที่ 6

โปรแกรมที่ 5.3


using System;

namespace Calculatelnterst{

    class Program {
        static void Main(){
            Console.Write("Enter principal: ");
            string sPrincipal = Console.ReadLine();
            decimal mPrincipal = Convert.ToDecimal(sPrincipal);
            if (mPrincipal < 0)
            {
                Console.WriteLine("Principal cannot be negative");
                mPrincipal = 0;
            }
            Console.Write("Enter interest");
            string slnterest = Console.ReadLine();
            decimal mlnterest = Convert.ToDecimal(slnterest);
            if (mPrincipal < 0)
            {
                Console.WriteLine("Principal cannot be negative");
                mPrincipal = 0;
            }
            decimal mlnterestPaid;
            mlnterestPaid = mPrincipal * (mlnterest / 100);
            decimal mTotal = mPrincipal + mlnterestPaid;
            Console.WriteLine();
            Console.WriteLine("Principal   =  "  +  mPrincipal);
            Console.WriteLine("Interest  = " + mlnterest + "%");
            Console.WriteLine();
            Console.WriteLine("lnterest paid = " + mlnterestPaid);
            Console.WriteLine("Total         = " + mTotal);
            Console.WriteLine("Press Enter to terminate...");
            Console.Read();
        }
    }
}




โปรแกรมที่ 5.13

using System;

namespace CalculatelnterestTableMoreForgiving {
    class Program {
        static void Main(string[] args) {
            int nMaximumlnterest = 50;             //กำหนดค่าดอกเบี้ยสูงสุด
            decimal mPrincipal;
            while (true)                           //วนลูปปรับเงินต้นที่มีค่าเป็นบวก
            {
                Console.WriteLine("Enter principal : ");
                string sPrincipal = Console.ReadLine();
                mPrincipal = Convert.ToDecimal(sPrincipal);
                if (mPrincipal >= 0)
                {
                    break;                       //ถ้าหากมีค่าเป็นบวกออกมาจากวนลูป
                }
                Console.WriteLine("Principal cannot be negatine");
                Console.WriteLine("Try agian");
                Console.WriteLine();
            }
            decimal mlnterest;
            while (true)    //วนลูปปรับอัตราดอกเบี้ยที่มีค่าเป็นบวกและไม่เกินค่าสูงสุด
            {
                Console.Write("Enter interest");
                string slnterest = Console.ReadLine();
                mlnterest = Convert.ToDecimal(slnterest);
                if (mlnterest > 0 && mlnterest <= nMaximumlnterest)
                {
                    break; //ถ้าหากมีค่าเป็นบวกและน้อยกว่าค่าสูงสุดจะออกจากลูป
                }
                Console.WriteLine("lnterest cannot be negative" +
                              "or greater than " + nMaximumlnterest);
                Console.WriteLine("Try again");
                Console.WriteLine();
            }
            Console.Write("Enter number of year: ");
            string sDuration = Console.ReadLine();
            int nDuration = Convert.ToInt32(sDuration);
            Console.WriteLine();
            Console.WriteLine("Principal  = " + mPrincipal);
            Console.WriteLine("lnterest  = " + mlnterest + "%");
            Console.WriteLine("Duration  = " + nDuration + "year");
            Console.WriteLine();
            int nYear = 1;
            while (nYear <= nDuration)
            {
                decimal mlnterestPaid;
                mlnterestPaid = mPrincipal * (mlnterest / 100);
                mPrincipal = mPrincipal + mlnterestPaid;
                mPrincipal = decimal.Round(mPrincipal, 2);
                Console.WriteLine(nYear + " - " + mPrincipal);
                nYear = nYear + 1;
            }
            Console.WriteLine("Prees Enter to terminate...");
            Console.Read();
        }
    }
}



โปรแกรมที่ 7.7

using System;
namespace studentname{
    class Student{
        private int idNumber;                  //ตัวแปรเก็บรหัสประจำตัว
        private string lastName;               //ตัวแปรเก็บชื่อ
        private double gradePointAverage;      //ตัวแปรเก็บเกรดเฉลี่ย
        public int getld()
        {                   //เมธอดอ่านรหัสประจำตัว
            return idNumber;
        }
        public string getName()
        {              //เมธอดสำหรับอ่านชื่อ
            return lastName;
        }
        public double getGPA()
        {               //เมธอดสำหรับอ่านเกรดเฉลี่ย
            return gradePointAverage;
        }
        public void setld(int id)
        {           //เมธอดสำหรับกำหนดรหัสประจำตัว
            idNumber = id;
        }
        public void setName(string name)
        {    //เมธอดสำหรับกำหนอชื่อให้กับออบเจ็กต์
            lastName = name;
        }
        public void setGPA(double gpa)
        {      //เมธอดสำหรับกำหนดเกรดเฉลี่ย
            gradePointAverage = gpa;
        }
    }
    class Program{
        static void Main() {
            Student st = new Student();      //สร้างออบเจ็กต์ใหม่โดยให้ st เป็นตัวอ้างอิง
            st.setld(9353);                  //กำหนดรหัสประจำตัวให้กับออบเจ็กต์
            st.setName("Teerawat");          //กำหนดชื่อให้กับออบเจ็กต์
            st.setGPA(3.98);
            Console.WriteLine("Student name {0} has ID # {1} and gpa of{2}",
                st.getName(), st.getld(), st.getGPA());
            Console.ReadLine();
        }
    }
}





 โปรแกรมที่ 8.6

using System;
using System.Windows.Forms;
namespace UsePredefineMethods{
    static class Program{
        static void Main(){
            double[] waterDepth = { 45, 19, 2, 16.8, 190, 0.8, 510, 6, 18 }; //ค่าเริ่มต้นอาร์เรย์
            string outputMsg = "";
            string caption = "System.Array Methods lllustrated";
            double[] w = new double[20];                //สร้างอาร์เรย์ว่าง 20 เซล

            outputMsg += "waterDepth Arry\n\n";
            foreach (double wVal in waterDepth)
                outputMsg += wVal + "\n";             //วนลูปแสดงค่าในอาร์เรย์
            MessageBox.Show(outputMsg, caption);
            //คัดลอกอาร์เรย์ waterDepth ตั้งแต่เซล 2 มาใส่อาร์เรย์ w จำนวน 5 เซล
            Array.Copy(waterDepth, 2, w, 0, 5);
            Array.Sort(w);                           //เรียงข้อมูลในอาร์เรย์ w
            outputMsg = "Array w Sorted\n\n";
            foreach (double wVal in w)
            {
                if (wVal > 0)
                    outputMsg += wVal + "\n";        //แสดงข้อมูลในอาร์เรย์ w

            }
            MessageBox.Show(outputMsg, caption);
            Array.Reverse(w);                  //กลับค่าอาร์เรย์ w จากหลังมาหน้า
            outputMsg = "Array w Reversed\n\n";
            foreach (double wVal in w)
            {
                if (wVal > 0)
                    outputMsg += wVal + "\n";       //แสดงค่าในอาร์เรย์
            }
            Message.Show(outputMsg, caption);
        }
    }
}