ป้ายกำกับ

วันจันทร์ที่ 21 กันยายน พ.ศ. 2558

วันอังคารที่ 8 กันยายน พ.ศ. 2558

Algorithm Pseudo Code and Flowchart

Algorithm Pseudo Code and Flowchart
(อัลกอริทึม, รหัสเทียม ซูโดโค้ด, ผังงานโฟลว์ชาร์ต)




อัลกอริทึม Algorithm 
คือ ขั้นตอนวิธีที่ประกอบด้วยชุดคำสั่งเป็นขั้นเป็นตอนที่ชัดเจน และรับประกันว่าเมื่อได้ปฏิบัติถูกต้องตามขั้นตอนจนครบก็จะได้ผลลัพธ์ที่ถูกต้องตามต้องการและนำพาไปสู่การแก้ปัญหา 
เช่น เอามาม่าไปต้มรับประทาน


รหัสเทียม หรือซูโดโค้ด Pseudo Code
คือ แสดงขั้นตอนวิธีการที่ใช้ภาษาเขียนที่เข้าใจได้ง่าย เป็นขั้้นเป็นตอน ปิดท้ายด้วยคำว่าจบการทำงานขึ้นอยู่กับความสะดวกของผู้เขียนและกิจกรรมที่จะนำเสนอ มักใช้รูปแบบคล้ายประโยคเพื่ออธิบายรายละเอียดของอัลกอริทึม




ตัวอย่างการแปลง อัลกอริทึม แปลงเป็น ซูโดโค้ด: ต้มมาม่า
1. หามาม่าไว้ 1 ซอง
2. ฉีกซองมาม่าและเทลงถ้วยเปล่า
3. ฉีกซองเครื่องปรุง แล้วเทลงถ้วยเดิม
4. ต้มน้ำให้ร้อนได้ที่ แล้วเทลงถ้วย
5. ปิดฝาไว้ 3 นาที
6. เปิดฝา แล้วรับประทาน
7. จบการทำงาน * สังเกตุว่าต้องจบด้วยคำว่า จบการทำงาน


ผังงาน (Flowchart)
การเขียนขั้นตอนวิธีในแบบสัญลักษณ์ ช่วยให้ไม่ต้องตีความ




ตัวอย่างการต้มมาม่า(อย่างง่าย)




ไม่เอาไม่ร้อง มันไม่ยากอย่างที่คิด...

วันอาทิตย์ที่ 18 มกราคม พ.ศ. 2558

โค้ดการคำนวนแบบใช้ ตัวแปรเข้าช่วย

โค้ดการคำนวนแบบใช้ ตัวแปรเข้าช่วย ยังไงลองทำดูนะครับ

#include <iostream>
using namespace std;
int main()
{
    int 
s_width; //กำหนดตัวแปร 2 ตัว
    int 
s_long;
    cout << "
Find Area Program " << endl; ----------------// แสดงค่าทางหน้าจอเพื่อถามเราว่า หาพื้นที่
    cout << "Width : "; -------------------------------------------// ค่าความกว้าง
    cin >> s_width; ------------------------------------------------// รับค่าทางคีย์บอร์ด
    
cout << "Long : "; -------------------------------------------// ค่าความยาว
    cin >> s_long; -------------------------------------------------// รับค่าทางคีย์บอร์ด
    cout << "Area : " <<
 (s_width * s_long) << " unit " << endl; // คำนวนในโยคนี้

    system("pause");
}

   ตัวแปร หมายถึงชื่อเรียกแทนพื้นที่เก็บของข้อมูลในหน่วยความจำ ซึ่งจะมีชนิดของข้อมูลมีชนิดของข้อมูล หรือรูปแบบของตัวแปรคือ char, int, long, float, double, unsigned int, unsigned long int โดยชื่อของตัวแปรนี้ เราสามารถกําหนดเป็นกลุ่มตัวอักษรที่ผู้เขียนโปรแกรมสามารถกําหนดขึ้นเองได้ โดยมีข้อกําหนดดังนี้ • ตัวอักษรภาษาอังกฤษตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ ในภาษาC++ จะถือว่าเป็นตัวแปรคนละตัวกัน เช่น test และ Test จะเป็นตัวแปรคนละตัวกัน • ตัวอักษรตัวแรกต้องเป็นตัวอักษรหรือ _ (underline character) จะเป็นตัวเลขไม่ได้ • ตัวอักษรที่ไม่ใช่ตัวแรกจะเป็นตัวอักษรหรือ _ หรือตัวเลขก็ได้ ชื่อของตัวแปรที่ห้ามตั้งซ้ำกับคําสงวนของ C++ asm, auto, bool, break, case, catch, char, class, const, const_cast, continue, default, delete, do, double, dynamic_cast, else, enum, explicit, extern, false, float, for, friend, goto, if, inline, int, long, mutable, namespace, new, operator, private, protected, public, register, reinterpret_cast, return, short, signed, sizeof, static, static_cast, struct, switch, template, this, throw, true, try, typedef, typeid, typename, union, unsigned, using, virtual, void, volatile, wchar_t การประกาศตัวแปร 



