Lecture
Download
1 / 57

Lecture 8 Array and Struct ( ตัวแปรชุด และ ข้อมูลแบบโครงสร้าง) - PowerPoint PPT Presentation


  • 60 Views
  • Uploaded on

Lecture 8 Array and Struct ( ตัวแปรชุด และ ข้อมูลแบบโครงสร้าง). OBJECTIVE 1. ทราบการกำหนดตัวแปรอาร์เรย์ (Define Array Variable) 2. ทราบถึงการนำไปใช้งาน 3. สามารถนำตัวแปรแบบอาร์เรย์ไปประยุกต์ใช้งานได้ 4. ทราบถึงการกำหนดตัวแปรแบบโครงสร้าง. อาร์เรย์ (Array) คืออะไร

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Lecture 8 Array and Struct ( ตัวแปรชุด และ ข้อมูลแบบโครงสร้าง)' - truly


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Lecture 8

Array and Struct

(ตัวแปรชุด และ ข้อมูลแบบโครงสร้าง)


OBJECTIVE

1. ทราบการกำหนดตัวแปรอาร์เรย์(Define Array Variable)

2. ทราบถึงการนำไปใช้งาน

3. สามารถนำตัวแปรแบบอาร์เรย์ไปประยุกต์ใช้งานได้

4. ทราบถึงการกำหนดตัวแปรแบบโครงสร้าง


อาร์เรย์(Array)คืออะไร

ในการเขียนโปรแกรม ข้อมูล ที่มีลักษณะเหมือนๆ กัน ควรที่จะมีชื่อตัวแปรที่เหมือนกัน เช่น ข้อมูลอายุของนักศึกษาห้อง TM1 เรากำหนดให้เป็นตัวแปรชื่อ OldTm1 จะสังเกตว่าตัวแปรชื่อOldtm1 จะมีข้อมูลภายในทั้งหมดก็คืออายุของนักศึกษาห้อง TM1 ดังนั้นข้อมูลที่อยู่ภายในจะมีตัวเลขทั้งหมด 20 ข้อมูล

ถ้าเป็นข้อมูลชื่อนักศึกษาระดับ ป.ตรี ภายในสถาบันก็จะมีข้อมูล 631 คน เป็นชนิดข้อความ เป็นต้น

ถ้าเป็นข้อมูลระดับคะแนนนักศึกษา TM1 ก็จะมีข้อมูล 20 ค่า เป็นชนิดตัวอักษร เป็นต้น (ลองดูหน้าถัดไปซิ)

เราเรียกตัวแปรดังกล่าวข้องต้นว่า”อาร์เรย์”ซึ่งก็คือตัวแปรเพียงตัวเดียวแต่เก็บค่าได้หลายค่า

ประโยชน์ของอาร์เรย์

1. ใช้ตัวแปรเพียงชื่อเดียวแต่จำนวนสมาชิกมากกว่า 1

2. คิดเอาเองครับ...


ชื่อตัวแปร [จำนวนสมาชิก]

0 1 2 3 4 ... 19

GradeTM1[20];

ข้อมูลภายใน ตัวแปร

ตัวแปรเดียวแต่เก็บได้หลายข้อมูล


RESERVED [จำนวนสมาชิก]

RESERVED

RESERVED

RESERVED

RESERVED

#define MAXC 5

char t[MAXC];

  • การกำหนดตัวแปรอาร์เรย์ไว้เครื่องจะทำการจองหน่วยความจำไว้เพื่อเก็บค่า


RESERVED [จำนวนสมาชิก]

RESERVED

RESERVED

RESERVED

RESERVED

#define MAXC 5

char t[MAXC];

t[0]

t[1]

  • Arrays จะชี้เริ่มต้นที่ ศูนย์.

  • t[2]คือสมาชิกลำดับที่สาม( thirdelement of the arrayt.)

t[2]

t[3]

t[4]


8.1วิธีการกำหนดตัวแปรแบบอาร์เรย์8.1วิธีการกำหนดตัวแปรแบบอาร์เรย์

ชนิดตัวแปร ชื่อตัวแปร[จำนวนสมาชิก]

