Dev c++ ถ าค าเป นศ นย ม นไม แสดง

คือผมมีปัญหา ศึกษามาหลายช่องทางละ ไม่สามารถทำได้ จึงขอความอนุเคราะห์จากพี่ๆทางพันทิป ในการเขียนโค้ด โจทย์ที่ผมให้ต่อไปนี้ไม่ใช้โจทย์ที่จะทำ แต่จะนำไปเป็นแนวทางในการเขียน โจทย์ประมาณว่า เราพิมชื่อได้ไม่เกิน 10 ตัว ถ้าเกินรับใหม่ แล้วมีหมายเลขครั้งที่พิมรับค่า นับเฉพาะครั้งที่ผ่าน ถ้าไม่ผ่านให้ขึ้นเป็นหมายเลขเดิม แล้วถ้าพิม end ให้หยุดโปรแกรม Next ถ้าพิมชื่อผ่านไม่เกิน 10 ตัว ให้ป้อนค่าตัวเลข 3ค่า โดยทั้ง3ค่า รับเป็นทศนิยม 2 ตำแหน่ง Next วนลูบพิมชื่อใหม่ตามเงื่อนไข แล้วก็ป้อนค่า ทำอย่างงี้ไปสามรอบ Next จากนั้นให้แสดงชื่อครั้งแรกที่พิม และตัวเลขที่พิมพร้อมชื่อ 3 ค่า แล้วค่าสุดท้าย ให้ นำสามค่ามารวมกัน Next ให้แสดงชื่อครั้งที่สองที่พิม และตัวเลขที่พิมพร้อมชื่อ 3 ค่า แล้วค่าสุดท้าย ให้ นำสามค่ามารวมกัน Next ทำเหมือนเดิมแต่เป็นครั้งที่สาม

ขอบคุณล่วงหน้าครับ

———————————————————————————————————————————

สื่อวีดิทัศน์การสอน เรื่อง :: การตรวจสอบเงื่อนไข คำสั่ง if-else if ::

———————————————————————————————————————————

3. คำสั่งกำหนดเงื่อนไข if-else if

Dev c++ ถ าค าเป นศ นย ม นไม แสดง
คำสั่ง if-else if เป็นคำสั่งที่กำหนดการเลือกกระทำตามเงื่อนไขที่ 1 เมื่อเงื่อนไขเป็นจริง (True) ก็จะทำตามคำสั่งหลังเงื่อนไข หากเป็นเท็จก็จะทำตามคำสั่งหลัง else และจะมีการตรวจสอบเงื่อนไขที่ 2 และเงื่อนไขต่อ ๆ ไปอีก ถ้าเงื่อนไขเป็นจริงก็จะทำงานตามเงื่อนไขที่ได้กำหนดไว้

รูปแบบคำสั่ง

if (Condition-1) Statement ; else if (Condition-2) Statement; else if (condition-N) Statement;

หรือการนำเอาเครื่องหมาย { } มาช่วยในการทำงานแบบหลายคำสั่ง

if (Condition-1) { Statement; Statement; } else if (Condition-2) { Statement; Statement; } else if (Condition-N) { Statement; Statement; } else Statement;