การเขียนโปรแกรมขนาดเล็กในแต่ละครับควรศึกษาวางแผนการดีๆสะก่อนว่าตัวแปรที่เราใช้นั้นควรใช้ชนิดใดนั้นเอง (อ้วกกกกกกก)

Program Flowchart

ผังงานโปรแกรม ( Program Flowchart )

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

ไฟล์ข้อมูล (ดาวน์โหลดข้อมูลในการเรียน)
 เครดิต : it.nrru.ac.th

ข้อสอบ o-net ม.3 
เครื่องหมายตัดสินใจ หรือเงื่อนไข คือข้อใด ?
ตอบ รูปที่ 5 รูปข้าวหลามตัด ** ออกสอบบ่อยมาก



รูปแบบของผังงาน ผังงาน มีรูปแบบที่จำกัดอยู่ แบบด้วยกัน คือ

1. รูปแบบเรียงลำดับ (Sequence Structure)
     เป็นการทำงานแบบเรียงลำดับ ตั้งแต่ต้นจนจบ เป็นรูปแบบง่าย ๆ ไม่มีการเปรียบเทียบใด ๆ มีทิศทางการไหลของข้อมูลเพียงทางเดียว ซึ่งอาจจะเป็นแบบบนลงล่าง หรือ จากซ้ายไปขวาก็ได้ เช่น การให้คำนวณหาพื้นที่ของสี่เหลี่ยมผืนผ้า จะเขียนเป็นผังงานได้ดังรูป


 อธิบายได้ดังนี้
  1. เริ่ม
  2. ทำกิจกรรมที่1
  3. ทำกิจกรรมที่2
  4. ทำกิจกรรมที่3
  5. จบ
----------------------------------------------------------------------------------------------------------------------------
2. รูปแบบที่มีการกำหนดเงื่อนไข (Decision Structure) 

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




อธิบายได้ดังนี้
  • ตามรูปให้ตรวจสอบเงื่อนไข ถ้าเงื่อนไขเป็นจริงให้ทำกิจกรรมที่ 1 
  • ถ้าเงื่อนไขเป็นเท็จให้ทำกิจกรรมที่ 2
----------------------------------------------------------------------------------------------------------------------------
3. รูปแบบที่มีการทำงานวนรอบ (Iteration Structure) 

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



คำอธิบาย
  • ทำซ้ำในขณะที่เงื่อนไขเป็นจริง
  • ทำกิจกรรม
  • ถ้าเงื่อนไขเป็นเท็จ จบการทำซ้ำ
----------------------------------------------------------------------------------------------------------------------------
การบ้าน (เก็บคะแนน)
ให้นักเรียนแสดงการทำอาหาร
(ผู้ชาย) ทำอาหาร ญี่ปุ่น 1 ชนิด
(ผู้หญิง) ทำอาหาร อิตาลี 1 ชนิด
โดยแสดงออกมาเป็นผังความคิดครบทั้ง 3 รูปแบบในการทำอาหารครั้งเดียว

ตัวอย่างรูปแบบของชิ้นงาน

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

Dance on the float

Float ลอย

Float แปลว่า ลอยจากพื้นครับ พอเราใช้ค่านี้แล้วมันจะลอยได้ครับ
ตอนผมเด็กๆผมก็คิดแบบนั้นครับ แต่ตอนนี้ก็ยังคิดอยู่ครับ (คุณครูเอสไม่ได้กล่าวไว้)



Float(จริงๆ) ในภาษาซีหมายความว่า ทศนิยมครับ และเรายังสามารถปรับให้มันปัดค่าเป็นทศนิยมกี่ตำแหน่ง

float a = 3.3559;
printf("\n the number is %.3f ",a);
ผลที่ได้คือ 3.356 ครับ (Reroyd ได้กล่าวไว้)

หาค่าพื้นที่ สามเหลี่ยม
#include <iostream>
using namespace std;
int main() 
{
float base , height , area;  ------------------> รับค่าด้วย ลอย ถุ้ยไม่ใช้ float รับค่าเป็นทศนิยม ฐาน สูง พื้นที่
cout << "Enter Base : ";   ------------------> รับค่าด้วย  Base แปลว่า ฐาน
cin >> base; 
cout << "Enter Height : "; ------------------> รับค่าด้วย  Height แปลว่า ความสูง
cin >> height; 
area = (0.5) * base * height; ------------------> area = (0.5) คือ ครึ่งหนึ่ง * base * height
cout << "Triangle Area Is " << area << endl;
cout << endl; 
system("pause");
 return 0; 
}