ตัวอย่างการกำหนด

int oldTM1[20];

char GradTM1[20];

จากด้านบนตัวแปร oldTM1 จะมีจำนวนสมาชิก 20 ข้อมูล

0 1 2 3 4 ... 19

oldTM1[20];


ตัวอย่างการกำหนดตัวแปรอาร์เรย์(ต่อ)ตัวอย่างการกำหนดตัวแปรอาร์เรย์(ต่อ)

void main()

{

const int size=4;

int a[size];

}

ลักษณะนี้ตัวแปรจะได้เป็น a[4] เก็บค่าจำนวนเต็ม

void main()

{

char a[10];

}

ลักษณะนี้ตัวแปรจะได้เป็น a[10] เก็บค่าตัวอักษร 10 ตัว (หรือ 1 ข้อความมีค่าไม่เกิน 10 ตัว)


8.2 การกำหนดค่าเริ่มต้นให้อาร์เรย์

เราสามารถกำหนดค่าเริ่มต้นให้อาร์เรย์ได้โดยมีตัวอย่างดังนี้

#include <iostream.h>

void main()

{

int a[4]={1,2,3,4};

}

จากด้านข้างค่า a[0] = 1 a[1] = 2 a[2] = 3 a[3] = 4

void main()

{

int a[]={1,2,3,4};

}

จะได้ผลเหมือนกับด้านบน โดยที่complier จะทำการจองหน่วยความจำไว้จำนวน 4 ค่า


การกำหนดค่าเริ่มต้นให้อาร์เรย์แบบหลายมิติการกำหนดค่าเริ่มต้นให้อาร์เรย์แบบหลายมิติ

เราสามารถกำหนดค่าเริ่มต้นให้อาร์เรย์ได้โดยมีตัวอย่างดังนี้

#include <iostream.h>

void main()

{

int a[2][4]={{1,2,3,4},{5,6,7,8}};

}

จากด้านบนค่า a[0][0] = 1 , a[0][1] = 2 , a[0][2] = 3 , a[0][3] = 4

a[1][0] = 5 , a[1][1] = 6 , a[1][2] = 7 , a[1][3] = 8


การกำหนดค่าเริ่มต้นให้อาร์เรย์การกำหนดค่าเริ่มต้นให้อาร์เรย์

เราสามารถกำหนดค่าเริ่มต้นให้อาร์เรย์ได้โดยมีตัวอย่างดังนี้

#include <iostream.h>

void main()

{

char A[10]={‘S’,’o’,’m’,’p’,’o’,’n’,’g’};

}

จากด้านบนค่า A[0] = S , A[1] = o , A[2] = m , A[3] = p

A[4] = o , A[5] = n , A[6] = g , A[7] = ‘’

A[8] = ‘’, A[9] = ‘’


Aการกำหนดค่าเริ่มต้นให้อาร์เรย์

S

o

m

p

o

n

g

\o

A[0]

A[1]

A[2]

A[3]

A[4]

A[5]

A[6]

A[7]

การกำหนดค่าเริ่มต้นให้อาร์เรย์

เราสามารถกำหนดค่าเริ่มต้นให้อาร์เรย์ได้โดยมีตัวอย่างดังนี้

#include <iostream.h>

void main()

{

char A[]=“Sompong”;

}

คอมไพเลอร์จะจองหน่วยความจำให้อัตโนมัติและจะมี \o ต่อท้ายเสมอ

แสดงการสิ้นสุดข้อความ \o


Aการกำหนดค่าเริ่มต้นให้อาร์เรย์

S

o

m

p

o

n

g

\o

A[0]

A[1]

A[2]

A[3]

A[4]

A[5]

A[6]

A[7]

การกำหนดแบบนี้ไม่ได้น่ะครับ เพราะว่า การใช้เครื่องหมาย “ “ จะมี \o ต่อท้ายของ array เสมอ

#include <iostream.h>

void main()

{

char A[7]=“Sompong”;

}

คอมไพเลอร์จะจองหน่วยความจำให้อัตโนมัติและจะมี \o ต่อท้ายเสมอ

แสดงการสิ้นสุดข้อความ \o


Aการกำหนดค่าเริ่มต้นให้อาร์เรย์

S

o

m

p

o

n

g

\o

A[0]

A[1]

A[2]

A[3]

A[4]

A[5]

A[6]

A[7]

แบบนี้กำหนดได้ครับ จองหน่วยความจำไว้ 8 บล็อก ไม่ได้ก็ให้มันรู้ไป!!!

#include <iostream.h>

void main()

{

char A[8]=“Sompong”;

}

แสดงการสิ้นสุดข้อความ \o


Aการกำหนดค่าเริ่มต้นให้อาร์เรย์

S

o

m

p

o

n

g

\o

A[0]

A[1]

A[2]

A[3]

A[4]

A[5]

A[6]

A[7]

แบบนี้กำหนดก็เหมือนกันน่ะครับ กำหนดได้เยอะแยะ ไปหมด เลือกตามที่เราถนัดแล้วกัน

#include <iostream.h>

void main()

{

char A[8]={“Sompong”};

}

แสดงการสิ้นสุดข้อความ \o


Aการกำหนดค่าเริ่มต้นให้อาร์เรย์

S

o

m

p

o

n

g

A[0]

A[1]

A[2]

A[3]

A[4]

A[5]

A[6]

แบบนี้ก็ได้ครับ ถ้าอยากจองหน่วยความจำไว้ 7 บล็อก เท่าเดิม แต่ต้องเป็นตัวอักษร น่ะ

#include <iostream.h>

void main()

{

char A[7]={‘S’,’o’,’m’,’p’,’o’,’n’,’g’};

}


แบบการกำหนดค่าเริ่มต้นให้อาร์เรย์ float ก็ได้ครับ เดี๋ยวจะหาว่าไม่พูดถึง !!!

#include <iostream.h>

void main()

{

floatA[3]={10.12 ,5.1214 , -14.121 };

}

A

A[0]

A[1]

A[2]


แบบการกำหนดค่าเริ่มต้นให้อาร์เรย์double ก็ได้ครับ เพราะเก็บค่าแบบจำนวนจริงได้ เดี๋ยวจะหาว่าไม่พูดถึง !!! แต่ออกจะเวอร์ไปนิดนึง ตรงที่ทศนิยมไม่กี่ตำแหน่ง แต่ใช้ double ซึ่งใช้หน่วยความจำ 8 byte ในการเก็บข้อมูล ขณะที่ floatใช้เพียง 4 byte ให้การเก็บข้อมูล ถ้าทศนิยมเยอะๆ ก็ว่าไปอย่าง!!!!!

#include <iostream.h>

void main()

{

doubleA[3]={10.12 ,5.1214 , -14.121 };

}

4 byte

4 byte

4 byte

A

A[0]

A[1]

A[2]


ปัญหาคืออะไร ?????การกำหนดค่าเริ่มต้นให้อาร์เรย์

แล้วเราจะมีวิธีการอย่างไรในการแสดงค่า ที่อยู่ในตัวแปรแบบอาร์เรย์ได้อย่างไร น่ะ ????


การสั่งให้แสดงค่าในกรณีที่ไม่ได้กำหนดค่าเริ่มต้นให้อาร์เรย์การสั่งให้แสดงค่าในกรณีที่ไม่ได้กำหนดค่าเริ่มต้นให้อาร์เรย์

#include <iostream.h>

int main()

{

double a[4];

cout << a[0] << a[1] << a[2] << a[3];

return 0;

}

ค่าที่แสดงจะเป็นค่าที่ไม่ถูกต้อง เพราะ Array ไม่ได้ถูกกำหนดค่าไว้ก่อน 555!!!!


การสั่งให้แสดงค่าในอาร์เรย์การสั่งให้แสดงค่าในอาร์เรย์

#include <iostream.h>

int main()

{

float a[4]={ 1.11 , 2 , 0.5 , 8.11 };

cout << a[0] << a[1] << a[2] << a[3];

return 0;

}

