ตัวแปรแถวล าดับ - Udon Thani Rajabhat...

Preview:

Citation preview

Arrays

ตวแปรแถวล าดบ

1 เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน

ตวแปรแถวล าดบ (Array) คอ?

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน2

อารเรย คอ เปนโครงสรางขอมลทเกบรวบรวมขอมลชนดเดยวกนไวดวยกนภายในตวแปรชอเดยวกน โดยขอมลแตละตวของอารเรยจะเรยกวา อลเมนต (Element) ขอมลแตละอลเมนตจะมหมายเลขเพอใชในการอางองถงเรยกตวเลขนวา เลขดชน (Index)ดงนนในการอางองถงขอมลแบบอารเรยจงท าไดโดยการระบชอของอารเรยนนๆ ประกอบกบคาเลขดชน เพอใหสามารถเขาถงอลเมนตทเกบขอมลภายในอารเรยนนๆ ได

ตวแปรแถวล าดบ (Array) คอ?

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน3

ตวแปรแถวล าดบ หรอ อารเรย เปนโครงสรางขอมล (Data Structure) ท าหนาทจองพนทหนวยความจ า ตามทระบขนาดหนวยความจ าในการประกาศตวแปรอารเรย เพอเกบขอมลในแตละชองของหนวยความจ า โดยมดชน (index) เปนตวระบต าแหนงขอมลในอารเรย

ประโยชนของการใชตวแปรแถวล าดบ

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน4

การเขยนโปรแกรมส าหรบบางกรณ เราจ าเปนทจะตองประกาศตวแปรทเปนขอมลชนดเดยวกนหลายๆ ตวเพอใชในการเกบกลมของขอมลทเหมอนกน เชน การเกบขอมลอาย และขอมลความสงของนกศกษา เปนตน ซงการทจะตงชอใหเปนตวแปร 100 ตว จะเปนการล าบาก ดงนนการประกาศตวแปรแบบแถวล าดบ จงอ านวยความสะดวกในจดน โดยจดขอมลอยในบลอกของหนวยความจ าเดยวกนและมการจดเรยงของขอมลแตละตวกนอยางตอเนอง และใชชอตวแปรรวมกนในการอางองถง

ประเภทของอารเรย

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน5

อารเรย 1 มต (One dimension arrays)

อารเรย 2 มต (Two dimension arrays)

อารเรย 3 มต (Three dimension arrays)

20 15 30 45

20 35

25 45 45

60

20

25 45

ตวแปรแถวล าดบ 1 มต (One dimension arrays)

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน6

คอ ตวแปรแถวล าดบทมดชนหรอตวชต าแหนงล าดบเพยงตวเดยวรปแบบการประกาศ

ตวอยาง

type ชอตวแปรอารเรย[จ านวนชองขอมล] ;

int a[10] ;

a

ตวอยางการประกาศ ตวแปรอารเรยการประกาศตวแปรแบบอารเรยสามารถท าไดคลายกบการประกาศตวแปรอนๆ ทวไป โดยการก าหนดชอของตวแปร ชนดของขอมล และขนาดของขอมล ตวอยางเชน

int grade[5]; /* Array ขนาด 5 ของ int */เปนการประกาศตวแปรแบบอารเรย 1 มตชอ grade ใหเปนขอมลแบบ

คาตวเลขทเปนจ านวนเตมโดยมขนาดเทากบ 5 อลเมนต ซงการประกาศตวแปรนจะจองหนวยความจ าเทากบ 2 byte * 5 = 10 byte

char code[5]; /* Array ขนาด 5 ของ char */การประกาศตวแปร code เปนขอมลแบบคาตวอกษรจะใชหนวยความจ าเทากบ 1 byte * 5 = 5 byte

float price[100]; /* Array ขนาด 100 ของ float */การประกาศตวแปร price เปนขอมลเลขทศนยม จะใชหนวยความจ าเทากบ 4 byte * 100 = 400 byte

การประกาศอารเรยพรอมกบก าหนดคาเรมตน

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน8

การก าหนดคาตวแปรอารเรยint data[5]={5, 3, 7, 1, 6};float a[ ]={1.3, 2.6, 10};char p[5]={‘a’, ‘b’, ‘d’, ‘e’, ‘t’};