หลักการง่ายๆคือการ ใช้ตัวแปร คิดไว้ว่า คำตอบที่ได้ถ้าออกมาเป็นทศนิยม ก็ใช้ตัวแปรที่ถูกต้อง
ส่วนการคำนวน ควรรู้สูตรการคำนวนนั้นๆเพื่อเวลาเขียนจะเขียนโปรแกรมได้ง่ายขึ้น
(เขียนโฟว์ชาร์ทไว้ก่อนจะดีมาก
)


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

วันพฤหัสบดีที่ 20 พฤศจิกายน พ.ศ. 2557

else if # 3

else if # 3

  คำสั่งที่ใช้ในการตรวจสอบเงื่อนไขในภาษาซี คำสั่งแรกที่เราจะเรียนรู้กันก็คือ if (แปลว่า “ถ้า”) นั่นคือเราจะใช้ if เพื่อตรวจสอบผลของการเปรียบเทียบว่าเป็น “จริง” หรือ “เท็จ” ถ้า เป็นจริง จะให้ทำอะไรต่อไป และถ้าเป็นเท็จ จะให้ทำอะไรต่อไป (ออกสอบ)

   

ขอบคุณที่มาจาก http://www.cprogramming.com/tutorial/lesson2.html

>     greater than              5 > 4 is TRUE
<     less than                 4 < 5 is TRUE
>=    greater than or equal     4 >= 4 is TRUE
<=    less than or equal        3 <= 4 is TRUE
==    equal to                  5 == 5 is TRUE
!=    not equal to              5 != 4 is TRUE

The structure of an if statement is as follows:
if ( TRUE )
  Execute the next statement

Here is a simple example that shows the syntax:
if ( 5 < 10 )
  cout<<"Five is now less than ten, that's a big surprise";


Else

if ( TRUE ) {
  // Execute these statements if TRUE
}
else {
  // Execute these statements if FALSE
}

Else If

if ( <condition> ) {
  // Execute these statements if <condition> is TRUE
}
else if ( <another condition> ) {
  // Execute these statements if <another condition> is TRUE and
  // <condition> is FALSE
}

ตัวอย่างโปรแกรม รูปแบบเงื่อนไข (ออกสอบ)

#include <iostream>

using namespace std;

int main()                                                        // Most important part of the program!
{
  int age;                                                        // Need a variable...
  
  cout<<"Please input your age: ";                  // Asks for age
  cin>> age;                                                  // The input is put in age
  cin.ignore ( );                                                 // Throw away enter
  if ( age <= 30 ) {                                         // If the age is less than 30
     cout<<"You are pretty young!\n";              // Just to show you it works...
  }
  else if ( age > 31 ) {                                      // I use else just to show an example 
     cout<<"You are old\n";                              // Just to show you it works...
  }
  else {
    cout<<"You are really old\n";                     // Executed if no other statement is
  }
  cin.get( );
}

thank you : http://www.cprogramming.com/tutorial/lesson2.html

วันพฤหัสบดีที่ 30 ตุลาคม พ.ศ. 2557

else if #2

else if #2
การกำหนดเงื่อนไขโดยกำหนดวันเป็นหมายเลข



#include <iostream>
#include <conio.h>
int main()
{
int x; char name[10];
 cout<<"Enter the name: ";
cin>>name;
cout<<"What is the first day of weeks?
 Please select the number 1-7.

1.Monday 2.Tuesday 3.Wednesday 4.Thursday 5.Friday 6.Saturday 7.Sunday ";
cin>>x;
switch(x)
{
case 1: cout<<"Monday";
break; case 2: cout<<"Tuesday";
break; case 3: cout<<"Wednesday";
break; case 4: cout<<"Thursday";
break; case 5: cout<<"Friday";
 break; case 6: cout<<"Saturday";
break; default: cout<<"Sunday";
break;
 }
if(x==1)
{
cout<<" Total score = 5"<< x;
}
else if(x==2)
{
cout<<" Total score = 0"<<x;
 }
else if(x==3)
{
cout<<" Total score = 0"<<x;
 }
else if(x==4)
{
cout<<" Total score = 0"<<x;
 }
else if(x==5)
{
cout<<" Total score = 0"<<x;
}
else if(x==6)
{
cout<<" Total score = 0"<<x;
 }
else if(x==7)
{
cout<<" Total score = 0"<<x;
}
getch( );
 }