กำหนดค่าไว้ก่อนก็เรียบร้อย แต่การแสดงค่า ไม่ค่อยจะ อินเตอร์!!!


การสั่งให้แสดงค่าในอาร์เรย์การสั่งให้แสดงค่าในอาร์เรย์

#include <iostream.h>

int main()

{

double a[4]={ 1 , 2 , 0.5 , 8.11 };

for(int i ; i<4 ; i++)

{

cout << a[i] <<endl ;

}

return 0;

}

ระวังนิดน่ะครับ i<4

ไม่ใช่ i <=4

ถ้าพิมพ์ i<=4 มันจะแสดงค่า a[4] ออกมาด้วยน่ะครับ แต่ไม่รู้ว่าเป็นค่าเท่าไร เพราะขอบเขตอาร์เรย์ที่เรากำหนดมีค่าสูงสุดถึง a[3] เท่านั้นภาษาC/C++ ไม่เช็คให้เราน่ะครับ


ปัญหาต่อไปคืออะไร ?????การสั่งให้แสดงค่าในอาร์เรย์

แล้วเราจะมีวิธีการอย่างไรในการนำค่าเข้าไปเก็บไว้ในอาร์เรย์ได้อย่างไร น่ะ ????


การกำหนดค่าให้อาร์เรย์การกำหนดค่าให้อาร์เรย์

#include <iostream.h>

void main()

{

float a[3];

a[0] = 12.1;

a[1] = 0.00011;

a[2] = -12.1;

cout << a[0] << a[1] << a[2] << endl;

}

ลองดูแบบกำหนดตรงๆ !!!


การกำหนดค่าให้อาร์เรย์การกำหนดค่าให้อาร์เรย์

#include <iostream.h>

void main()

{

char name[10];

cin >> name;

cout <<“Your name is : ” << name << endl;

}

ลองดูแบบกำหนดโดยใช้ cin เข้าช่วย แต่ อย่าพิมพ์เกิน 10 ตัวน่ะครับเพราะเราจองไว้แค่ 10 (ไม่เชื่อก็ลองพิมพ์ดูน่ะครับ)


8 3 string
8.3 ฟังก์ชันที่ใช้จัดการ string

  • gets() รับสตริงจากคีย์บอรด์ (อยู่ใน library stdio.h)

  • strcpy() ก๊อปปี้สตริง (อยู่ใน library string.h)

  • strcat() รวมสตริงทั้งสองเข้าด้วยกัน (อยู่ใน library string.h)

  • strlen() ให้หาค่าความยาวของสตริง (อยู่ใน library string.h)

  • strcmp() เปรียบเทียบลำดับของสตริง (อยู่ใน library string.h)


ตัวอย่างการใช้งาน ฟังก์ชันที่ใช้จัดการgets() รับข้อความ

  • #include <iostream.h>

  • #include <stdio.h>

  • void main( void )

  • {

    • char line[81];

    • cout<< "Input a string: ";

    • gets( line );

    • cout<<"The line entered was: “<<line;

  • }

  • Output

  • Input a string: Hello!

  • The line entered was: Hello!

ข้อความที่พิมพ์เข้าไปจะถูกแสดงออกมา


Strcpy strcat
ตัวอย่างการใช้งาน ฟังก์ชันที่ใช้จัดการstrcpy() และ strcat()

  • #include <iostream.h>

  • #include <stdio.h>

  • #include <string.h>

  • void main( void )

  • {

    • char string[80];

    • strcpy( string, "Hello world from " );

    • strcat( string, "strcpy " );

    • strcat( string, "and " );

    • strcat( string, "strcat!" );

    • printf( "String = %s\n", string );

  • }

  • Output

  • String = Hello world from strcpy and strcat!

เป็นลักษณะการ ก๊อปปี้สตริง

เป็นลักษณะการ รวมสตริง เดิม เข้ากับสตริงใหม่ และสตริงใหม่จะต่อท้ายไปเรื่อยๆ