ตัวอย่างโปรแกรม คุณครูต้องการทราบเกรดของนักเรียนแต่ละคน ในรายวิชาคอมพิวเตอร์ตามช่วงคะแนนที่ กำหนดให้ เช่น 80 คะแนน จะแสดงข้อความ Your grade is A บนจอภาพ เป็นต้น จึงให้นักเรียน เขียนโปรแกรมเพื่อรับข้อมูลเป็นคะแนนนักเรียนแต่ละคน ดังนี้ “ให้นักเรียนเขียนโปรแกรมโดยแสดงข้อความบนจอภาพว่า Enter your score : รับค่า ตัวแปร score ชนิด Integer ตรวจสอบเงื่อนว่าค่า score อยู่ในช่วง 80 ถึง 100 หรือไม่ ถ้าเป็น จริง ให้แสดงข้อความว่า Your grade is A แล้วขึ้นบรรทัดใหม่ ตรวจสอบเงื่อนไขต่อไปว่าค่า score อยู่ในช่วง 70 ถึง 79 หรือไม่ ถ้าเป็นจริง ให้แสดงข้อความว่า Your grade is B แล้วขึ้นบรรทัดใหม่ ตรวจสอบเงื่อนไขต่อไปว่าค่า score อยู่ในช่วง 60 ถึง 69 หรือไม่ ถ้าเป็นจริงให้แสดงข้อความว่า Your grade is C ตรวจสอบเงื่อนไขต่อไปว่า ค่า score อยู่ในช่วง 50 ถึง 59 หรือไม่ ถ้าเป็นจริง ให้แสดงข้อความว่า Your grade is D ตรวจสอบเงื่อนไขต่อไปว่า ค่า score อยู่ในช่วง 0 ถึง 49 หรือไม่ ถ้าเป็นจริง ให้แสดงข้อความว่า Your grade is E คำสั่ง else และหากเงื่อนไขเป็นเท็จ ให้แสดงข้อความว่า Your score is out of range”

ช่วงคะแนนที่กำหนดให้

คะแนนอยู่ในช่วง

80 ถึง 100

ได้เกรด A

คะแนนอยู่ในช่วง

70 ถึง 79

ได้เกรด B

คะแนนอยู่ในช่วง

60 ถึง 69

ได้เกรด C

คะแนนอยู่ในช่วง

50 ถึง 59

ได้เกรด D

คะแนนอยู่ในช่วง

0 ถึง 49

ได้เกรด E

วิเคราะห์ปัญหา (Analysis) สิ่งที่โจทย์กำหนด :: กำหนดให้ตัวแปร score เก็บข้อมูลคะแนนของนักเรียนแต่ละคน โดยใช้ Format Code ชนิด Integer กำหนดการรับค่าตัวแปร score แบบ %d (เลขจำนวนเต็ม) กำหนดการตรวจสอบเงื่อนว่า ค่า score อยู่ในช่วง 80 ถึง 100 หรือไม่ ถ้าเป็นจริงให้แสดงข้อความ ว่า Your grade is A แล้วขึ้นบรรทัดใหม่ ตรวจสอบเงื่อนไขต่อไปว่า ค่า score อยู่ในช่วง 70 ถึง 79 หรือไม่ ถ้าเป็นจริงให้แสดงข้อความว่า Your grade is B แล้วขึ้นบรรทัดใหม่ ตรวจสอบเงื่อนไข ต่อไปว่า ค่า score อยู่ในช่วง 60 ถึง 69 หรือไม่ ถ้าเป็นจริงให้แสดงข้อความว่า Your grade is C ตรวจสอบเงื่อนไขต่อไปว่า ค่า score อยู่ในช่วง 50 ถึง 59 หรือไม่ ถ้าเป็นจริงให้แสดงข้อความว่า Your grade is D ตรวจสอบเงื่อนไขต่อไปว่า ค่า score อยู่ในช่วง 0 ถึง 49 หรือไม่ ถ้าเป็นจริงให้ แสดงข้อความว่า Your grade is E คำสั่ง else และหากเงื่อนไขเป็นเท็จ ให้แสดงข้อความว่า Your score is out of range > 30 แล้วขึ้นบรรทัดใหม่ สิ่งที่โจทย์ต้องการ :: แสดงข้อความ Enter your score : ตามด้วยค่าของตัวแปร score จากการรับข้อมูลเข้ามาในระบบ และแสดงเกรดของนักเรียนแต่ละคนในรายวิชาคอมพิวเตอร์ตามช่วง คะแนนที่กำหนด หากค่า score อยู่ในช่วง 80 ถึง 100 หรือไม่ ถ้าเป็นจริง ให้แสดงข้อความว่า Your grade is A แล้วขึ้นบรรทัดใหม่ ตรวจสอบเงื่อนไขต่อไปว่าค่า score อยู่ในช่วง 70 ถึง 79 หรือไม่ ถ้าเป็นจริงให้แสดงข้อความว่า Your grade is B แล้วขึ้นบรรทัดใหม่ ตรวจสอบเงื่อนไขต่อไป ว่าค่า score อยู่ในช่วง 60 ถึง 69 หรือไม่ ถ้าเป็นจริงให้แสดงข้อความว่า Your grade is C ตรวจสอบเงื่อนไขต่อไปว่า ค่า score อยู่ในช่วง 50 ถึง 59 หรือไม่ ถ้าเป็นจริง ให้แสดงข้อความว่า Your grade is D ตรวจสอบเงื่อนไขต่อไปว่า ค่า score อยู่ในช่วง 0 ถึง 49 หรือไม่ ถ้าเป็นจริง ให้แสดงข้อความว่า Your grade is E และใช้คำสั่ง else หากเงื่อนไขเป็นเท็จ ให้แสดงข้อความว่า Your score is out of range > 30 แล้วขึ้นบรรทัด