int b[ ]={-20, 10, 5, 6, 4};int M[ ]={9, 0, 7};

ก าหนดขนาดอารเรยไวเลย

ไมไดก าหนดขนาดอารเรยไวลวงหนา

ตวอยางการประกาศอารเรย 1 มต

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน9

int data[5]={5, 3, 7, 1, 6};

data

int b[ ]={-20, 10, 5, 6, 4};

b

การเขาถงขอมลในอารเรย

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน10

รปแบบ

เชน

ชอตวแปรอารเรย[index]

printf(“Value = %d” ,score[1]);

แสดงขอมลในอารเรยชอ score ชองขอมลหมายเลข 1(ชองล าดบท 2)

ตวอยางการเขาถงขอมลและก าหนดคาในอารเรย

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน11

main() {int score[10] ; //ประกาศตวแปรอารเรยชอ score จ านวน 10 ชองint x = 20; //ประกาศตวแปร x ก าหนดคาเรมตน 20

score [0] = x ; // ก าหนดคาให scoreชองหมายเลข 0 เทากบคาในตวแปร xscore [1] = score[0] * 2 ; //ก าหนดคาให score ชองหมายเลข 1 เทากบคา

ใน score ชองหมายเลข 0 คณ 2

scanf(‚%d‛ , &score[5] ); //รบคามาใส score ชอง 5printf(‚%d‛ , score[1]); //แสดงคาใน score ชองท 1

}

ภาษาซตวแปรอารเรยตวแรกจะมดชน (index) เปนศนยเสมอในการอางถงตวแปรอารเรย ใดๆ จะตองระบดวยชออารเรยและดชนซงอยภายในเครองหมาย [ ] เชน grade [2] หมายถงตวแปรอารเรยตวท 3 ของgrade

ตวอยางการใชงานตวแปร grade ทเปนอารเรยของจ านวนเตม 5 ตวgrade[0] = 98;grade[1] = grade[0] – 11;grade[2] = 2 * (grade[0] – 6);grade[3] = 79;grade[4] = (grade[2] + grade[3] – 3) / 2;

ตวอยางการก าหนดคาใหอารเรยmain(){

int Num[5] ;

int y = 2;

Num[y] = 8;

Num[y+2] = 6;

Num[y*2-1] = 12;

Num[y] = Num[y] +1;

Num[y] = Num[y+1];

Num[y-1] = Num[y+2];

Num[8 % y] = Num[y] – 5;

}

Num

0 1 2 3 4

Num 7 6 12 12 6

0 1 2 3 4

สมมตวาตองการหาผลรวมtotal = grade[0] + grade[1] + grade[2] + grade[3] + grade[4];

สามารถเปลยนเปนtotal = 0;for ( i = 0; i <= 4, ++i)total += grade[i];

จะเหนวาจะมการเกบคาใน grade แตละอลเมนตตามล าดบเชนกน และสามารถใช i ซงใชเปนตวนบของลป for ในขณะเดยวกนกเปนตวชใหกบอารเรยดวย จะเหนวาจะมประโยชนมาก เมอมการกระท าทมจ านวนครงมากกวาน

ตวอยาง กรณทตองการหาคามากทสด (Maximum) ของคาในตวแปรอารเรยจ านวน 100 คาคอ price[100] สามารถกระท าไดดวยวธการดงนคอ ใชการวนรอบ for และ เงอนไข if เพอการตรวจสอบซงจะท าใหไดโปรแกรมดงน

maximum = price[0];for(i = 1; i <= 999; ++i){ if (price[i] > maximum)

maximum = price[i] ; }

การรบและแสดงคาของอารเรย(Input and Output of Array Values)

ในการใหคาแกตวแปรสามารถท าไดดวยการก าหนดใหโดยตรงหรอจะใหผใชกรอกโดยการรบคาจากคยบอรด โดยใชรวมกบค าสง scanf() ตวอยางเชนprice[5] = 10.69;

scanf(“%d %f”, &grades[0], &price[2])

scanf(“%c”, &code[0]);

scanf(“%d %d %d”, &grade[0], &grade[1], &grade[2]);

หรออาจใชการวนรอบเพอรบคาจากผใชกเปนไดดงตวอยางfor(i = 0; i <=4; ++i)

