วันพุธที่ 21 สิงหาคม พ.ศ. 2556

ใบความรู้ที่ 6.2 การหาขนาดของอาร์เรย์

ใบความรู้ที่ 6.2
การหาขนาดของอาร์เรย์

           บ่อยครั้งที่เราอาจต้องเปลี่ยนแปลงขนาดของอาเรย์ภายในโปรแกรมที่เราได้เขียนขึ้นมาเรียบร้อย
แล้วหากเราต้องการเพิ่มเติมความสามารถของโปรแกรมให้ประมวลผลข้อมูลมากขึ้น หรือด้วยสาเหตุอื่นใด
ก็ตาม หากเราลองพิจารณาโปรแกรมในใบงานที่ 6.1 จะเห็นว่าการดัดแปลงโปรแกรมให้ทำงานกับอาเรย์ที่มีขนาดต่างไปจากเดิมนั้น เราไม่สามารถทำเพียงแค่เปลี่ยนคำสั่งในการสร้างอาเรย์เท่านั้น เรายังต้องเปลี่ยนเงื่อนไขในโครงสร้าง for เพื่อให้การวนซ้ำมีจำนวนรอบที่สอดคล้องกับจำนวนข้อมูลในอาเรย์อีกด้วย แม้จะเป็นการง่ายที่จะดัดแปลงโปรแกรมในลักษณะดังกล่าว ความผิดพลาดสามารถเกิดขึ้นได้ง่ายในโปรแกรมที่ยาวและซับซ้อนมากยิ่งขึ้นโดยเฉพาะอย่างยิ่งโปรแกรมที่มีการใช้งานอาเรย์มากกว่าหนึ่ง และการใช้งานอาเรย์ร่วมกับเมท็อดที่เขียนขึ้นมาเพื่อประมวลผลอาเรย์ที่มีขนาดใดๆ ปัญหาเหล่านี้สามารถแก้ได้โดยใช้คำสั่งอ่านค่าคุณสมบัติ (property) ของอาเรย์ที่มีให้อยู่แล้วในภาษา C# โดยคุณสมบัติดังกล่าวมีชื่อว่า Length ซึ่งมีรูปแบบการใช้งานในรูปของนิพจน์ดังนี้

    ArrayName.Length

ในที่นี้ ArrayName คืออาเรย์ที่ต้องการหาขนาด ส่วน Length เป็นชื่อคุณสมบัติที่ให้ขนาดของอาเรย์
การใช้งานข้างต้นจะอยู่ในรูปของนิพจน์แบบจำนวนเต็ม ซึ่งมีค่าเท่ากับขนาดของอาเรย์ ArrayName

ตัวอย่างที่ 6.5 โปรแกรมด้านล่างคำนวณน้ำหนักเฉลี่ยของประชากรตัวอย่างจำนวน 5 คน โดยค่าน้ำหนักถูกเก็บไว้ในอาเรย์ weights

using System;
class AverageWeight {
  static void Main() {
    double[] weights = {65.5, 44.8, 70.0, 54.2, 77.6};
    double sum = 0.0;
    for (int i = 0; i < weights.Length; i++)
      sum += weights[i];
    Console.WriteLine("Average weight is {0:f2}",
      sum/weights.Length);
  }
}




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

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