Strlen
ตัวอย่างการใช้งาน ฟังก์ชันที่ใช้จัดการstrlen()

  • #include <string.h>

  • #include <stdio.h>

  • #include <conio.h>

  • void main( void )

  • {

    • char buffer[61] = "How long am I?";

    • int len;

    • len = strlen( buffer );

    • printf( "'%s' is %d characters long\n", buffer, len );

  • }

  • Output

  • 'How long am I?' is 14 characters long

ตัวอักษรยาว 14 ตัว

เป็นลักษณะการ หาความยาวของสตริง ช่องว่างก็มองเป็นตัวอักษรเหมือนกัน


Strcmp
ตัวอย่างการใช้งาน ฟังก์ชันที่ใช้จัดการstrcmp()

#include <string.h> #include <stdio.h> #include <conio.h>

char string1[] = “Hello";

char string2[] = “hello";

void main( void )

{

char tmp[20];

int result;

/* Case sensitive */

printf( "Compare strings:\n\t%s\n\t%s\n\n", string1, string2 );

result = strcmp( string1, string2 );

if( result > 0 )

strcpy( tmp, "greater than" );

elseif( result < 0 )

strcpy( tmp, "less than" );

else

strcpy( tmp, "equal to" );

printf( "\tstrcmp: string 1 is %s string 2\n", tmp );

}

เป็นลักษณะการ เปรียบเทียบ สตริง ตัวอักษร เล็กใหญ่มีผล ตามตาราง ASCII


Strcmp1
ผลที่ได้จากการเปรียบเทียบ strcmp()

  • result = strcmp( string1, string2 );

  • กรณี

    • string1<string2 ค่าส่งกลับคือ <0

    • string1=string2 ค่าส่งกลับคือ =0

    • string1>string2 ค่าส่งกลับคือ >0


Stricmp
ตัวอย่างการใช้งาน _stricmp()

#include <string.h> #include <stdio.h> #include <conio.h>

char string1[] = “Hello";

char string2[] = “hello";

void main( void )

{

char tmp[20];

int result;

/* Case sensitive */

printf( "Compare strings:\n\t%s\n\t%s\n\n", string1, string2 );

result = _stricmp( string1, string2 );

if( result > 0 )

strcpy( tmp, "greater than" );

elseif( result < 0 )

strcpy( tmp, "less than" );

else

strcpy( tmp, "equal to" );

printf( "\tstrcmp: String 1 is %s string 2\n", tmp );

}

เป็นลักษณะการ เปรียบเทียบ สตริง ตัวอักษร เล็กใหญ่ไม่มีผล


8 4 array
8.4 การส่งค่า Array ไปยังฟังก์ชัน

ตัวอย่าง

#include <iostream.h>

#include <math.h>

int cube(int x[]); //declare function

int main(void)

{ int a[]={1,2,3};

int ans;

ans=cube(a);

cout<<"Result is "<<ans<<endl;

return 0;

}

int cube(int x[])

{

int result; //local variable

result = x[0]+x[1]+x[2];

return result;

}


สงสัยไหมน่ะ ?????

การส่งค่าเข้าในฟังก์ชันของตัวแปรแบบ array เป็นแบบ

Pass by value(ส่งค่าไปให้)หรือ Pass by reference(ส่งค่าอ้างอิงไปให้)

2แบบนี้...ถ้าลืมแล้วก็กลับไปดู Lecture 7 ครับ


ตัวอย่าง การส่งผ่านตัวแปร array ไปให้ฟังก์ชัน

#include <iostream.h>

#include <math.h>

void cube(int x[]); //declare function

int main(void)

{ int a[]={1,2,3};

int ans;

cout<<"Result is "<<a[0]<<a[1]<<a[2]<<endl;

ans=cube(a);

cout<<"Result is "<<a[0]<<a[1]<<a[2]<<endl;

return 0;

}

void cube(int x[])

{

x[0]=4;

}

ทำตัวอย่างนี้แล้วตอบด้วยน่ะครับว่าเป็นการส่งแบบไหน

Pass by value(ส่งค่าไปให้)หรือ Pass by reference(ส่งค่าอ้างอิงไปให้)

2แบบนี้...ถ้าลืมแล้วก็กลับไปดู Lecture 7 ครับ


