2. ฟังก์ชัน getch( );
เป็นฟังก์ชันหนึ่งที่ใช้ในการรับข้อมูลจากคีย์บอร์ดที่เป็นตัวอักขระเพียง 1 ตัวเท่านั้น แล้วโปรแกรมจะทำงานต่อทันที โดยที่ไม่มีการรอการกดปุ่ม Enter จากผู้ใช้งานและตัวอักขระที่กรอกไปจะไม่แสดงผลบนจอภาพด้วยฟังก์ชัน getch( ); มีรูปแบบการใช้งานดังนี้
Variable_Name = getch( ); |
ตัวอย่างโปรแกรม
คุณครูต้องการทราบตัวเลขนำโชค 0-9 ของนักเรียน โดยให้นักเรียนกรอกตัวเลขนำโชคของ
นักเรียน โดยไม่มีการรอกดปุ่ม Enter และแสดงผลบนจอภาพ เช่น Your lucky number is 9 เป็นต้น
จึงให้นักเรียนเขียนโปรแกรมเพื่อแสดงผลข้อมูลดังนี้
“ให้นักเรียนเขียนโปรแกรมโดยแสดงข้อความ Enter your lucky number (0-9) : บนจอภาพ
และรับค่าตัวแปร number ที่เก็บเลขนำโชคของนักเรียน โดยใช้ Format Code ชนิด Character
ด้วยฟังก์ชัน getch( ); จากนักเรียน แล้วแสดงข้อความ Your lucky number is : ตามด้วยค่าของ
ตัวแปร number ที่เก็บเลขนำโชคของนักเรียนบนจอภาพ”
วิเคราะห์ปัญหา (Analysis)
สิ่งที่โจทย์กำหนด :: กำหนดให้ตัวแปร number ที่เก็บเลขนำโชคของนักเรียน โดยใช้ Format
Code ชนิด Character
สิ่งที่โจทย์ต้องการ :: รับค่าตัวแปร number ที่เก็บเลขนำโชคของนักเรียน ด้วยฟังก์ชัน getch( );
จากนักเรียน และแสดงข้อความ Your number is: ตามด้วยค่าจากตัวแปร number ที่เก็บเลขนำ
โชคของนักเรียนบนจอภาพ
การแก้ปัญหา (Problem Solving) ตามแนวทางการคิดเชิงคำนวณ โดยการคิดแบบ "ขั้นตอนวิธี" (Algorithm) ดังนี้
Pseudo Code |
Flowchart |
Algorithm Function getch( );
1. Start
2. char number
3. Print Enter your lucky number (0-9) :
4. Input number By Function getch( );
5. Print Your lucky number is %c
6. End |
|
เขียนโปรแกรม (Coding)
บรรทัดที่ |
โปรแกรม |
1
2
3
4
5
6
7
8
9
|
#include <stdio.h>
#include <conio.h>
char number;
void main( )
{
printf("Enter your lucky number (0-9) : \n ");
number = getch( );
printf("Your lucky number is : %c",number);
}
|
อธิบายโปรแกรม
บรรทัดที่ 1 |
เรียกใช้ไลบรารีฟังก์ชัน stdio.h |
บรรทัดที่ 2 |
เรียกใช้ไลบรารีฟังก์ชัน conio.h |
บรรทัดที่ 3 |
สร้างตัวแปร number ชนิด char |
บรรทัดที่ 4 |
เข้าสู่โปรแกรมหลัก void main( ) |
บรรทัดที่ 5 |
เริ่มต้นการทำงานของโปรแกรมหลัก void main( ) ด้วยเครื่องหมาย { |
บรรทัดที่ 6 |
แสดงข้อความ "Enter your lucky number (0-9) : " บนจอภาพ |
บรรทัดที่ 7 |
รับค่าตัวแปร number ด้วยฟังก์ชัน getch( ) |
บรรทัดที่ 8 |
แสดงข้อความ "Your lucky number is : " ตามด้วยค่าของตัวแปร number |
บรรทัดที่ 8 |
สิ้นสุดการทำงานของโปรแกรมหลัก int main( )
ด้วยเครื่องหมาย } |
ผลลัพธ์บนจอภาพ
เมื่อทำการรันโปรแกรมแล้วจะมีข้อความให้นักเรียนกดตัวเลขนำโชคระหว่าง 0-9 เมื่อนักเรียน
กดตัวเลขแล้ว จะไม่มีการแสดงตัวเลขนั้น ๆ ออกมา และไม่ต้องกดปุ่ม Enter ด้วย หลังจากนั้นก็
แสดงค่าของตัวเลขนำโชคที่กดบนจอภาพอีกครั้ง
Enter your lucky number (0-9) :
Your lucky number is 6 |
———————————————————————————————————————————
|