วันอังคารที่ 3 มีนาคม พ.ศ. 2558

ตัวอย่างโปรแกรมภาษา Java รวมพื้นฐานการเขียนโปรแกรม

        รวมพื้นฐานการเขียนโปรแกรม ซึ่งประกอบไปด้วย การใช้คำสั่งแบบมีการเลือกทำ การใช้คำสั่งควบคุมแบบมีการทำซ้ำ และ อาร์เรย์
โปรแกรมรับแลกเปลี่ยนเงินตรา ขั้นตอนการทำงานของโปรแกรมมีดังนี้
-โปรแกรมจะแจ้งให้ทราบว่ามีสกุลเงินอะไรบ้าง และให้ผู้ใช้งานเลือกสกุลเงินที่ต้องการแลกเปลี่ยน
- ใส่จำนวนเงินที่ต้องการแลก
- เลือกวิธีการรับว่าต้องการรับเงินที่แลกแล้วเข้าธนาคารหรือรับเงินสด
- จากนั้นโปรแกรมจะคำนวณยอดเงินออกมาเป็นบาท ตามด้วยค่าบริการที่ต้องเสีย และสุดท้ายโชว์ยอดเงินคงเหลือที่ลูกค้าจะได้รับ ถ้าลูกค้าเลือกรับเงินสด โปรแกรมจะคำนวณจำนวนแบงค์และเหรียญ ออกมาให้



     
import java.text.DecimalFormat;
import java.util.Scanner;
class pro_ject{
     public static void main(String[]args)
     throws java.io.IOException{
     String curr ="";
     int money,thb,ser,net,rate =0;
     char no;
     do
     {
     System.out.println("***Program Foreign currency exchange***");
     System.out.println("Item"+"\t"+"Description"+"\t\t\t\t
"+"Exchange");
     System.out.println("-------------------------------------------------");
     System.out.println("1."+"\t\t"+"BZD-Belize Dollar"+"\t\t"+"15");
     System.out.println("2."+"\t\t"+"CHF-Swiss Franc"+"\t\t\t"+"34");
     System.out.println("3."+"\t\t"+"HKD-Hong Kong Dollar"+"\t"+"4");
     System.out.println("4."+"\t\t"+"USD-US Dollar"+"\t\t\t"+"31");
     System.out.println("-------------------------------------------------");
     System.out.print("Input 1,2,3,4 for Select Currency : ");
do
{
no =(char)System.in.read();
}while(no == '\n'|no == '\r');
}while(no < '1'|no > '4');
if (no=='1'){
   curr="BZD"; rate=15;
   }
else if (no=='2'){
           curr="CHF"; rate=34;
}
else if (no=='3'){
           curr="HKD"; rate=4;
}
else if (no=='4'){
           curr="USD"; rate=31;
}
     Scanner input = new Scanner(System.in);
     System.out.print("Input Amount Currency "+curr+" : ");
     money = input.nextInt();
     thb=money*rate;
     System.out.print("You selesc Receive money 1)Bank 2)Cash :");
     int num = input.nextInt();
     System.out.println("-------------------------------------------------");
     DecimalFormat formatter = new DecimalFormat
("#,###.##");
     System.out.println(curr+" Exchange Thai ===> "+formatter.format(thb)+" THB");

     switch(num){
     case 1:
          ser=(thb*2)/100;
          net=thb-ser;
          System.out.println("Service charge 2% = "+formatter.format(ser)+" THB");
          System.out.println("Tranfer money to bank = "+formatter.format(net)+" THB");
          break;

     case 2:
          ser=(thb*4)/100;
          net=thb-ser;
          System.out.println("Service charge 4% = "+formatter.format(ser)+" THB");
          System.out.println("Get to Cash = "+formatter.format(net)+" THB");
          System.out.println();
          System.out.println("====Details of Pay Cash====");
          int [] baht=new int[]{1000,500,100,50,20,10,5,1};
          int [] pay=new int[8];
          for(int i=0;i<pay.length;i++){
                    pay[i]=net/baht[i];
                    net%=baht[i];
          }

          System.out.println("Bank  1000 = "+pay[0]);
          System.out.println("Bank   500 = "+pay[1]);
          System.out.println("Bank   100 = "+pay[2]);
          System.out.println("Bank    50 = "+pay[3]);
          System.out.println("Bank    20 = "+pay[4]);
          System.out.println("Coins   10 = "+pay[5]);
          System.out.println("Coins    5 = "+pay[6]);
          System.out.println("Coins    1 = "+pay[7]);
          break;
          default:

     System.out.println("Yor Not Select 1 or 2!!");  } } }



OUTPUT แบบเลือกรับเงินเป็นโอนเข้าบัญชี


          --------------------Configuration: <Default>--------------------          
         ***Program Foreign currency exchange***
         Item    Description             Exchange
         -------------------------------------------------
         1. BZD-Belize Dollar       15
         2. CHF-Swiss Franc         34
         3. HKD-Hong Kong Dollar        4
         4. USD-US Dollar           31
         -------------------------------------------------
         Input 1,2,3,4 for Select Currency : 1
         Input Amount Currency BZD : 19999
         You selesc Receive money 1)Bank 2)Cash :1
         -------------------------------------------------
         BZD Exchange Thai ===> 299,985 THB
         Service charge 2% = 5,999 THB
         Tranfer money to bank = 293,986 THB
      



OUTPUT แบบเลือกรับเงินเป็นเงินสด


          --------------------Configuration: <Default>--------------------          
          ***Program Foreign currency exchange***
          Item    Description             Exchange
          -------------------------------------------------
          1.      BZD-Belize Dollar       15
          2.      CHF-Swiss Franc        34
          3.      HKD-Hong Kong Dollar    4
          4.      USD-US Dollar           31
          -------------------------------------------------
          Input 1,2,3,4 for Select Currency : 1
          Input Amount Currency BZD : 19999
          You selesc Receive money 1)Bank 2)Cash :2
          -------------------------------------------------
          BZD Exchange Thai ===> 299,985 THB
          Service charge 4% = 11,999 THB
          Get to Cash = 287,986 THB
      

ข้อสังเกตุ
     จากโปรแกรม รับแลกเปลี่ยนเงินตรานั้น ได้เพิ่ม import java.text.DecimalFormat; ซึ่งคือ การจัดรูปแบบตัวเลข ตัวเลขทศนิยมในภาษาจาวาเมื่อแสดงผลจะเป็นตัวเลขทศนิยมหนึ่งตำแหน่งหรือมากกว่าเสมอ เช่น เมื่อแสดงผลที่หน้าจอจะแสดงเป็น 105040.0 อาจทำให้เกิดความไม่ชอบใจในการแสดงผลของผู้ใช้ ดังนั้นภาษาจาวาจึงได้สร้างคลาสกลุ่มหนึ่งขึ้นมาสำหรับจัดการรูปแบบตัวเลขโดยเฉพาะได้แก่คลาส DecimalFormat คลาสนี้อยู่แพคเกจ java.text ในการใช้งานคลาส DecimalFormat จะมีสัญลักษณ์ที่ใช้ในการกำหนดรูปแบบดังนี้ 








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

แสดงความคิดเห็น