สตรัค การส่งผ่านตัวแปร(Struct)คืออะไร

สตรัคเจอร์ หรือกลุ่มข้อมูลชนิดโครงสร้าง คือกลุ่มของข้อมูลที่จัดเข้ารวมเป็นกลุ่มเดียวกันโดยที่ภายในกลุ่มข้อมูลนั้นมีข้อมูลชนิดเดียวกันหรืออาจจะต่างชนิดกันก็ได้

นักศึกษาลองคิดดูน่ะครับว่าภายในสภาบันของเรานั้นมีอะไรอยู่บ้าง เท่าที่คิดได้น่ะครับมี นักศึกษา ป.ตรี,ป.โท,ป.เอก เจ้าหน้าที่,ยาม,ฯลฯ

จะเห็นว่าข้อมูลทั้งหมดนั้นเป็นข้อมูลต่างชนิดกัน แต่มีสิ่งที่เหมือนกันก็คือ อยู่ภายในสถาบันเดียวกัน

ข้อมูลแบบโครงสร้างก็เหมือนกันน่ะครับ เราพยายามที่จะจัดข้อมูลจำนวนมากๆ และแบ่งข้อมูลให้อยู่เป็นกลุ่มๆ

ประโยชน์ของสตรัค

1. จัดกลุ่มของตัวแปรไว้ให้อยู่เป็นพวกๆ เดียวกัน

2. คิดเอาเองน่ะว่ามีประโยชน์อย่างไร


นักศึกษาลองมองดูซิว่า ภายในตัวเรา สามารถที่จะจัดข้อมูลให้เป็นแบบโครงสร้างได้ไหมน่ะครับ


อายุ ภายในตัวเรา สามารถที่จะจัดข้อมูลให้เป็นแบบโครงสร้างได้ไหมน่ะครับ

เพศ

ส่วนสูง

เบอร์โทร

ฯลฯ

ข้อมูลทั้งหมดนี้ก็คือตัวเรานั้นเอง!!!

ซึ่งโครงสร้างข้อมูลจะช่วยในการห่อหุ้มข้อมูล ที่แต่ต่างไว้ภายใต้ชื่อชนิดเดียวกัน


วิธีการกำหนด ภายในตัวเรา สามารถที่จะจัดข้อมูลให้เป็นแบบโครงสร้างได้ไหมน่ะครับstruct

structชื่อ {

ตัวแปร

ตัวแปร

}ชื่อObject;

เช่น

struct children{

int age;

char sex;

char tel[9];

int height;

}Sompong;


ตัวอย่างการใช้งาน ภายในตัวเรา สามารถที่จะจัดข้อมูลให้เป็นแบบโครงสร้างได้ไหมน่ะครับ struct

struct children{

int age;

char sex;

char tel[9];

int height;

}Sompong;

void main(void)

{

cin >> Sompong.age;

cout << Sompong.age;

}

Sompong เป็น Object ของ struct ชื่อ Children เมื่อเราต้องการเข้าถึงข้อมูล ภายใน struct childern จะต้องเข้าถึงผ่าน Object ของ struct

การเข้าถึงข้อมูลจะ ใช้ จุด คั่น


รูปแบบ ภายในตัวเรา สามารถที่จะจัดข้อมูลให้เป็นแบบโครงสร้างได้ไหมน่ะครับ Memory Map ของ Object

struct children{

int age;

char sex;

char tel[4];

int hei;

}Sompong;

Sompong เป็น Object ของ struct ชื่อ Children เมื่อเราต้องการเข้าถึงข้อมูล ภายใน struct childern จะต้องเข้าถึงผ่าน Object ของ struct

children

Somong

hei

tel

hei

age

age

sex

tel

tel

tel


หรืออาจจะใช้วิธีการกำหนด struct แบบนี้ก็ได้ แล้วค่อยไปประกาศ Object ทีหลัง

structชื่อ {

ตัวแปร

ตัวแปร

};

เช่น

struct children{

int age;

char sex;

char tel[9];

int height;

};


ตัวอย่างการใช้งาน struct

struct children{

int age;

char sex;

char tel[9];

int height;

};

