แบบฝึกหัดบทที่ 6 ตัวแปรชุด
แบบฝึกหัดบทที่ 6
1. เขียนโปรแกรมเพื่อรับข้อมูล N จำนวน
โดยเก็บข้อมูลในตัวแปรชุด
และให้พิมพ์ข้อมูลในลำดับที่กลับกับการ
ป้อน
ข้อมูล
เช่น
ป้อนข้อมูล
1 2 3 4 5 6 จะพิมพ์คำตอบในลักษณะ 6 5 4 3 2 1
2. เขียนโปรแกรมเพื่อรับข้อมูลเข้ามาเก็บในตัวแปรชุด 2 ชุด
คือ xและ yแต่ละชุดมีข้อมูลเท่ากันคือ N ตัว
ให้หา
ii
ค่า
2/
. N
[(xi
. yi
) y
]
i
i
=1
3. เขียนโปรแกรมเพื่อรับข้อมูลจำนวนเต็มเข้ามาเก็บยังตัวแปรชุด 2 ตัวแปรชุด
ซึ่งมีขนาดเท่ากัน
คือ N โดยมีข้อ
กำหนดในการรับ
ข้อมูลของตัวแปรชุดทั้งคู่
คือ
ข้อมูลตัวแรกจะเป็นข้อมูลอะไรก็ได้แต่จะต้องมีค่าอยู่ในช่วง
1
ถึง 20
ส่วนข้อมูลตัวถัดไปต้องมีค่ามากกว่าสามารถตัวก่อนหน้าตัวมันเอง
โดยมีค่ามากกว่าไม่เกิน 5 เมื่อรับข้อมูลเสร็จ
แล้ว
ให้ทำการรวม (Merge) ตัวแปรชุดทั้งคู่เข้าด้วยกัน
โดยเรียงตามลำดับข้อมูลจากน้อยไปมาก
หากมีค่าเท่ากัน
จะนำค่าใดไปไว้ในตัวแปรชุดก่อนก็ได้
เช่น
ตัวแปรชุด
1
1
3 7 12 14
ตัวแปรชุด 2
2 3 6 11
1
23367 11
12 14 14
ตัวแปรชุดคำตอบ
4. เขียนโปรแกรมโดยใช้ตัวแปรชุด
เพื่อรับข้อมูลชื่อ
และคะแนนสอบของนักเรียนห้องหนึ่งซึ่งมี 50 คน
โดยรับข้อ
มูลเป็นจำนวนเต็ม
โปรแกรมจะต้องมีความสามารถต่าง
ๆ
ดังนี้
-หาคะแนนเฉลี่ยของนักเรียนทั้งห้อง
-พิมพ์ชื่อและคะแนนของนักเรียนที่ได้คะแนนตํ่ากว่า 50 คะแนน
-คำนวณค่าความแปรปรวนจากสูตร
)
)
2
N
(x
. x
Variant
=. i
.
i
=1
N
1
โดยที่ xแทน
คะแนนของนักเรียนแต่ละคน
i
x แทน
คะแนนเฉลี่ย
N แทน
จำนวนนักเรียนทั้งหมด
150
-พิมพ์กราฟความถี่ของคะแนนซึ่งมีค่าตั้งแต่ 0 ถึง
100 โดยใช้เครื่องหมาย * แทนจำนวนความถี่ของ
คะแนน
โดยแสดงผลทีละ 20 คะแนน
เช่น
0 -*** 3 ->แสดงว่ามีคนได้ 0 คะแนนจำนวน 3 คน
5.
เขียนโปรแกรมเพื่อรับข้อความจากผู้ใช้
ให้แปลงข้อความดังกล่าวโดย
ตัวอักษรใดเป็นตัว a หรือ A ให้แทรก
ข้อความแทนด้วย 555 ตัวอักษรใดเป็นตัว u หรือ U ให้แทนที่ด้วย Hanaga และแสดงผลลัพธ์ที่ได
.
6.
เขียนโปรแกรมเพื่อรับอักขระทางแป้นพิมพ์ทีละ
1
ตัวอักษร
จากนั้นทำการนับจำนวนตัวอักษร A-Z และ a-z
ที่รับเข้าไป
ข้อมูลตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็กจะนับเป็นอักษรตัวเดียวกัน
โดยจะสิ้นสุดการรับข้อมูลเมื่อผู้ใช้
กด “%” จากนั้นทำการพิมพ์ความถี่ของจำนวนแต่ละตัวอักษร A-Z หรือ a-z ที่ป้อนเข้าไป
กำหนดให้ทำการ
พิมพ์ “*” เท่ากับจำนวนค่าความถี่ของการรับแต่ละตัวอักษรที่นับได
.
7. เขียนโปรแกรมเพื่อเก็บข้อมูลต่อไปนี้ลงในตัวแปรชุด
และแสดงผลข้อมูลที่เก็บภายในตัวแปรชุดนั้น
ข้อมูลมีดัง
นี้
( OOO )
( + YY )
( X+Y)
( XX+)
( OOO )
8.
เขียนโปรแกรมเพื่อรับค่าข้อมูลการวัดอุณหภูมิร่างกายของคนไข้รายหนึ่งเป็นเวลา 7 วัน
โดยแต่ละวันจะทำ
การวัดอุณหภูมิ 4 ครั้งในเวลาที่ตรงกันคือ 6.00 น. 12.00 น. 18.00 น. และ 24.00 น. เขียนโปรแกรมเพื่อ
ทำการเก็บข้อมูล
โปรแกรมจะต้องมีความสามารถ
-คำนวณอุณหภูมิสูงที่สุดและตํ่าที่สุดที่วัดได้ในแต่ละวัน
-คำนวณอุณหภูมิเฉลี่ยที่วัดได้ในแต่ละวัน
ทั้ง 7 วัน
-คำนวณอุณหภูมิเฉลี่ยที่ได้ในแต่ละช่วงเวลา
ทั้ง 4 ช่วงเวลา
-คำนวณอุณหภูมิเฉลี่ยรวมทั้งหมด
9.
เขียนโปรแกรมเพื่อเก็บข้อมูลประตูได้และเสียในการแข่งขันฟุตบอลรายการหนึ่ง
ซึ่งมีทีมฟุตบอลเข้าร่วมแข่งขัน
4 ทีม
โดยแต่ละทีมจะทำการแข่งขันแบบพบกันหมด (เล่นทีมละ 3 ครั้ง) ให้เขียนโปรแกรมโดยแยกประตูได้และ
เสียออกเป็นตัวแปรชุด 2 มิติจำนวน 2 ตัวแปรชุด
โปรแกรมจะทำหน้าที่
-รับข้อมูลประตูได้และเสียของแต่ละทีม
-หาผลต่างประตูได้เสียในการแข่งขันแต่ละครั้งของแต่ละทีม
และให้แสดงทีมที่มีผลต่างดีที่สุด
-หาผลรวมประตูที่ได้ของแต่ละทีม
และให้แสดงทีมที่ทำประตูได้มากที่ได้
-หาประตูได้และเสียเฉลี่ยของแต่ละทีม
151
10. เขียนโปรแกรมเพื่อสร้างตารางสรุปจำนวนนักศึกษาโดยแยกตามคณะและชั้นปีที่นักศึกษาสังกัด
ดังตาราง
First Year Second Year Third Year Fourth Year >4 Total
Faculty 1
Faculty 2
…
Total
1500 1200 1150 1100 20 4970
3500 3300 3200 3100 100 12200
… … … … … …
โปรแกรมจะรับข้อมูลจำนวนนักศึกษาซึ่งแยกตามคณะและชั้นปี
ให้เก็บข้อมูลโดยใช้ตัวแปรชุด 2 มิติ
หลังจากนั้นให้สร้างตารางสรุปจำนวนนักศึกษา
โดยที่มีการสรุปยอดรวมของนักศึกษาแยกตามคณะ
และชั้นปี
รวมทั้งสรุปยอดนักศึกษารวมด้วย
11. เขียนโปรแกรมเพื่อหาค่าผลบวกของเมตริกซ์ 2 เมตริกซ์ที่มีขนาดมิติเท่ากัน
คือ 3×2 ให้รับข้อมูลของเมตริกซ์
ทั้ง 2 และคำนวณค่าผลบวกของเมตริกซ์ที่ได้
12. เขียนโปรแกรมเพื่อหาผลคูณของเมตริกซ์ 2 เมตริกซ
์เมตริกซ์แรกมีขนาด NxM เมตริกที่ 2 มีขนาด MxN ให้หา
ผลคูณของเมตริกซ์ทั้ง 2 ซึ่งมีขนาดของเมตริกซ์คำตอบเท่ากับ NxN
13. เขียนโปรแกรมเพื่อรับข้อมูลเมตริกซ์ขนาด NxN แล้วให้ตรวจสอบว่าเมตริกซ์นั้นเป็น Upper-triangular Matrix
หรือ Lower-triangular Matrix หรือไม่
โดยที่ Triangular Matrix คือ
เมตริกซ์ขนาด NxN ที่มีการแบ่งข้อมูลออก
เป็น 2 ส่วนตามเส้นแนวทะแยง
คือ
เป็นด้านบนและด้านล่าง
หากด้านบนมีค่าเป็น 0 ทั้งหมด
เรียกว่า Upper-
triangular Matrix หากด้านล่างมีค่าเป็น 0 ทั้งหมด
เรียกว่า Lower-triangular Matrix ตัวอย่างเช่น
Upper-triangular Matrix Lower-triangular Matrix
a 0
b c
a 0 0
b c 0
d e f
a b
0 c
a b c
0 d e
0 0 f