การแก้ปัญหา (Problem Solving) ตามแนวทางการคิดเชิงคำนวณ โดยการคิดแบบ "ขั้นตอนวิธี" (Algorithm) ดังนี้

Pseudo Code

Algorithm if-else if 1. int score 2. Print Enter your score : 3. Input score 4. ((score >= 80) && (score <= 100)) 4.1 Print Your grade is A 5. else if ((score >=70) && (score <= 79)) 5.1 Print Your grade is B 6. else if ((score >=60) && (score <= 69)) 6.1 Print Your grade is C 7. else if ((score >=50) && (score <= 59)) 7.1 Print Your grade is D 8. else if ((score >=0) && (score <= 49)) 8.1 Print Your grade is E 9. else 9.1 Your score is out of range 10. End

Flowchart

Dev c++ ถ าค าเป นศ นย ม นไม แสดง
เขียนโปรแกรม (Coding)

บรรทัดที่

โปรแกรม

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

include <stdio.h>

int score; int main( ) { printf(" Enter your score : "); scanf("%d",&score); if ((score >= 80) && (score <= 100)) printf("Your grade is A\n"); else if ((score >=70) && (score <= 79)) printf("Your grade is B \n"); else if ((score >=60) && (score <= 69)) printf("Your grade is C \n"); else if ((score >=50) && (score <= 59)) printf("Your grade is D \n"); else if ((score >=0) && (score <= 49)) printf("Your grade is E \n"); else printf("Your score is out of range \n"); } อธิบายโปรแกรม

บรรทัดที่ 1

กำหนดใช้งานไลบรารีชื่อ stdio.h ให้ทำงาน

บรรทัดที่ 2

กำหนดตัวแปรชนิด Integer ชื่อ score

บรรทัดที่ 3

กำหนดเริ่มต้นโปรแกรมหลัก int main( )

บรรทัดที่ 4

