วันพฤหัสบดีที่ 16 กันยายน พ.ศ. 2553

การเขียนโปรแกรมตัดเกรด 5 ระดับโดยใช้คำสั่ง switch-case

ข้อสังเกต    
    1. ข้อมูลที่โจทย์กำหนดเป็นช่วง เช่น 80-100
    2. เงื่อนไขของ case ค่าของตัวแปรในนิพจน์เป็นจำนวนเต็ม( Integer Value)

การแก้ปัญหา
    1.จะต้องหาตัวแทนของกลุ่มเลขที่โจทย์กำหนดเป็นค่าเพียงค่าเดียวในแต่ละกลุ่ม ซึ่งในที่นี้สามารถแบ่งช่วงเลขทั้งหมดเป็น 10 ช่วงได้ โดยใช้ 10 เป็นตัวหาร

    2.ใช้คุณสมบัติของการหาร (/) เลขจำนวนเต็ม (int) จะได้เลขจำนวนเต็มที่ตัดเศษทิ้งของภาษา Java เช่น 79/10 จะได้ผลลัพธ์เป็น 7 ซึ่งจะคลุมตัวเลขตั้งแต่ 70-79 
    3. ด้วยวิธีการหาร จะทำให้ได้เลขจากการหารทั้งหมด 10 ตัว คือ 1, 2, 3, …, 10

2 ความคิดเห็น:

  1. แก้ปัญหาติดลบอย่างไรครับ

    ตอบลบ
  2. java.util.Scanner kb = new java.util.Scanner(System.in);
    int g = kb.nextInt();
    String a ="";
    switch((g+"").indexOf("-")){
    case -1:
    switch(g/10){
    case 0:
    case 1:
    case 2:
    case 3:
    case 4:a="F";break;
    case 5:a="D";break;
    case 6:a="C";break;
    case 7:a="B";break;
    case 8:
    case 9:a="A";break;
    case 10:
    switch(g%10){
    case 0: a="A";break;
    default:a="it not 0-100";
    }
    break;
    default:a="it not 0-100";
    } break;
    default:a="it not 0-100";
    }
    System.out.print(a);

    ตอบลบ