ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์Programming[[[สอนการบ้านภาษาซีผมทีคับเรื่อง Switch_case]]]]
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: [[[สอนการบ้านภาษาซีผมทีคับเรื่อง Switch_case]]]]  (อ่าน 1515 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
atiwat001
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 64
ออฟไลน์ ออฟไลน์

กระทู้: 1,464



ดูรายละเอียด
« เมื่อ: 24 กรกฎาคม 2011, 19:25:50 »

จงเขียนโปรแกรมรับตัวเลข 2 จำนวน จากทางแป้นพิมพ์
หลังจากนั้นสร้างเมนู และคำนวณตัวเลข (Switch..case)

ต.ย.
Input Num1 : 9
Input Num2 : 5

   1.ADD
   2.subject
   3.Multiply
   4.Div

Input Menu 1-4 : 1

   >>>Result 9 + 5 = 14


คือผมทำคร่าวๆได้เท่านี้จริงๆ นึกไม่ออกว่า จะเอาไปคำนวนกันตรงไหน แล้วเอาไปรวมกับ Switch case ยังไง ช่วยชีแนวทางให้ทีครับ

อ้างถึง

#include "stdio.h"
#include "conio.h"
main()
{
   int num1,num2,cal;
   printf ("Please Input Number1: ");
   scanf("%d",%num1);
   printf ("Please Input Number2: ");
   scanf("%d",%num2);
   
   switch (cal)
   {
   case 1 :
      printf("1:(Plus)");
      break;
   case 2 :
      printf("2:(Minus)");
      break;
   case 3 :
      printf("3:(Multiple)");
      break;
   case 4 :
      printf("4:(Divide)");
      break;
      printf("\nNo Enter Integer : 1-4");
   default;

   }

   getch();
}

บันทึกการเข้า
XXL
ก๊วนเสียว
*

พลังน้ำใจ: 64
ออฟไลน์ ออฟไลน์

กระทู้: 467



ดูรายละเอียด
« ตอบ #1 เมื่อ: 24 กรกฎาคม 2011, 20:11:11 »

Prinf ("เมนูต่างๆ") ต้องอยู่ก่อน Switch Case นะครับ
ให้ Prinf "เมนูต่างๆ  แล้วรับค่า ผ่าน scanf มาใส่ตัวแปล cal ก่อน

จากนั้นจึง switch (cal)
เพื่อเลือกการกระทำกับ ค่า num1 และ num2 ก่อน Printf แสดงผลที่ได้
บันทึกการเข้า

รถไฟวิ่ง ฉึกฉัก... . . . . ...ถึงก็ช่าง..ไม่ถึงก็ช่าง..
tkcomsci
ก๊วนเสียว
*

พลังน้ำใจ: 16
ออฟไลน์ ออฟไลน์

กระทู้: 257



ดูรายละเอียด เว็บไซต์
« ตอบ #2 เมื่อ: 24 กรกฎาคม 2011, 20:17:08 »

อ้างถึง
#include "stdio.h"
#include "conio.h"
main()
{
   int num1,num2,cal;
   printf ("Please Input Number1: ");
   scanf("%d",%num1);
   printf ("Please Input Number2: ");
   scanf("%d",%num2);
  
   switch (cal)
   {
   case 1 :
      printf("1:(Plus)");
      break;
   case 2 :
      printf("2:(Minus)");
      break;
   case 3 :
      printf("3:(Multiple)");
      break;
   case 4 :
      printf("4:(Divide)");
      break;
      printf("\nNo Enter Integer : 1-4");
   default;

   }

   getch();
}

จากที่เขียนนะครับ งงนิดหน่อย
#include "stdio.h"
#include "conio.h"
main()
{
   int num1,num2,cal,result;
   printf ("Please Input Number1: ");
   scanf("%d",%num1);
   printf ("Please Input Number2: ");
   scanf("%d",%num2);
  
   switch (cal)
   {
   case 1 :
      printf("1:(Plus)");
      printf("Input Menu 1-4:1");
      result=num1+num2;
      printf(">>>Result %d,num1 %d,+ %d,num2 %d,= %d,result");
      break;
   case 2 :
      printf("2:(Minus)");
      break;
   case 3 :
      printf("3:(Multiple)");
      break;
   case 4 :
      printf("4:(Divide)");
      break;
   default;
      printf("\nNo Enter Integer : 1-4");
   }

   getch();
}
ผมก็ลืมไปแล้วยังไง ช่วยดูไหม่ จำไม่ได้  ...................ทำเหมือน ข้อ 1 นะครับ ถ้ามี เงือนไขใน case ไหน อีก
บันทึกการเข้า

แบตสำรองของแท้ราคาถูก สนใจ PM มีระบบ ประมูล ขาย ทดลองก่อนซื้อ  สคริปมากมายสอบถามได้ ประกาศขายของฟรี
pikasuk
Newbie
*

พลังน้ำใจ: 2
ออฟไลน์ ออฟไลน์

กระทู้: 32



ดูรายละเอียด
« ตอบ #3 เมื่อ: 24 กรกฎาคม 2011, 20:40:04 »

จากที่ดูแล้วอาจารย์น่าจะให้ใช้ Switch Case ในการแยกการทำงานนะครับ

คือให้ทำการบวกลบคูณหารใน case นั้นเอง

เช่นรับ Cal = 1 ทำการบวก บราบรา

เห็น จขกท ท่าจะไม่ไหว

   printf("1.ADD\n");
   printf("2.subject\n");
   printf("3.Multiply\n");
   printf("4.Div\n");
##ส่วนนี้ทำเมนูก่อน##
   printf("Input Menu 1-4 : ");
   scanf("%d",&cal);
##ส่วนนี้รับค่าเพื่อนำไปใส่ให้กับตัวแปร cal##
   Switch (cal)........

ถ้ายังไม่เข้าใจก็ถามได้ครับ
« แก้ไขครั้งสุดท้าย: 24 กรกฎาคม 2011, 20:49:19 โดย pikasuk » บันทึกการเข้า
atiwat001
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 64
ออฟไลน์ ออฟไลน์

กระทู้: 1,464



ดูรายละเอียด
« ตอบ #4 เมื่อ: 24 กรกฎาคม 2011, 21:31:50 »

ผมทำออกมาแล้ว แบบนี้ไม่ทราบว่าผิดตรงไหนรันไม่ได้อ่ะคับ

อ้างถึง

#include "stdio.h"
#include "conio.h"
main()
{
   int num1,num2,cal,result;
   printf ("Please Input Number1: ");
   scanf("%d",%num1);
   printf ("Please Input Number2: ");
   scanf("%d",%num2);
     system("cls");

   switch (cal)
   {
   case 'Plus' :
      result=num1+num2;
      printf("Result is %d + %d = %d",num1+num2,result);
      break;
   case 'minus' :
      result=num1-num2;
      printf("Result is %d - %d = %d",num1-num2,result);
      break;
   case 'multiple' :
      result=num1*num2;
      printf("Result is %d x %d = %d",num1*num2,result);
      break;
   case 'Divide' :
      result=num1/num2;
      printf("Result is %d / %d = %d",num1/num2,result);
      break;
   default;
      printf("\nNo Enter Integer : 1-4");
   }

   getch();
}

บันทึกการเข้า
pikasuk
Newbie
*

พลังน้ำใจ: 2
ออฟไลน์ ออฟไลน์

กระทู้: 32



ดูรายละเอียด
« ตอบ #5 เมื่อ: 24 กรกฎาคม 2011, 21:52:45 »

= = ผิดเต็มประตูเลยครับ

ท่าน switch (cal) แต่ว่า cal เป็น Integer

แต่ใน case ท่านใช้ case 'Plus' = = แค่นี้ก็ผิดแล้วครับมันใช้ไม่ได้

ท่านต้องใช้ Integer สิครับ

case 1:
case 2:

ถ้า cal = 1 ทำ case อันแรก
ถ้า cal = 2 ทำ case อันที่สอง

อย่าลืมกำหนดค่าให้ cal ก่อนครับ
บันทึกการเข้า
หน้า: [1]   ขึ้นบน
พิมพ์