การรับและแสดงผลข้อมูล

การเขียนโปรแกรมคือ Input และ Output ของโปรแกรม เพราะว่าทุกๆ โปรแกรมจำเป็นต้องติดต่อกับผู้ใช้ ในภาษา C++ จะใช้ Stream เพื่อดำเนินการกับ Input และ Output ของโปรแกรม ซึ่ง Stream นั้นเป็นไลบรารี่มาตรฐานของภาษา C++ เราใช้ cin stream สำหรับการ Input และ cout stream สำหรับ Output และเพื่อใช้โดยไม่ต้องมี std prefix เราจำเป็นต้องใช้คำสั่งนี้ในโปรแกรมของเรา 

1. รูปแบบการแสดงผล cout <<

โดยทั่วไป การแสดงผลมักจะถูกแสดงผลออกทางหน้าจอของคอมพิวเตอร์ cout เป็น Stream object ที่เราสามารถแสดงผลตัวอักษรใดๆ ออกทางจอภาพได้ ตัวอย่างของโปรแกรมที่มีการแสดงผลลัพธ์ออกมา

#include <iostream>

using namespace std;

int main()   {

    int myNumber = 5;

    cout << "This is my sentence." << endl;

    cout << 1234 << endl;

    cout << myNumber << endl;

    return 0;

}

จากตัวอย่าง เราได้แสดงตัวอักษรออกทางจอภาพในบรรทัดแรก ต่อมาเป็นตัวเลข และสุดท้ายเราได้แสดงค่าของตัวแปร myNumber ดังนั้น เราสามารถใช้คำสั่ง cout เพื่อแสดงผลตัวอักษร ตัวแปรหรือสิ่งต่างๆ ออกทางจอภาพได้ ในการใช้งานคำสั่ง cout จะตามด้วยเครื่องหมายน้อยกว่าสองอัน << และตามด้วยข้อความที่จะแสดง คุณสามารถใส่ได้หลายพารามิเตอร์โดยการคั่นด้วยเครื่องหมายดังกล่าวไปเรื่อยๆ และข้างล่างนี้เป็นผลลัพธ์ของโปรแกรม

This is my sentence.

1234

5
............................

endl มีความหมายคล้าย ๆ กับการกดปุ่ม Enter เพื่อขึ้นบรรทัดใหม่ในโปรแกรมพิมพ์เอกสาร

2. รูปแบบการรับค่า cin >>

แค่การแสดงผลนั้นยังไม่เพียงพอ ในภาษา C++ ยังมี cin stream object ซึ่งทำให้เราสามารถที่จะรับค่าจากคีย์บอร์ดได้ เรามักจะใช้คำสั่ง cin กับตัวแปร มาดูตัวอย่างการใช้

#include <iostream>

#include <string>    //ใช้เพื่อเรียกการรับค่าข้อความ

using namespace std;

int main()   {

    int age;

    string name;

    cout << "What is your name: ";

    cin >> name;    // รับข้อมูลชื่อทางคีย์บอร์ด

    cout << "Enter you age: ";

    cin >> age;    // รับข้อมูลอายุทางคีย์บอร์ด

    cout << "Hi " << name ;

    cout << ", your age is " << age ;

    return 0;

}

หลังจากโปรแกรมรัน Input อันแรกคือ cin >> name มันจะรอรับค่าจากคีย์บอร์ดจนกว่าเราจะกดปุ่ม Enter และนี่หมายถึงการรับค่าเสร็จสิ้น และข้อมูลจะถูกบันทึกลงในตัวแปร name สำหรับ Input อันที่สองโปรแกรมที่จะทำแบบเดียวกัน แต่มันจะบันทึกข้อมูลลองในตัวแปร age แทน ในการรับค่าคุณจะสังเกตุได้ว่าเราใช้เครื่องหมายมากกว่าสองอันแทน >>

ข้างล่างนี้เป็นผลลัพธ์ของโปรแกรม

  What is your name: Boon

  Enter you age: 18