{

printf(“Enter a grade: “);

scanf(“%d”, &grade[i]);

}

จะเปนการวนรอบรบคา grade จากผใชจ านวน 5 คา

การแสดงคาของอารเรยในแตละอลเมนตสามารถใชงานรวมกบค าสงเชน printf() ซงท างานรวมกบการวนรอบ for จะท าใหสะดวกมากยงขน เชน

printf(“%f”, price[6]);

แสดงคาของ price ทอลเมนตท 6 printf(“The value of element %d is %d”, i, grade[i]);

แสดงคาของ i และ คา grades ท i for( n = 5; n <= 20; ++n)

printf(“%d %lf”, n, price[n]);

แสดงคาของ price ทอลเมนตท 5 ถง 20 โดยการใชงานการวนรอบ

ตวแปรอารเรยกบขอความการท างานกบขอความหรอทเรยกวา สตรง (String) เปนการใชขอมลตวอกษรหลาย ๆ ตว หรอ อารเรยของขอมลประเภท char หรออาจจะใชพอยนเตอรชไปยงขอมลประเภท char การท างานกบคาคงทสตรง (String Constant) สามารถเขยนภายในเครอง ‚ ‛

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน18

ตวแปรอารเรยกบขอความ char ch[10]; สรางตวแปรอารเรยชนด char ชอ ch มขนาดเทากบ 10

char str[10]; สรางตวแปรอารเรยชนด char ชอ str มขนาดเทากบ 10

*** ความแตกตางระหวางตวแปรอารเรยทใชเกบอกขระ และตวแปรอารเรยทใชเกบขอความอยทอกขระสดทาย โดยถาเปนอารเรยทใชเกบขอความนน อกขระตวสดทายจะถกปดดวย ‚\0‛(null) เสมอเพอใหรวาเปนขอความ

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน19

ตวแปรอารเรยกบขอความ

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน20

p u b l i s h n g

p u b l i s h n g \o

char ch[10]={‘p’, ‘u’, ‘b’, ‘l’, ‘i’, ‘s’, ‘h’, ‘n’, ‘g’}; สรางตวแปรอารเรย ch เพอเกบอกขระ

char ch[10]={‚publishng‛}; สรางตวแปรอารเรย str เพอเกบขอความ

ดงนนในการเขยนโปรแกรมเกยวของกบขอความ เราจงมกใช ‘\0’ เปนตวตรวจสอบการสนสดของขอความ เมอพบ ‘\0’ เมอใดแสดงวาจบขอความแลว

Ex1. การประยกตใชอารเรย จงเขยนโปรแกรมรบคะแนนของนกศกษา จ านวน 5 คน และค านวณหาคะแนนเฉลยและคะแนนสงสด โดยแสดงผลลพธคะแนนของนกศกษาทกคน , คะแนนรวม , คะแนนเฉลย และคะแนนสงสด

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน21

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน22

START

i =0 , i<5 , i+1

รบ(score[i])

sum = sum + score[i]

sum = 0

avg = sum / 5

i =0 , i<5 , i+1

แสดง (score[i])

A

A

score[i] > max

max = score[0]

max = score[i]

แสดง sum , avg, max

STOP

True

False

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน23

แบบฝกหด (สงในคาบปฏบต) เขยนโปรแกรมค านวณหารอยละของยอดขายของพนกงานขายแตละคน จากยอดขายรวมของพนกงานทมทงหมด จ านวน 5 คน

รปแบบผลลพธ

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน24

START

i =0,i<5,i+1

รบ(Sales[i])

i

Next No

STOP

Sum = Sum + Sales[i]

Percent=(Sales[i]/Sum)*100

แสดง sum

i =0,i<5,i+1

แสดง Sales[i] , Percent

Salesperson No.1 Sale = {สมมตปอน 50000}Salesperson No.2 Sale = {สมมตปอน 60000}Salesperson No.3 Sale = {สมมตปอน 40000}Salesperson No.4 Sale = {สมมตปอน 50000}Salesperson No.5 Sale = {สมมตปอน 80000}

Total Sale = 280000

Sales 50000 = 17.86%Sales 60000 = 21.43%Sales 40000 = 14.29%Sales 50000 = 17.86%Sales 80000 = 28.57%

