[[[สอนการบ้านภาษาซีผมทีคับเรื่อง Switch_case]]]]

เริ่มโดย atiwat001, 24 กรกฎาคม 2011, 19:25:50

หัวข้อก่อนหน้า - หัวข้อถัดไป

0 สมาชิก และ 1 ผู้มาเยือน กำลังดูหัวข้อนี้

atiwat001

จงเขียนโปรแกรมรับตัวเลข 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

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

จากนั้นจึง switch (cal)
เพื่อเลือกการกระทำกับ ค่า num1 และ num2 ก่อน Printf แสดงผลที่ได้
รถไฟวิ่ง ฉึกฉัก..[direct=1].[/direct][direct=2].[/direct][direct=3].[/direct][direct=4].[/direct][direct=5].[/direct]...ถึงก็ช่าง..ไม่ถึงก็ช่าง..

tkcomsci

อ้างถึง#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 ไหน อีก

pikasuk

จากที่ดูแล้วอาจารย์น่าจะให้ใช้ 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)........

ถ้ายังไม่เข้าใจก็ถามได้ครับ

atiwat001

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

อ้างถึง

#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

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

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

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

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

case 1:
case 2:

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

อย่าลืมกำหนดค่าให้ cal ก่อนครับ