Copyright (c) 2006by Sasalak Tongkaw8
COMPUTER PROGRAMMING AND ALGORITH
ตัวอย่าง ผังงานปกติ
EOFEOF
Print “END”Print “END”
Print ANSPrint ANS
StartStart
Yes
ANS=number*2ANS=number*2
EndEnd
No
Get numberGet number
Get numberGet numberNumber=0Number=0
แยกเป็นโปรแกรมย่อยชื่อ
Double_it
9.
Copyright (c) 2006by Sasalak Tongkaw9
COMPUTER PROGRAMMING AND ALGORITH
โปรแกรม Double1.cpp
#include<stdio.h>
#include<conio.h>
void main()
{
int number,ans;
clrscr();
printf("Number=");
scanf("%d",&number);
do {
ans=number*2; //แยกไปเป็นโปรแกรมย่อย
Double_it
printf("ANS=%dn",ans);
printf("Number=");
scanf("%d",&number);
} while (number!=0);
}
10.
Copyright (c) 2006by Sasalak Tongkaw10
COMPUTER PROGRAMMING AND ALGORITH
ตัวอย่าง ผังงานมีโปรแกรมย่อย
Double_It
EOFEOF
Print “END”Print “END”
Print ANSPrint ANS
StartStart
Yes
EndEnd
No
Get numberGet number
Get numberGet number
Double_itDouble_it
Double_ItDouble_It
Double_itDouble_it
ReturnReturn
Number=0Number=0
11.
Copyright (c) 2006by Sasalak Tongkaw11
COMPUTER PROGRAMMING AND ALGORITH
โปรแกรม Double2.cpp
#include<stdio.h>
#include<conio.h>
int number,ans;
void double_it()
{
ans=number*2;
}
void main()
{ clrscr();
printf("Number=");
scanf("%d",&number);
do {
double_it();
printf("ANS=%dn",ans);
printf("Number=");
scanf("%d",&number);
} while (number!=0);
}
12.
Copyright (c) 2006by Sasalak Tongkaw12
COMPUTER PROGRAMMING AND ALGORITH
ตัวแปรที่ใช้งานในโปรแกรม
• ตัวแปรแบบโกลบอล global variable
• ตัวแปรแบบโลคอล local variable
13.
Copyright (c) 2006by Sasalak Tongkaw13
COMPUTER PROGRAMMING AND ALGORITH
ตัวแปรแบบโกลบอล Global
Variable
• เป็นตัวแปรที่ใช้ตลอดทั้ง
โปรแกรม ทั้งในโปรแกรมหลัก
และในโปรแกรมย่อย
• ประกาศไว้ภายนอกโปรแกรม
หลักเพียงครั้งเดียว
14.
Copyright (c) 2006by Sasalak Tongkaw14
COMPUTER PROGRAMMING AND ALGORITH
Global Variable
#include<stdio.h>
#include<conio.h>
int number,ans;
Function 1
Function 2
Main program
15.
Copyright (c) 2006by Sasalak Tongkaw15
COMPUTER PROGRAMMING AND ALGORITH
โปรแกรม Double2.cpp
#include<stdio.h>
#include<conio.h>
int number,ans;
void doubleit()
{
ans=number*2;
}
void main()
{ clrscr();
printf("Number=");
scanf("%d",&number);
do {
doubleit();
printf("ANS=%dn",ans);
printf("Number=");
scanf("%d",&number);
} while (number!=0);
}
Global variable
Function
Main Program
16.
Copyright (c) 2006by Sasalak Tongkaw16
COMPUTER PROGRAMMING AND ALGORITH
ตัวแปรแบบโลคอล Local Variable
• ตัวแปรที่ใช้ในโพรซีเจอร์หรือ
ฟังก์ชัน
• การเปลี่ยนแปลงค่าของตัวแปรโล
คอลจะไม่กระทบต่อโปรแกรม
หลักข้างนอก
17.
Copyright (c) 2006by Sasalak Tongkaw17
COMPUTER PROGRAMMING AND ALGORITH
โปรแกรม Double1.cpp
#include<stdio.h>
#include<conio.h>
void main()
{
int number,ans;
clrscr();
printf("Number=");
scanf("%d",&number);
do {
ans=number*2;
printf("ANS=%dn",ans);
printf("Number=");
scanf("%d",&number);
} while (number!=0);
}
Local Variable
Copyright (c) 2006by Sasalak Tongkaw19
COMPUTER PROGRAMMING AND ALGORITH
โปรแกรมโปรแกรม EasyFunc1.cppEasyFunc1.cpp
#include<stdio.h>
void main()
{
printf(“Beginn”);
printf(“==== MENU ====nn”);
printf(“a) Say Hellon”);
printf(“b) Say Good Byen”);
printf(“Select a or b : n”);
printf(“ENDn”);
}
#include<stdio.h>
void main()
{
printf(“Beginn”);
printf(“==== MENU ====nn”);
printf(“a) Say Hellon”);
printf(“b) Say Good Byen”);
printf(“Select a or b : n”);
printf(“ENDn”);
}
Begin
==== MENU ====
a) Say Hello
b) Say Good Bye
Select a or b :
END
Begin
==== MENU ====
a) Say Hello
b) Say Good Bye
Select a or b :
END
จงเขียนฟังก์ชัน showmenu();
20.
Copyright (c) 2006by Sasalak Tongkaw20
COMPUTER PROGRAMMING AND ALGORITH
เฉลย โปรแกรมเฉลย โปรแกรม EasyFunc2.cppEasyFunc2.cpp
#include<stdio.h>
void showmenu()
{
printf(“==== MENU ====nn”);
printf(“a) Say Hellon”);
printf(“b) Say Good Byen”);
printf(“Select a or b : n”);
}
Void main()
{
printf(“Beginn”);
showmenu();
printf(“ENDn”);
}
#include<stdio.h>
void showmenu()
{
printf(“==== MENU ====nn”);
printf(“a) Say Hellon”);
printf(“b) Say Good Byen”);
printf(“Select a or b : n”);
}
Void main()
{
printf(“Beginn”);
showmenu();
printf(“ENDn”);
}
Begin
==== MENU ====
a) Say Hello
b) Say Good Bye
Select a or b :
END
Begin
==== MENU ====
a) Say Hello
b) Say Good Bye
Select a or b :
END
2
1
3
4
5
6
7
8
9
10