Page 2 of 3 FirstFirst 123 LastLast
Results 11 to 20 of 23

Thread: ภาษา C ไม่ยากอย่างที่คิด!! (2)

  1. #11
    Senior Member
    Join Date
    Jul 2004
    Location
    Bangkok
    Posts
    187


    Code:
    #define NUMBER 540
    จริงๆไม่ใช่เป็นการประกาศค่าคงที่ หรือตัวแปร ใดๆ แต่เป็น Preprocessor คือขั้นตอนของ compiler จะทำการแทนที่ text ใน source code ด้วย directive ที่กำหนดแล้วถึงทำการ compile

    จากตัวอย่างข้างต้น ก็คือจะแทนที่ NUMBER ที่อยู่ใน source code ทั้งหมด ด้วย 540

    Code:
    #define NUMBER 540+460
    จากตัวอย่างนี้ ก็จะแทนที่ NUMBER ด้วย 540+460 แต่ถ้าเขียนแบบนี้มีโอกาสที่จะผิดพลาดได้ และทำการตรวจสอบได้ยาก เช่น

    [code]
    #define NUMBER 540+460
    int x = 2*NUMBER;

  2. #12
    Senior Member
    Join Date
    Oct 2007
    Location
    Udon Thani
    Posts
    148


    เนื่องจาก Shomon ไม่อยู่ (...ไม่รู้ไปไหน) ผมเลยสานต่อให้แทนครับ (จริงๆก็ตกลงกันไว้แล้วล่ะครับ แต่ลืมเขียน ^^" )

    ตอนที่ 10 : การควบคุมการทำงานด้วยเงื่อนไข (Part 1)

    ในตอนที่ผ่านมา หลายท่านก็ได้รู้จักกับการทำงานของโปรแกรมแบบไหลรวดเดียวจบ (1 แล้ว 2 แล้วก็ 3) ไปแล้ว ทีนี้หลายคนคงจะสงสัยแล้วล่ะมั้งว่า "ถ้าอยากให้โปรแกรมกำนหดเงื่อนไขซึ่งมีทางเลือก จะทำอย่างไร" ตอนที่ 10 มีคำตอบครับ

    คำสั่งที่ใช้ในการระบุเงื่อนไขคำสั่งแรกที่เราจะเรียนรู้กันก็คือ "if"

    โดยที่มีรูปแบบการใช้งานดังนี้

    Code:
    if (เงื่อนไข) สิ่งที่ต้องการให้กระทำ
    และถ้าหากว่าสิ่งที่เราต้องการให้กระทำนั้นมีมากกว่า 1 อย่าง ให้ใส่ { และ } ดังนี้ครับ

    Code:
    if (เงื่อนไข) 
    {
    สิ่งที่เราต้องการให้กระทำอย่างที่ 1
    สิ่งที่เราต้องการให้กระทำอย่างที่ 2
    สิ่งที่เราต้องการให้กระทำอย่างที่ 3
    ... 
    }
    โดยที่มีโครงสร้างคำสั่งว่า ถ้าเงื่อนไขที่กำหนดไว้เป็น"จริง"จึงจะทำตามสิ่งที่เรากำหนดไว้หลังเงื่อนไขเท่านั้น (ใครพอจะผ่านเรื่ิองตรรกศาสตร์มาน่าจะนึกภาพตามได้ง่ายขึ้น)

    (พูดกันตั้งนาน ไม่เห็นภาพเลย) เอาเป็นว่าลองดูตัวอย่างกันซักนิดดีกว่านะครับ

    Example 1 : คำถามสุดยอดแฟนพันธุ์แท้แห่ง CITEC

    [code]
    #include <stdio.h>
    #include <conio.h>
    #include <string.h>
    void main()
    {
    PS. Link ใดที่ผมโพสท์แล้วเสีย,โหลดไม่ได้ PM หาผมได้นะครับ</span>

  3. #13
    Senior Member
    Join Date
    Oct 2007
    Location
    Udon Thani
    Posts
    148


    ตอนที่ 10 (ต่อ) : การควบคุมการทำงานด้วยเงื่อนไข (Part 2)

    คราวที่แล้ว เราได้รู้จักการทำงานด้วยเงื่อนไขแบบ if-else แบบ Basic ไปแล้ว ในคราวนี้ เราลองมาทำแบบ Apply กันบ้างนะครับ

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

    คำตอบอยู่ที่การใช้เครื่องหมาย && (Double &#39;AND&#39; Symbol) หรือใครจะเรียกว่า แอ่นแอ๊น,มดสองตัว,ดับเบิ้ลมด ก็แล้วแต่ท่านนะครับ

    ทีนี้มาดูส่วนของรูปแบบกันบ้าง

    Example 1 : ธนาคารพรรคกระยาจก (ธนาคารนี้ไม่ธรรมดานะครับ ต้องฝากเงินตั้งแต่ 1-100 เท่านั้น ถ้ามากกว่านั้นเค้าไม่รับฝากครับ)

    เพื่อไม่ให้เป็นการเสียเวลา เรามาดูรูปแบบกันดีกว่าครับ

    [code]
    #include <stdio.h>
    #include <conio.h>
    #include <string.h>

    void main()
    {
    int money;
    PS. Link ใดที่ผมโพสท์แล้วเสีย,โหลดไม่ได้ PM หาผมได้นะครับ</span>

  4. #14
    Junior Member
    Join Date
    Apr 2008
    Posts
    2


    คือว่าคุณ shomon ครับ

    พอดีว่า ตอนที่ 7 : Variable (ตัวแปร) Part 1

    โดนล็อคอยู่นะครับ

    ยังไงก็ขอช่วยปลดล็อคให้หน่อยนะครับ

    พอดีว่ากำลังศึกษาเรื่องของ

    ตัวแปรอยู่ครับ

    เพื่อเป็นประโยชน์ในการศึกษาเพื่อใช้ในการเรียนต่อครับ


    ขอช่วยด้วยนะครับ

    ขอบคุณครับ


  5. #15
    Junior Member
    Join Date
    Jul 2008
    Posts
    2


    ช่ายคับ ตอนที่7มันล็อคอยู่ (ความจริง 6 ด้วย) ผมจะอ่านข้ามไป ตอนที่ 8เลย มันก็ยังไงๆอยู่
    +งงเล็กน้อย ก็เลยอยากให้มันปะติดปะต่อกัน และเพื่อความเข้าใจด้วย
    จึงขอ ปลดล้อกหน่อยละกันนะคับ

  6. #16
    Junior Member
    Join Date
    Jul 2008
    Posts
    0


    นิสนึง

  7. #17
    Junior Member
    Join Date
    Aug 2008
    Posts
    4


    เอ่อ คือ พี่shomon ครับ ช่วยปลดล็อค ตอนที่ 6 - 7 หน่อยนะครับคือกำลังศึกษาอ่ะครับ จะอ่านข้ามไป มันก็ไงๆอยู่อ่ะครับ
    รบกวนด้วยนะครับ

  8. #18
    Junior Member
    Join Date
    Oct 2007
    Posts
    15


    ผมเอา hide ต่างๆออกให้แล้วนะครับ

    ถ้าบทความไหนที่ยังติด hide อยู่ ช่วยบอกด้วยนะครับ จะได้ปลดออกให้

    แล้วก็แก้ไขข้อมูลที่พี่Black_Phoenix เขียนไว้ให้ ยัดลงหน้าแรกแล้วนะครับ
    -------------------------------------------------------------------------------------------------
    ขอโทษทีครับที่หายไปเกือบปี - -a

    เกิดปัญหาหลายๆอย่าง ตัวขี้เกียจเกาะตรึม 555+

    กะจะเข้ามาหาข้อมูลอ่านเล่น ก็ดันล๊อคอินไอดีตัวเองไม่ได้ (เพิ่งนึกถึงความสำคัญของระบบแจ้งลืมพาสก็ตอนนี้ล่ะ * * ปกติลืมก็สมัครใหม่ 555+)

    จะเริ่มเขียนบทความต่างๆต่อ ในสองสามวันนี้ล่ะครับ ขอโทษทีที่ไม่ได้เขียนอะไรเพิ่มเลย (แต่ตอนนี้ขอเคลียกะสอบปลายภาคก่อน)

    ps.ขอบคุณที่ปักหมุดกระทู้ให้นะครับ

    ps2.หันมาใช้ Ubuntu ว่าแต่ Ubuntu มันคอมไพล์ยังไงหว่า ฮ่าๆๆๆ (ใช้ gcc ชื่อไฟล์ เฉยๆแล้วมันไม่แสดงหน้าต่างผลลัพธ์ให้น่ะซี - -)

    Edit -----------
    ลืมเรื่องสำคัญไปอย่างๆ
    ขอบคุณพี่ labyrinth ด้วยนะครับ ที่แก้ไขข้อมูลที่ผิดให้ครับ

  9. #19
    Junior Member
    Join Date
    Oct 2007
    Posts
    15


    ตอนที่ 11 เงื่อนไขซ้อนเงื่อนไข (ต่อจากพี่ Black_Phoenix)



    Code ของ ตอนนี้นะครับ

    อย่างที่พี่ Black_Phoenix ได้บอกไปในตอนที่แล้วนะครับ เราจะมาดูในส่วน if{ if{เงื่อนไข1)}else{(เงื่อนไข2)} } นะครับ
    ตอนนี้ก็ไม่มีอะไรมากครับ

    จากตัวโปรแกรม การทำงานจะเป็น
    โปรแกรมจะถามว่า คุณอายุเท่าไหร่ ถ้าใส่ไปมากกว่าหรือเท่ากับ 80 โปรแกรมก็จะบอกว่าคุณแก่
    ถ้าใส่มากกว่า 18 น้อยกว่า80 โปรแกรมจะบอกคุณยังหนุ่มยังสาว
    ถ้าใส่น้อยกว่าหรือเท่ากับ 18 โปรแกรมจะบอกว่าคุณเป็นเด็ก

    ซึ่ง เราใช้การซ้อนเงื่อนไขกันครับ โดยโปรแกรมจะตรวจสอบเงื่อนไขชั้นนอกสุด ไล่เข้ามาชั้นในเรื่อยๆ จนถึงชุดเงื่อนไขสุดท้าย
    แบบนี้ฮะ

    ส่วนเรื่องการวางตำแหน่ง เราสามารถวางเข้าไปในวงเล็บปีกกาครับ

    IF { IF { IF { IF { } } } } ELSE { IF { } }

    อะไรแบบนี้อ่าครับ

    ตอนนี้ขอตัดจบแค่สั้นๆเท่านี้ก่อนนะครับ

    เดี๋ยวไว้จะมาอธิบายต่อทีหลังนะครับ (ง่วงนอนแล้ว)

  10. #20
    Junior Member
    Join Date
    Oct 2007
    Posts
    15


    ตอนที่ 12 การใช้คำสั่ง While



    อยากให้ดู Code ของโปรแกรมตัวนี้นะครับ

    จากโปรแกรมนี้ คิดว่า เมื่อคอมไพล์ออกมาแล้ว โปรแกรม จะแสดงผลแบบไหนครับ?

    ครับ จากโปรแกรมนี้ เมื่อรันแล้ว จะได้ผลคือ


    It&#39;s number
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10[/b]
    นี่คือผลของโปรแกรมนี้ครับ

    จะสังเกตุเห็นจากโปรแกรมว่า ผมไม่ได้พิมพ์ 1 2 3 4 5 6 7 8 9 10 ลงไปเลย แต่จะใช้คำสั่ง While เอาครับ

    คำสั่ง While เมื่อแปลจากการเปิด dic จะแปลว่า "ระหว่างที่" , "ขณะที่" หรืออะไรประมาณนี้ครับ
    ซึ่งในภาษา C ก็เช่นกันครับ

    Code:
    while(a < b)
    {
    a = a+1
    }
    ภาษาพูดก็
    "ในขณะที่ a มีค่าน้อยกว่า b ให้เพื่มค่า a ขึ้น 1 จุด

    อะไรประมาณนี้ครับ
    โดยการทำงานของ While คือ

    While จะตรวจสอบค่าในวงเล็บข้างๆ while ซะก่อน ถ้าผลลัพธ์ยังไม่เป็นจริง ก็จะทำงานในบรรทัด { } ถัดมา
    และเมื่อค่าเป็นจริงแล้ว (คือ a=b หรือ a>b) while ก็จะจบการทำงาน และมาทำงานต่อไปในบรรทัดนอก { } ของมันเองครับ

    ซึ่ง จากโปรแกรมแล้ว อัลกอริทึ่ม ของโปรแกรมนี้ ก็ประมาณว่า

    กำหนดค่าตัวแปร
    numb = 1
    step = 1
    upper = 10

    หลังจากที่กำหนดค่าต่างๆให้กับตัวแปรแล้ว ต่อมาก็แสดงผล
    It&#39;s number
    และเข้าสู่การทำงานของ while
    โดย เมื่อ numb น้อยกว่า upper
    ให้แสดงผล numb
    และจากนั้น ให้ numb ไปบวกกับ step
    แล้วจึงแสดงผล numb
    แล้วนำตัวแปร numb ไปบวกกับ step

    วนอย่างนี้ไปเรื่อยๆ จนกระทั่งตัวแปร numb มีค่ามากกว่า upper ครับ จึงจะออกจากการวนloop ของ while

    ซึ่ง เราสามารถแทนตัวแปรได้ด้วยการ

    [code]#include <stdio.h>
    main()
    {

Page 2 of 3 FirstFirst 123 LastLast

Similar Threads

  1. การคำนวณวันที่แบบ DATEDIF ใน Excel นั้น ไม่ยากอย่างที่คิด
    By momaydopod in forum ทิปหรือเคล็ดลับการคอมพิวเตอร์ต่างๆ
    Replies: 0
    Last Post: 04-02-2010, 01:50 PM
  2. Replies: 0
    Last Post: 07-06-2009, 12:20 AM
  3. ประกอมคอมพ์ไว้ดู Hi-Def ไม่ยากอย่างที่คิด
    By Bandname in forum บทความ คอมพิวเตอร์ ทัวไป
    Replies: 0
    Last Post: 28-07-2008, 11:25 PM
  4. บทเรียนรู้ด้วยตัวเอง ภาษา C
    By akenan2007_old in forum C/C++,C#,VC++,MFC,Win32
    Replies: 0
    Last Post: 01-06-2008, 04:48 AM
  5. Replies: 0
    Last Post: 28-04-2004, 01:48 PM

Members who have read this thread : 0

Actions : (View-Readers)

There are no names to display.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •