5.ตัวแปร (Variable) ,ข้อมูล(Data) ในภาษา C++

ตัวแปร (Variable) การประกาศตัวแปร ในภาษา C++

การประกาศตัวแปรใน C++
การประกาศตัวแปร คือ เขียน Source Code การกำหนดในโปรแกรมว่า เราจะทำการใช้ข้อมูลอะไรบ้างในโปรแกรมของเรา ดังนั้นหลังจากที่เราอ่านโจทย์แล้วสามารถแยกได้ว่าอะไรคือ ข้อมูล ตรงส่วนนี้เราก็สามารถทำได้สบายๆ ครับ
*** คุณผู้อ่านท่านใดยังไม่สามารถแยก ข้อมูล ออกจากโจทย์ได้กลับไปอ่าน สอน C++ : บทที่ 3 ข้อมูล ชนิดของข้อมูล และ ชนิดข้อมูลพื้นฐาน ( Primitive data type ) ก่อนนะครับ
รูปแบบการประกาศตัวแปร
ชนิดข้อมูล ชื่อตัวแปร ;
datatype variablename ;
ตัวอย่างการใช้
int x;
float number;

จากตัวอย่างที่ 1
ถ้าเราต้องการเขียนโปรแกรมบวกเลขสองจำนวน จากนั้น ทำการแสดงผลบวก
วิเคราะห์จากโจทย์
โปรแกรมนี้มีข้อมูล 3 ตัว
1) ตัวเลขที่จะนำมาบวกตัวแรก  -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 1 , 1.1 ,10.1 เป็นต้น
int num1; หรือ  float num1; 

2) ตัวเลขที่จำนำมาบวกตัวที่สอง -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 2 , 2.1 ,20.1 เป็นต้น
int num2; หรือ  float num2; 

3) ผลลัพธ์ของการบวก -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 3 , 3.1 ,30.1 เป็นต้น
int result; หรือ  float result; 
จากตัวอย่างที่ 2
ถ้าเราต้องการเขียนโปรแกรมหาพื้นที่สี่เหลี่ยม ซึ่งใช้สูตร กว้าง x ยาว จากนั้นทำการแสดงผล
วิเคราะห์จากโจทย์
โปรแกรมนี้มีข้อมูล 3 ตัว
1) ความกว้าง -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 5 , 5.1 ,50.1 เป็นต้น
int width; หรือ  float width;

2) ความยาว -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 6 , 6.1 ,60.1 เป็นต้น
int long; หรือ  float long;

3) พื้นที่ -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 30 , 30.1 ,300.1 เป็นต้น
int area; หรือ  float area;

เงื่อนไขการ ประกาศตัวแปร
จะต้อง ประกาศตัวแปรอยู่ายในวงเล็บปีกกา { } ของ main() (แต่ในบทต่อๆ ไปก็จะมีวิธีอื่นๆ อีก)
#include <iostream>
using namespace std;
int main()
{
  
  int number1;
    float number2;
 
    cin.get();
 
    return 0;
}
ชื่อตัวแปร ต้องเป็น ตัวอักษร (a - z หรือ A - Z) หรือ (Underscores) หรือ ตัวเลข (0 - 9) เท่านั้น แต่ห้ามขึ้นต้นตัวเลข
#include <iostream>
using namespace std;
int main()
{
  
  int number1;
    float Number2;

   bool  _isnumber;
 
    cin.get();
 
    return 0;
}
ชื่อตัวแปร ต้อง ไม่ซ้ำกับ Keyword ในภาษา C++ (เรื่อง Keyword ผมจะทำการเขียนในบทต่อๆ ไป)
#include <iostream>
using namespace std;
int main()
{
    int number1;
    float Number2;
   bool  _isnumber;
   bool  continue; // Error เพราะ  continue คือ Keyword
   bool  and; // Error เพราะ  and คือ Keyword

    cin.get();
 
    return 0;
}
ชื่อตัวแปร ระหว่าง ตัวอักษรใหญ่ และ ตัวอักษรเล็ก ถือว่าเป็นคนละตัวกัน (Case Sensitive)
#include <iostream>
using namespace std;
int main()
{
    
int number1;
    int Number1;
    int NUMBER1;

    float Number2;
   bool  _isnumber;

    cin.get();
 
    return 0;
}

