編寫程序,模擬購物---學習通

實驗 2-4 編寫程序,模擬購物。

(1) 輸入商品名稱、單價、數量,計算商品價格,輸出商品名稱,單價,數量,總價。

(2) 當總價大於或等於500時,享受8折優惠。

(3) 模擬付款找零過程。

(4) 若付款金額不足,需要繼續付款。

(5) 購買多件商品時,需要對多件商品的總價進行彙總,得到應付款額,請程序中實現。

==========代碼 如下

//高大上代碼在此
//一份溫暖一份愛,給個關注明天繼續來
//@馬志勇的博客啊


package 四個題;

import java.text.DecimalFormat;

import java.text.Format;

import java.util.Scanner;

public class A_1_4 {

    String name = null;

    double price = 0;

    int num = 0;

    //主函數開始

    public static void main(String[] args) {

       DecimalFormat dec = new DecimalFormat("###.##");

       Scanner sc = new Scanner(System.in);

       double sumMoney = 0;

       //int n;// 統計買了幾件物品;

       System.out.println("\t\t\t"+"白露超市");

     System.out.println("******************************************************");

       System.out.println("[注]:按'#'鍵結束,按'*'鍵繼續");

       //System.out.print("輸入物品的種類數:");

       //n = sc.nextInt();

       A_1_4 arr[] = new A_1_4[10];

       int n=0;

       System.out.println("------------------------------------------------------");

       

       for (int i = 0; i < arr.length; i++) {

           arr[i] = new A_1_4();

           System.out.print("物名:");

           arr[i].name = sc.next();

           System.out.print("單價:");

           String str = sc.next();

           arr[i].price = Double.parseDouble(str);

           System.out.print("數量:");

           arr[i].num = sc.nextInt();

           System.out.print("('#'or'*'):");

           String str1 = sc.next();

           char c = str1.charAt(0);

           sumMoney = sumMoney + arr[i].price*arr[i].num;

           if (c == '#')

              break;

           n++;

       }

       if (sumMoney >= 500) {

           sumMoney = sumMoney * 0.8;

       }

       else

           sumMoney=sumMoney;

       System.out.println("--------------------從這裏撕開小票-----------------------");

       System.out.println("靜十店歡迎你:");

       System.out.println(" 名稱" + "\t\t" + "單價" + "\t\t" + "數量" + "\t\t" + "價格");

       for (int i = 0; i <=n; i++) {

           System.out.println(arr[i].name + "\t\t" + arr[i].price + "\t\t" + arr[i].num + "\t\t"

                  + dec.format(arr[i].price * arr[i].num));

       }

       System.out.println("總金額爲:" + dec.format(sumMoney));

       System.out.print("實收:");

       double shishou = sc.nextDouble();

       double zhaoling = shishou - sumMoney;

       System.out.println("找零:" + dec.format(zhaoling)+"元");

       System.out.println("-----------------------------------------------------");

 

    }

}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章