วันศุกร์ที่ 6 กันยายน พ.ศ. 2556

ใบความรู้ 3 การเขียนโปรแกรมด้วยภาษา C#

ฟังก์ชันทางคณิตศาสตร์

          นอกเหนือจากตัวดำเนินการทางคณิตศาสตร์ (+ - * / ฯลฯ) ภาษา C# ได้เตรียมคลาส Math ที่รวบรวมเมท็อด1 และค่าคงที่ทางคณิตศาสตร์ที่สำคัญเอาไว้ใช้งาน ตารางด้านล่างแสดงตัวอย่างของฟังก์ชันและค่าคงที่ที่เราสามารถเรียกใช้งานได้ผ่านคลาส Math คลาสนี้ถูกจัดไว้ภายใต้เนมสเปส System เช่นเดียวกันกับคลาส Console


คำสั่งสำหรับรับข้อมูลจากผู้ใช้

            โปรแกรมที่ใช้งานได้โดยทั่ว ๆ ไป นอกจากจะต้องมีการแสดงผลลัพธ์ออกทางหน้าจอแล้วยังควรต้องมีการรับข้อมูลจากผู้ใช้เข้ามาประมวลผลได้ด้วย ภาษา C# ได้เตรียมวิธีการติดต่อกับผู้ใช้ได้หลายวิธี แต่วิธีหลักที่เราจะใช้ในการอบรมนี้นี้จะเป็นการเรียกใช้เมท็อด Console.ReadLine การเรียกใช้งานเมท็อดนี้จะอยู่ในรูปของนิพจน์ที่ให้ค่าเป็นข้อความ (สตริง) ดังนั้นจึงสามารถนำค่าไปใส่ให้กับตัวแปรแบบสตริงหรือนำไปใช้ผสมกับนิพจน์อื่น ๆ ที่เกี่ยวข้องกับสตริงได้

ตัวอย่างที่ 2.1 โปรแกรมด้านล่างจะถามชื่อจากผู้ใช้ และกล่าวคำทักทายตามชื่อนั้น ๆ
using System;
class SayHello
{
   static void Main()
   {
      string name;
      Console.Write("What is your name? ");
      name = Console.ReadLine();
      Console.WriteLine("Hello {0}, how are you?", name);
      Console.ReadLine();
   }
}

            นอกจากการรับข้อมูลแบบข้อความแล้วโปรแกรมส่วนใหญ่ยังต้องการรับข้อมูลที่เป็นตัวเลขเพื่อ
นำมาคำนวณอีกด้วย อย่างไรก็ตาม ภาษา C# ไม่มีคำสั่งที่รับข้อมูลชนิดตัวเลขโดยตรง แต่ได้เตรียมเมท็อด Parse สำหรับแต่ละชนิดข้อมูลแบบตัวเลขเพื่อแปลงข้อมูลชนิดข้อความให้เป็นชนิดตัวเลขได้ การใช้งานเมท็อด Parse เป็นดังนี้
<numeric_datatype>.Parse(<string_expression>)

        การใช้งานเมท็อด Parse จะอยู่ในรูปของนิพจน์ที่ให้ชนิดข้อมูลตามที่ระบุไว้ใน <numeric_datatype> โดยมีค่าสอดคล้องกับค่าที่ระบุในนิพจน์ <string_expression> ดังนั้นค่าจากเมท็อด Parse อาจนำไปกำหนดให้ตัวแปรโดยตรงหรือนำไปผสมกับนิพจน์อื่น ๆ เพื่อสร้างเป็นนิพจน์ใหม่ก็ได้

ตัวอย่างที่ 2.2 เขียนโปรแกรมเพื่ออ่านเวคเตอร์แบบสองมิติ (x,y) จากผู้ใช้แล้วคำนวณขนาดของเวคเตอร์ และแสดงผลลัพธ์ออกทางหน้าจอโดยมีทศนิยมสองตำแหน่ง (ใช้ตัวกำหนดรูปแบบ {2:f2} แทนที่จะเป็น {2} เพียงอย่างเดียว)
using System;
class Vector2D
{
   static void Main()
   {
      double x, y, size;
      Console.Write("Enter x: ");
      x = double.Parse(Console.ReadLine());
      Console.Write("Enter y: ");
      y = double.Parse(Console.ReadLine());
      size = Math.Sqrt(x*x + y*y);
      Console.WriteLine("Size of the vector ({0},{1}) is {2:f2}.",
         x, y, size);
      Console.ReadLine();
   }
}

ไม่มีความคิดเห็น:

แสดงความคิดเห็น