เริ่มชุดโปรแกรมหลักด้วยเครื่องหมาย {

บรรทัดที่ 5

แสดงข้อความบนจอภาพ Enter your score :

บรรทัดที่ 6

รับค่าตัวแปร score

บรรทัดที่ 7

ตรวจสอบเงื่อนว่าค่า score อยู่ในช่วง 80 ถึง 100 หรือไม่ ถ้าเป็นจริงทำ ถ้าไม่จริงไปตรวจสอบเงื่อนไขต่อไปที่บรรทัดที่ 9

บรรทัดที่ 8

แสดงข้อความ Your grade is A แล้วขึ้นบรรทัดใหม่

บรรทัดที่ 9

ตรวจสอบเงื่อนไขต่อว่าค่า score อยู่ในช่วง 70 ถึง 79 หรือไม่ ถ้าเป็นจริงทำ ถ้าไม่จริงไปตรวจสอบเงื่อนไขต่อไปบรรทัดที่ 11

บรรทัดที่ 10

แสดงข้อความ Your grade is B แล้วขึ้นบรรทัดใหม่

บรรทัดที่ 11

ตรวจสอบเงื่อนไขต่อว่าค่า score อยู่ในช่วง 60 ถึง 69 หรือไม่ ถ้าเป็นจริงทำ ถ้าไม่จริงไปตรวจสอบเงื่อนไขต่อไปบรรทัดที่ 13

บรรทัดที่ 12

แสดงข้อความ Your grade is C แล้วขึ้นบรรทัดใหม่

บรรทัดที่ 13

ตรวจสอบเงื่อนไขต่อว่าค่า score อยู่ในช่วง 50 ถึง 59 หรือไม่ ถ้าเป็นจริงทำ ถ้าไม่จริงไปตรวจสอบเงื่อนไขต่อไปที่บรรทัดที่ 15

บรรทัดที่ 14

แสดงข้อความ Your grade is D แล้วขึ้นบรรทัดใหม่

บรรทัดที่ 15

ตรวจสอบเงื่อนไขต่อว่าค่า score อยู่ในช่วง 0 ถึง 49 หรือไม่ ถ้าเป็นจริงทำ ถ้าไม่จริงไปตรวจสอบเงื่อนไขต่อไปที่บรรทัดที่ 17

บรรทัดที่ 16

แสดงข้อความ Your grade is E

บรรทัดที่ 17

เขียนคำสั่ง else หากเงื่อนไขเป็นเท็จ ให้ทำหลังคำสั่งนี้

บรรทัดที่ 18

แสดงข้อความ Your score is out of range

บรรทัดที่ 19

สิ้นสุดการทำงานของโปรแกรมหลัก int main( ) ด้วยเครื่องหมาย }

ผลลัพธ์บนจอภาพ โปรแกรมจะแสดงข้อความ Enter your score : ตามด้วยค่าของตัวแปร score จากการรับข้อมูลเข้ามาในระบบ และแสดงเกรดของนักเรียนแต่ละคนในรายวิชาคอมพิวเตอร์ตามช่วง คะแนนที่กำหนด หากค่า score อยู่ในช่วง 80 ถึง 100 หรือไม่ ถ้าเป็นจริง ให้แสดงข้อความว่า Your grade is A แล้วขึ้นบรรทัดใหม่ ตรวจสอบเงื่อนไขต่อไปว่าค่า score อยู่ในช่วง 70 ถึง 79 หรือไม่ ถ้าเป็นจริงให้แสดงข้อความว่า Your grade is B แล้วขึ้นบรรทัดใหม่ ตรวจสอบเงื่อนไขต่อไป ว่าค่า score อยู่ในช่วง 60 ถึง 69 หรือไม่ ถ้าเป็นจริงให้แสดงข้อความว่า Your grade is C ตรวจสอบเงื่อนไขต่อไปว่า ค่า score อยู่ในช่วง 50 ถึง 59 หรือไม่ ถ้าเป็นจริง ให้แสดงข้อความว่า Your grade is D ตรวจสอบเงื่อนไขต่อไปว่า ค่า score อยู่ในช่วง 0 ถึง 49 หรือไม่ ถ้าเป็นจริง ให้แสดงข้อความว่า Your grade is E และใช้คำสั่ง else หากเงื่อนไขเป็นเท็จ ให้แสดงข้อความว่า Your score is out of range > 30 แล้วขึ้นบรรทัด

Enter your score : 80 (ผู้ใช้งานกรอกเลข 80 เข้ามาแล้วกดปุ่ม Enter) Your grade is A (แสดงข้อความบนจอภาพ)

การทดสอบการทำงานของโปรแกรมจากเว็บ https://repl.it/languages/c คลิกเครื่องหมาย

Dev c++ ถ าค าเป นศ นย ม นไม แสดง
เพื่อดูผลผลลัพธ์การทำงานของโปรแกรมด้านล่าง (ลิงค์สำรอง https://repl.it/repls/DarkvioletMediumpurpleWeb)

———————————————————————————————————————————