ลองเขียน Source Code ประกาศตัวแปร
ขั้นที่ 1)
ทำการสร้าง Source File ใหม่ใน Dev_C++
สอน C++ : บทที่ 4 ตัวแปร (Variable) การประกาศตัวแปร และการตั้งค่าเริ่มต้น

ขั้นที่ 2)
ทำการ Copy Source code ลงใน พื้นที่การเขียน Source code
#include <iostream>
using namespace std;
int main()
{
    int num1;
    float num2;
   bool isprogram;
   char status;
   
cout << "Hello this C++ programming Lesson 4.";
 
    cin.get();
 
    return 0;
}
สอน C++ : บทที่ 4 ตัวแปร (Variable) การประกาศตัวแปร และการตั้งค่าเริ่มต้น

ขั้นที่ 3)
Save Source file ชื่อ test_declare_variable.cpp และ ทำการ Complie และ Run เพื่อดูผลลัพธ์
สอน C++ : บทที่ 4 ตัวแปร (Variable) การประกาศตัวแปร และการตั้งค่าเริ่มต้น

อธิบาย Source Code เพิ่มเติม
#include <iostream>
using namespace std;
int main()
{
    int num1;
 //ประกาศตัวแปร ชื่อ num1 ชนิดข้อมูลเป็น ตัวเลขจำนวนเต็ม
    float num2; //ประกาศตัวแปร ชื่อ num2 ชนิดข้อมูลเป็น ตัวเลขจำนวนทศนิยม
   bool isprogram; //ประกาศตัวแปร ชื่อ isprogram ชนิดข้อมูลเป็น ค่าความจริง
   char status; //ประกาศตัวแปร ชื่อ status ชนิดข้อมูลเป็น อักขระ
   cout << "Hello this C++ programming Lesson 4."//แสดงผลข้อความ
 
    cin.get();
 
    return 0;
}
จะสังเกตได้ว่า เมื่อเรา Run ออกมา ส่วนการประกาศตัวแปรไม่ได้ถูกแสดงผลลัพธ์ออกมา นั่นก็เพราะ คำสั่งที่ใช้ในการแสดงผล คือคำสั่ง cout เท่านั้น เพราะฉะนั้นอย่าสับสนนะครับ เพราะ การประกาศตัวแปร คือการบอกโปรแกรมของเราว่า เราจะใช้ข้อมูลอะไรบ้าง เท่านั้นครับ
อ่านต่อคลิ้กลิงค์นี้นะครับ http://www.comscicafe.com/article/6/cpp-lesson-4-tutortong#.XqzPZBQzbcc



 ข้อมูล ชนิดของข้อมูล และ ชนิดข้อมูลพื้นฐาน ( Primitive data type )  

ข้อมูล
ข้อมูลในที่นี้หมายถึง ค่าต่างๆ ที่มีส่วนเกี่ยวข้องกับโปรแกรมที่เราจะเขียนขึ้น ทั้งในส่วน ข้อมูลเข้า (Input) ประมวลผล (Process) และ ผลลัพธ์ (Output)
ตัวอย่างที่ 1
ถ้าเราต้องการเขียนโปรแกรมบวกเลขสองจำนวน จากนั้น ทำการแสดงผลบวก
วิเคราะห์จากโจทย์
โปรแกรมนี้มีข้อมูล 3 ตัว
1) ตัวเลขที่จะนำมาบวกตัวแรก
2) ตัวเลขที่จำนำมาบวกตัวที่สอง
3) ผลลัพธ์ของการบวก
ตัวอย่างที่ 2
ถ้าเราต้องการเขียนโปรแกรมหาพื้นที่สี่เหลี่ยม ซึ่งใช้สูตร กว้าง x ยาว จากนั้นทำการแสดงผล
วิเคราะห์จากโจทย์
โปรแกรมนี้มีข้อมูล 3 ตัว
1) ความกว้าง
2) ความยาว
3) พื้นที่
ซึ่งการอ่านโจทย์ แล้วจะสามารถตีโจทย์ได้ว่า " มีข้อมูล " กี่ตัวนั้น ต้องอาศัย ประสบการณ์การทำโจทย์พอสมควรครับ เพราะฉะนั้นจุดนี้น้องๆ ที่เพิ่งหัดใหม่ ต้องพยายามทำโจทย์เยอะๆ และไม่ท้อครับ ^^

ชนิดของข้อมูล
ชนิดของข้อมูล คือ การแยกแยะว่าข้อมูลที่เราได้มาจากโจทย์นั้น เป็นประเภทไหน ซึ่งในเบื้องต้นนี้เราจะมาทำความรู้จักกับ ชนิดข้อมูลพื้นฐาน กันก่อนครับ
ตัวอย่างที่ 1
ถ้าเราต้องการเขียนโปรแกรมบวกเลขสองจำนวน จากนั้น ทำการแสดงผลบวก
วิเคราะห์จากโจทย์
โปรแกรมนี้มีข้อมูล 3 ตัว
1) ตัวเลขที่จะนำมาบวกตัวแรก  -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 1 , 1.1 ,10.1 เป็นต้น
2) ตัวเลขที่จำนำมาบวกตัวที่สอง -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 2 , 2.1 ,20.1 เป็นต้น
3) ผลลัพธ์ของการบวก -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 3 , 3.1 ,30.1 เป็นต้น
ตัวอย่างที่ 2
ถ้าเราต้องการเขียนโปรแกรมหาพื้นที่สี่เหลี่ยม ซึ่งใช้สูตร กว้าง x ยาว จากนั้นทำการแสดงผล
วิเคราะห์จากโจทย์
โปรแกรมนี้มีข้อมูล 3 ตัว
1) ความกว้าง -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 5 , 5.1 ,50.1 เป็นต้น
2) ความยาว -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 6 , 6.1 ,60.1 เป็นต้น
3) พื้นที่ -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 30 , 30.1 ,300.1 เป็นต้น
เคล็ดลับการหา ชนิดข้อมูล ง่ายๆ คือให้คุณลอง เขียนตัวอย่างข้อมูลที่เป็นไปได้ อย่างที่ผมได้ยกตัวอย่างให้ดูเพราะเมื่อเราเห็นตัวอย่างข้อมูลแล้ว ก็จะเป็นการง่ายที่จะแยกแยะ ออกได้ว่า ข้อมูล นี้มี ชนิดข้อมูล เป็นอะไร


ชนิดข้อมูลพื้นฐาน ( Primitive data type ) ในภาษา C++
ชนิดข้อมูลพื้นฐาน คือ ข้อมูลประเภท ตัวเลขจำนวนเต็ม (Interger) , ตัวเลขจำนวนทศนิยม (Floating point) , ค่าความจริง (Boolean) และ อักขระ (Character)
ชนิดข้อมูลSource Codeข้อมูลตัวอย่างข้อมูล
จำนวนเต็ม
(Integer)
intตัวเลขจำนวนเต็ม , จำนวนลูกค้า , จำนวนสินค้าที่ขายได้ เป็นต้น1 , 15 , 100 , 1000 , 2150
จำนวนทศนิยม
(Floating point)
floatตัวเลขทศนิยม , เกรดเฉลี่ย , จำนวนเงิน เป็นต้น1.1 , 3.45
ค่าความจริง
(Boolean)
boolมากกว่า 10 หรือไม่ , มีค่าเท่ากับ 10 หรือไม่ , เป็นตัวอักษร 'A' หรือไม่ เป็นต้นTrue , False
อักขระ
(Character)
charตัวอักษร , สถานะ , เกรด เป็นต้น'a' , 'B' , 'A'
ตัวอย่างที่ 1
ถ้าเราต้องการเขียนโปรแกรมบวกเลขสองจำนวน จากนั้น ทำการแสดงผลบวก
วิเคราะห์จากโจทย์
โปรแกรมนี้มีข้อมูล 3 ตัว
1) ตัวเลขที่จะนำมาบวกตัวแรก  -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 1 , 1.1 ,10.1 เป็นต้น
int หรือ  float

2) ตัวเลขที่จำนำมาบวกตัวที่สอง -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 2 , 2.1 ,20.1 เป็นต้น
int หรือ  float

3) ผลลัพธ์ของการบวก -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 3 , 3.1 ,30.1 เป็นต้น
int หรือ  float
ตัวอย่างที่ 2
ถ้าเราต้องการเขียนโปรแกรมหาพื้นที่สี่เหลี่ยม ซึ่งใช้สูตร กว้าง x ยาว จากนั้นทำการแสดงผล
วิเคราะห์จากโจทย์
โปรแกรมนี้มีข้อมูล 3 ตัว
1) ความกว้าง -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 5 , 5.1 ,50.1 เป็นต้น
int หรือ  float

2) ความยาว -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 6 , 6.1 ,60.1 เป็นต้น
int หรือ  float

3) พื้นที่ -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 30 , 30.1 ,300.1 
int หรือ  float

ในบทนี้ยังไม่ครอบคลุม ข้อมูลทุกประเภทนะครับ เพราะในบทนี้เราจะสนใจเฉพาะ พื้นฐานเท่านั้น ให้ท่านผู้อ่านจำและทำความเข้าใจพื้นฐานง่ายๆ เหล่านี้ให้แม่น ก่อนนะครับ ^^


  อ่านต่อคลิก.... http://www.comscicafe.com/article/5/cpp-lesson-3-tutortong#.XqzXRhQzbcc 


ตัวแปรและประเภทข้อมูล

ทำความรู้จักกับตัวแปรในภาษา C++

ตัวแปรนั้นเป็นสิ่งที่สำคัญสำหรับในการเขียนโปรแกรมทุกภาษา มันถูกใช้เพื่อเก็บข้อมูลในหน่วยความจำและช่วยให้เราสามารถจัดการกับข้อมูลได้อย่างง่ายดาย
ยกตัวอย่างเช่น ถ้าคุณต้องการที่จะจดจำบางอย่าง คุณจะต้องเขียนมันลงไปบนสมุดบันทึกของคุณ เพราะนั่นจะทำให้คุณไม่ลืมเมื่อคุณบันทึกลงไปคุณสามารถนำมาใช้เมื่อไหร่ก็ตามที่คุณต้องการ ดังนั้นในการเขียนโปรแกรมคอมพิวเตอร์ ตัวแปรถูกนำมาใช้ในแนวคิดเดียวกัน
int a = 2;
int b = 2;

int sum = a + b;
ในตัวอย่าง เราเก็บค่า 2 ในตัวแปร a และ b เพื่อหาผลรวมของตัวแปร a และตัวแปร b เราจำเป็นต้องจดจำ 2 ไว้ใสตัวแปร a ก่อนจนกว่าเราจะมีค่าของ b และหลังจากนั้นเราได้ทำการรวมค่าของตัวแปรทั้งสองไว้ในอีกตัวแปรคือ sum
คุณจะเห็นคำว่า int ก่อนชื่อของตัวแปรซึ่ง นั่นเราเรียกว่าคำสั่งที่ใช้กำหนดประเภทของตัวแปร หรือการประกาศประเภทของตัวแปร ถ้าคุณยังไม่เข้าใจในตอนนี้ ไม่ต้องกังวล เราจะเรียนในต่อไปของบทเรียนนี้

ประเภทข้อมูล

ในภาษา C++ มีตัวแปรหลายประเภทที่ช่วยให้เราสามารถจัดการกับข้อมูลประเภทต่างๆ เช่น ฺBoolean, Number, Character, String และ Object เป็นต้น
อ่านต่อคลิ้กhttp://marcuscode.com/lang/cpp/variables-and-types

การประกาศตัวแปรประเภทต่าง ๆ เช่น 1) int (integer) สำหรับเก็บตัวเลขจำนวนเต็ม 2) double สำหรับเก็บเลขที่มีจุดทศนิยม 3) char สำหรับเก็บตัวอักษรหนึ่งตัว 4) string สำหรับเก็บตัวอักษรหลาย ๆ ตัว 5) การตั้งชื่อตัวแปร (case sensitive) ในภาษา C++


วิโอคลิปเรื่องตัวแปร
https://www.youtube.com/watch?v=m9hGtyXea1I&t=237s



คัดลอกตัวอย่างโปรแกรมได้เลยนะครับ


#include <iostream>
using namespace std;

int main() {
    // int (integer), double/float
    // char, string

    // type var_name
    int a; // declaration
    int m, n;

    a = 5; // assignment
    a = 5 *3;

    int b = 10;

    int d = 3.75; // implicit conversion
    cout << "d = " << d << endl;

    double x = 3.75;
    cout << "x = " << x << endl;

    double y;

    int u;
    cout << "u = " << u << endl; // undefined behavior

    char grade;
    grade = 'A';
    cout << grade << endl;

    string movie;
    movie = "Finding Nemo";
    cout << movie << endl;

    string flower = "lily"; // declare + assign
    cout << flower << endl;

    double w, h;
    cout << "enter width = ";
    cin >> w;
    cout << "enter height = ";
    cin >> h;
    double area = w * h;
    cout << "w x h = " << area << endl;
    return 0;
}

https://www.youtube.com/watch?v=K7vofDlrMqg