 |
1 R := 1; 2 while R <= Size do 3 begin 4 C := 1; 5 while C <= Size do 6 begin 7 M3[R,C] := M1[R,C] +M2[R,C] ; 8 C := C+1 9 end; 10 R := R+1 11 end;
================================ loop ที่ 1 บรรทัด 2 - 11 ให้ R เป็น 1 และทำการวน loop ตราบที่ R ยังคงน้อยกว่า หรือเท่ากับ Size (ซึ่งคงไปได้ค่ามาจากขั้นตอนก่อนหน้า) ใน loop ที่ 1 มี loop ที่ 2 อยู่ บรรทัดที่ 5 - 9 ให้ C เป็น 1 และทำการวน loop ตราบที่ C ยังคงน้อยกว่า หรือเท่ากับ Size (ซึ่งคงไปได้ค่ามาจากขั้นตอนก่อนหน้า)
เมื่อมองการทำงานแล้วจะพบว่าเป็นการ สั่งให้รวมค่า จากตารางข้อมูล 2 ตาราง (M1 และ M2) (ขนาด Size x Size) ไปเก็บค่าในตารางที่ 3 (M3)
====================================== ตัวอย่าง สมมติ Size = 3 M1[1,1] = 1 M1[1,2] = 2 M1[1,3] = 3 M1[2,1] = 1 M1[2,2] = 2 M1[2,3] = 3 M1[3,1] = 1 M1[3,2] = 2 M1[3,3] = 3
M2[1,1] = 1 M2[1,2] = 2 M2[1,3] = 3 M2[2,1] = 1 M2[2,2] = 2 M2[2,3] = 3 M2[3,1] = 1 M2[3,2] = 2 M2[3,3] = 3
loop-1 รอบที่1 R=1 loop-2 รอบที่1 C=1 M3[1,1]=M1[1,1]+M2[1,1] loop-2 รอบที่2 C=2 M3[1,2]=M1[1,2]+M2[1,2] loop-2 รอบที่3 C=3 M3[1,3]=M1[1,3]+M2[1,3] loop-1 รอบที่2 R=2 loop-2 รอบที่1 C=1 M3[2,1]=M1[2,1]+M2[2,1] loop-2 รอบที่2 C=2 M3[2,2]=M1[2,2]+M2[2,2] loop-2 รอบที่3 C=3 M3[2,3]=M1[2,3]+M2[2,3] loop-1 รอบที่3 R=3 loop-2 รอบที่1 C=1 M3[3,1]=M1[3,1]+M2[3,1] loop-2 รอบที่2 C=2 M3[3,2]=M1[3,2]+M2[3,2] loop-2 รอบที่3 C=3 M3[3,3]=M1[3,3]+M2[3,3]
ประมาณนี้มั้งครับ ... ปัญหาไม่ได้อยู่ที่ภาษาอะไร (computer ต่างภาษา แต่ control statement จะคล้ายกัน) และในวิชา Data จะเน้น Psudo Code มากกว่า
ลองวาดรูป หรือ ยกตัวอย่าง data ดูจะพอเข้าใจได้เร็วขึ้นน่ะครับ
แก้ไขเมื่อ 27 มิ.ย. 54 00:55:44
แก้ไขเมื่อ 27 มิ.ย. 54 00:54:42
จากคุณ |
:
x-schneider
|
เขียนเมื่อ |
:
27 มิ.ย. 54 00:53:12
|
|
|
|
 |