อารเรย 2 มต (Two Dimension Arrays) ตวแปรอารเรยแบบ 2 มตจะเปนตวแปรทมการอางองถงคาขอมลโดยใชคาเลขดชน(index) 2 คาซงประกอบไปดวยคาดชนทใชในการอางองในแนวแถว (row) และคาดชนทใชอางองในแนวคอลมน(column)

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน25

20 35

25 45 45

60แถว

คอลมน

การประกาศอารเรย 2 มต รปแบบการประกาศ

ตวอยาง

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน26

type ชอตวแปรอารเรย[จ านวนแถว][จ านวนคอลมน];

int a[3][5] ;

a[0][0] a[0][1] a[0][2] a[0][3] a[0][4]

a[1][0] a[1][1] a[1][2] a[1][3] a[1][4]

a[2][0] a[2][1] a[2][2] a[2][3] a[2][4]

a

การประกาศและก าหนดคาเรมตนใหอารเรย 2 มต รปแบบ

ตวอยาง

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน27

type ชอตวแปรอารเรย[][]= {อารเรยแถวแรก , อารเรยแถวสอง ,…};

int b[][] = {{1,2,3,4},{5,6,7,8},{9,10,11,12}} ;

1 2 3 4

5 6 7 8

9 10 11 12

[0][ ]

[1][ ]

[2][ ]

[ ][0] [ ][1] [ ][2] [ ][3]

ขนาดของอารเรย 2 มต

จ านวนอลเมนตของอารเรย = จ านวนแถว x จ านวนคอลมน จ านวนอลเมนตของ a = 4 x 5 = 20 จ านวนหนวยความจ า = 1 ไบต x 20 = 20 ไบต

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน28

a[0][0] a[0][1] a[0][2] a[0][3] a[0][4]

a[1][0] a[1][1] a[1][2] a[1][3] a[1][4]

a[2][0] a[2][1] a[2][2] a[2][3] a[2][4]

a[3][0] a[3][1] a[3][2] a[3][3] a[3][4]

char a[4][5] ;

การก าหนดคาใหอารเรย 2 มต

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน29

int test[3][4] ;

[0][ ]

[1][ ]

[2][ ]

[ ][0] [ ][1] [ ][2] [ ][3]

test[0][3] = 20;

20

test[2][1] = 35;

35

test[1][2] = test[0][3] * 2;

40

test[2][0] = test[1][2] + test[2][1];

75

การก าหนดคาใหอารเรย 2 มต

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน30

จงแสดงภาพสดทายของอารเรย Nummain() {

int Num[4][4];

int X , Y ;

X := 2;

Y := 1;

Num[X][Y] = 10;

Num[Y % 1][ X+Y] = 8;

Num[X-1 ][X+1] = Num[2][1]+ 4;

Num[Y][X] = Num[X][Y] + 1;

Num[Y+2 ][ X-2] := Num[Y-1][X+1] ;

}

อารเรย 3 มต เปนอารเรยทมดชนชต าแหนง จ านวน 3 ตว

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน31

การประกาศอารเรย 3 มต รปแบบ

ตวอยาง

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน32

type ชอตวแปรอารเรย[แผน][แถว][คอลมน];

int b[3][3][4];

การก าหนดคาเรมตนใหอารเรย 3 มตint array[][][] = {

{

{3,5,8,7},

{1,2,6,4},

{8,4,1,2}

},

{

{1,5,8,4},

{5,6,2,3},

{8,7,5,0}

},

{

{7,8,3,4},

{2,1,9,2},

{8,4,5,6}

}

};

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน33

การสงผานอารเรยไปยงฟงกชน• การสงผานคาอารเรยไปยงฟงกชนสามารถท าได ส าหรบกรณการสงผาน

เฉพาะบางอลเมนตจะสามารถสงไดโดยคาของแตละอลเมนตไดโดยตรง เชน

• find_min(grade[2], grade[6]);

• จะเปนการสงผานคา grade[2] และ grade[6] ไปยงฟงกชน find_min()