Hi Boon, your age is 18.

สามารถกดปุ่ม Spacebar ได้สำหรับการรับค่าถัดไป ใน cin steam object การรับค่าจะจบเมื่อมันพบกับปุ่ม Enter (Carriage return) หรือ Space key เพื่อเป็นการสิ้นสุดการรับค่าจาก Keyboard stream ต่อไปมาดูตัวอย่างของโปรแกรมหาผลรวมของตัวเลขสามตัวที่รับค่าจากคีย์บอร์ด

#include <iostream>

using namespace std;

int main()

{

    int a, b, c;

int sum;

    cout << "กรอกค่าตัวเลข 3 ค่า[a, b, c]: ";

    cin >> a >> b >> c;    //รับค่าทางคีย์บอร์ด 3 ค่า a, b, c

    sum = a + b + c;

    cout << "ผลรวมของ a,b,c = " << sum << endl;

    return 0;

}

ผลลัพธ์ของโปรแกรม

กรอกค่าตัวเลข 3 ค่า [a, b, c]: 2 3 4

ผลรวมของ a,b,c = 9

--------------------------------------------------------------

ผลลัพธ์ของโปรแกรม

กรอกค่าตัวเลข 3 ค่า [a, b, c]: 10 5 2

ผลรวมของ a,b,c = 17

3. Escape characters

ตัวอักษรที่ขึ้นต้นด้วยเครื่องหมาย Slash (\) และตามด้วยตัวอักษรหนึ่งตัวนั้นเรียกว่า Escape characters มันเป็นตัวอักษรที่ใช้ในการแสดงการขึ้นบรรทัดใหม่ เครื่องหมาย Quote หรือตัวอักษรที่สำคัญอื่นๆ ที่ไม่สามารถแสดงได้ในแบบปกติ หรือว่าถูกใช้ในการกำหนดไวยากรณ์ของภาษา เช่น เครื่องหมาย " จะใช้กับข้อความ ดังนั้น ในการใช้ตัวอักษรเหล่านี้จำเป็นต้องทำการ Escape มันด้วยเครื่องหมาย \ เสมอ รายการของ Escape characters ในภาษา C++

Escape character


\n

\t

\\

\'

\"

ความหมาย


New line

tab

Backslash

Single quotation mark

Double quotation mark

ต่อไปมาดูตัวอย่างการใช้งาน Escape character ในภาษา C++ ซึ่งเป็นโปรแกรมเกี่ยวกับการแสดงผล

#include <iostream>

using namespace std;

int main()

{

    cout << "\"The most popular language in 2016\".\n";

    cout << "#\tLanguage\tYear\n";

    cout << "1\tC\t1972\n";

    cout << "2\tJava\t1995\n";

    cout << "3\tPython\t1991\n";

    cout << "4\tC++\t1983\n";

    cout << "5\tR\t1993\n";

    return 0;

}

ในตัวอย่าง เป็นการใช้งาน Escape character สำหรับแสดงตัวอักษรต่างๆ เราได้แสดงตัวอักษร Quote ด้วย \" แสดง Tab ด้วย \t และการขึ้นบรรทัดใหม่ด้วย \n

นี่เป็นผลลัพธ์การทำงานของโปรแกรม

ในบทนี้ เราได้ครอบคุมพื้นฐานของการรับค่าและการแสดงผลในภาษา C++ เราได้พูดถึงการแสดงผลโดยการใช้ cout และการรับค่าด้วย cin ซึ่งเป็นสิ่งที่สำคัญในการเขียนโปรแกรมที่มีการติดต่อกับผู้ใช้เพื่อรับข้อมูลและแสดงผล และ Escape characters

จัดทำโดย นางสาวทิพย์สุคนธ์ พันธ์กิ่ง กลุ่มสาระการเรียนรู้วิทยาศาสตร์และเทคโนโลยี 

โรงเรียนบุญวัฒนา สำนักงานเขตพื้นที่การศึกษามัธยมศึกษา นครราชสีมา