void main(void)

{

children Sompong;

cin >> Sompong.age;

cout << Sompong.age;

}

ประกาศ Object Sompong ภายในฟังก์ชันเมน


วิธีการกำหนด class

classชื่อ {

ตัวแปร

ตัวแปร

};

เช่น

class children{

int age;

char sex;

char tel[9];

int height;

};


ตัวอย่างการใช้งาน class

class children{

int age;

char sex;

char tel[9];

int height;

};

void main(void)

{

children Sompong;

cin >> Sompong.age;

cout << Sompong.age;

}

ลองเขียนดูแล้ว Run ดูน่ะครับ ว่าผลเป็นยังงัย !!


ตัวอย่างการใช้งาน class

ต้องแก้เป็นแบบนี้ เราว่า struct จะ default ไว้เป็นแบบ Private

class children{

public:

int age;

char sex;

char tel[9];

int height;

};

void main(void)

{

children Sompong;

cin >> Sompong.age;

cout << Sompong.age;

}



ตาราง แอสกี้( ASCII) ส่วนขยาย


T he e nd
T HE END


Inclass lab1

  • อัลกอริทึม เรียงเลขจากน้อยไปมาก

  • อ่านค่าจำนวนตุวเลขเก็นไว้ในตัวแปร total

  • กำหนด i=0

  • รับค่าตัวเลขมาเก็บไว้ใน data[i]

  • ถ้า i<total

    • i=i+1

    • กระโดดไปยังข้อ 3.

  • 5. กำหนด i=0

  • 6. ถ้า data[i]>data[i+1]

  • สลับค่า data[i] กับ data[i+1]

  • กลับไปยังข้อ 5

  • มิฉะนั้น

  • i=i+1

  • ถ้า i = total – 1 กระโดดไปยัง 7.

  • มิฉะนั้น กลับไปยัง 6.

  • 7. กำหนด i=0

  • 8. พิมพ์ค่า data[i] บนจอภาพ

  • 9. ถ้า i<total

  • i=i+1

  • กระโดดไปยังข้อ 8.

  • 10.return

Inclass Lab1


Inclass lab2
Inclass Lab2 เรียงเลขจากน้อยไปมาก

จงเขียนโปรแกรมเรียงเลขจาก น้อยไปหามาก โดยใช้ Array เป็นตัว เก็บค่า


Inclass lab3
Inclass Lab3 เรียงเลขจากน้อยไปมาก

จงเขียนโปรแกรมบวกเลขขนาดหนึ่งมิติขนาดไม่เกิน 5 หน่วย สองตัวเข้าด้วยกัน ใช้อาร์เรย์ในการเก็บข้อมูลผู้ใช้สามารถ กำหนด ค่าในสมาชิกในเมตริกได้


Inclass lab4
Inclass Lab4 เรียงเลขจากน้อยไปมาก

จงเขียนโปรแกรมคูณเมตริก ขนาด 3 x 3


Inclass lab5
Inclass Lab5 เรียงเลขจากน้อยไปมาก

โปแกรม สุ่ม ตัวเลขที่อยู่ในเมตริก


Inclass lab6
Inclass Lab6 เรียงเลขจากน้อยไปมาก

1. จงเขียนโปรแกรมหาค่าน้อยที่สุดของตัวเลขที่ป้อนเข้าไป 5 ตัว กำหนดให้ใช้เมตริก

เช่น

Please Enter 5 number :

a[0]=2 (แล้วกดEnter)

a[1]=3 (แล้วกดEnter)

a[2]=7 (แล้วกดEnter)

a[3]=1 (แล้วกดEnter)

a[4]=8 (แล้วกดEnter)

Mininum is : a[3]=1 (ผลลัพธ์)

ก่อนทำการส่งให้ Test Driver ดูว่าถูกต้องหรือไม่

( 5 คะแนน)


#include เรียงเลขจากน้อยไปมาก <iostream.h>

#include <iomanip.h>

using namespace std;

int main()

{

const int MAX_ITEMS = 8;

float x[MAX_ITEMS];

float average;

}


ad