การสงผานอารเรยไปยงฟงกชนกรณทตองการสงผานคาของอารเรยทงหมด สามารถกระท าไดงายกวาเพยงแตสงเฉพาะชอของอารเรยมาเทานนเชน การสงผานอารเรย grade ไปยงฟงกชน find_max() ไดดงน find_max(grade); จะท าใหคาของ grade สามารถเรยกใชงานไดภายใน find_max()

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน35

Ex2. การประยกตใชอารเรย 2 มต จงเขยนโปรแกรมเพอบนทกคาคะแนนการสอบปฏบต 3 ครงของนกศกษา 5 คน และใหบนทกผลรวมของคะแนนแตละคน แสดงคะแนนรวมของนกศกษาแตละคน แสดงคะแนนของคนทไดคะแนนรวมมากทสด

START

GetScore

ShowScore

FindTop

STOP

GetScore

i = 0 , i<5 , i+1

รบ(Score[i,j])

Next I

Next J

Return

j = 0 , j<3 , j+1

ShowScore

i = 0 , i<5 , i+1

Next I

Next J

Return

j = 0 , j<3 , j+1Sum = 0

SumScore[i] = Sum + Score[i,j]

แสดง SumScore[i]

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน38

FindTop

Max = Sumscore[0]

SumScore[i] > Max

Max = SumScore[i]

Next I

True

False

Return(Max)

i = 0 , i<5 , i+1

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน39

START

GetScore

ShowScore

FindTop

STOP

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน40

GetScore

i = 0 , i<5 , i+1

รบ(Score[i,j])

Next I

Next J

Return

j = 0 , j<3 , j+1

Sum = 0

SumScore[i] = Sum + Score[i,j]

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน41

ShowScore

i = 0 , i<5 , i+1

Next I

Next J

Return

j = 0 , j<3 , j+1

แสดง SumScore[i]

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน42

FindTop

Max = Sumscore[0]

SumScore[i] > Max

Max = SumScore[i]

Next I

True

False

Return(Max)

i = 0 , i<5 , i+1

แบบฝกหด (สงในคาบปฏบต) จงเขยนผงงาน และเขยนโปรแกรม รบขอมลจ านวนนกศกษา และรบขอมลชอนกศกษาใสอารเรย และคะแนนสอบกลางภาคและสอบปลายภาคของนกศกษาแตละคน จากนนค านวณคะแนนรวมใสอารเรย แสดงชอนกศกษาและคะแนนรวมทได และเกรดทไดรบ

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน43

คะแนน 80-100 เกรด Aคะแนน 70-79 เกรด Bคะแนน 60-69 เกรด Cคะแนน 50-59 เกรด Dคะแนน 0-49 เกรด F

ตวอยางหนาจอผลลพธ

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน44

หนาจอรบจ านวนนกศกษาทงหมด

หนาจอขอมลชอ และคะแนนของนกศกษาแตละ

คน

หนาจอสรปคะแนนรวมและเกรด

แบบฝกหด (สงในคาบปฏบต) จงเขยนผงงาน(flowchart) และโปรแกรมจดการเกยวกบการจองทนงชมภาพยนตร ทนงประกอบดวย แถว 1-10แตละแถวม ทนง 1 – 10 ทกครงทมผมาจอง พนกงานจะตองแสดงใหลกคาดวามทนงวางในแถวใดบาง จากนนใหผชมเลอกทนงทวางอย

หากผชมระบทนงทมผจองไวแลว ใหแสดงขอความ This seat is Reserved!!! แลวใหเลอกใหม

หากเลอกแถวหรอคอลมนทนงเกนจากทก าหนด(1-10) ใหแสดงขอความ Invalid seat row or column... แลวใหเลอกใหม

หากผชมเลอก แถว เทากบ 99 หรอ คอลมน เทากบ 99 ใหแสดงขอความ Program Terminated!!! และจบการท างาน

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน45

ตวอยางหนาจอ

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน46

กรณเลอก ทนงไมซ า

ตวอยางหนาจอ

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน47

กรณเลอก ทนงซ ากบทมแลว

ตวอยางหนาจอ

เรยบเรยงโดย อ.เรวด พพฒนสงเนน สาขาวชาวทยาการคอมพวเตอรและเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยราชภฏอดรธาน48

กรณเลอก เลอกแถวและคอลมน เปน 99 99

Recommended