【发布时间】:2016-02-12 22:50:22
【问题描述】:
我是 java 的初学者。我有一个简单的 java 编程作业。这是程序的基础:
“Best Purchase 接受电子设备和配件的在线订单。他们开发了一个程序,允许用户从项目菜单中选择要购买的设备。编写一个程序,允许用户(客户)选择要购买的商品,计算所订购商品的价格,并向客户显示此信息的收据(假设销售税率为 6.5%)”
您的程序应提示用户(客户)输入以下信息:
- 客户名称
- 购买的电子设备和配件
然后程序输出以下信息:
- 客户姓名
- 订购的商品总数
- 销售税前菜单项的价格
- 营业税
- 应付总额
这是我的问题,如果取决于用户选择的数字,如何在嵌套中添加值?
例如:用户选择 1,2,3,10(退出循环)
这是我的代码:
import java.util.Scanner;
public class OnlinePurchase {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
//Declare Variables
Scanner input = new Scanner(System.in);
String sCustomerName =""; //Stores the Customer's Name
int nSelection = 0; //Stores the value entered by the user
int nSum = 0; //Stores sum of values entered
int nCount = 0; //Number of values entered
int nPrice = 0;
//Declare Constants
final int SENTINEL = 10; //Used to end loop
//Promt User to enter the their name.
System.out.print("Please enter the your name: ");
//Read Customer Name input from user
sCustomerName = input.nextLine( );
//Print to Blank Line for spacing
System.out.println("\n");
//Print Purchase Menu
System.out.println("BEST PURCHASE PRODUCTS:");
System.out.println("1. Smartphone..........$249");
System.out.println("2. Smartphone Case.... $39");
System.out.println("3. PC Laptop...........$1149");
System.out.println("4. Tablet..............$349");
System.out.println("5. Tablet Case.........$49");
System.out.println("6. eReader.............$119");
System.out.println("7. PC Desktop..........$889");
System.out.println("8. LED Monitor.........$299");
System.out.println("9. Laser Printer.......$399");
System.out.println("10.Complete my order");
//Print to Blank Line for spacing
System.out.println("\n");
while (nSelection != SENTINEL) {
//Calculate sum
nSum = nPrice + nSum;
//Increment counter
nCount++; //or nCount = nCount + 1;
//Promt User to enter the an item from the menu.
System.out.print("Please enter item from the menu above: ");
//Read input from user for selected purchase
nSelection = input.nextInt();
if (nSelection == 1) {
nPrice = 249;
//Promt User to enter the an item from the menu.
System.out.print("Please enter another item from the menu above: ");
//Read input from user for selected purchase
nSelection = input.nextInt();
}
else if (nSelection == 2 ) {
nPrice = 39;
//Promt User to enter the an item from the menu.
System.out.print("Please enter another item from the menu above: ");
//Read input from user for selected purchase
nSelection = input.nextInt();
}
else if (nSelection == 3 ) {
nPrice = 1149;
//Promt User to enter the an item from the menu.
System.out.print("Please enter another item from the menu above: ");
//Read input from user for selected purchase
nSelection = input.nextInt();
}
else if (nSelection == 4 ) {
nPrice = 349;
//Promt User to enter the an item from the menu.
System.out.print("Please enter another item from the menu above: ");
//Read input from user for selected purchase
nSelection = input.nextInt();
}
else if (nSelection == 5 ) {
nPrice = 49;
//Promt User to enter the an item from the menu.
System.out.print("Please enter another item from the menu above: ");
//Read input from user for selected purchase
nSelection = input.nextInt();
}
else if (nSelection == 6 ) {
nPrice = 119;
//Promt User to enter the an item from the menu.
System.out.print("Please enter another item from the menu above: ");
//Read input from user for selected purchase
nSelection = input.nextInt();
}
else if (nSelection == 7 ) {
nPrice = 899;
//Promt User to enter the an item from the menu.
System.out.print("Please enter another item from the menu above: ");
//Read input from user for selected purchase
nSelection = input.nextInt();
}
else if (nSelection == 8 ) {
nPrice = 299;
//Promt User to enter the an item from the menu.
System.out.print("Please enter another item from the menu above: ");
//Read input from user for selected purchase
nSelection = input.nextInt();
}
else if (nSelection == 9 ) {
nPrice = 399;
//Promt User to enter the an item from the menu.
System.out.print("Please enter another item from the menu above: ");
//Read input from user for selected purchase
nSelection = input.nextInt();
}
}//end while user did not enter 10
//Print blank line
System.out.println();
//Print Thank You message
System.out.println("Thank you for ordering with Best Purchase,"+sCustomerName);
//Print number of integers entered
System.out.println("Total Items Ordered: " + nCount);
//Print number of integers entered
System.out.println("Total: $" + nSum);
}//end main class
}//end public class
【问题讨论】:
-
Stack Overflow 不是家庭作业完成服务。
-
首先,如果你想让用户选择多个项目,你必须循环运行你的逻辑。其次,您可以使用
nPrice += 119;而不是nPrice = 119;- 例如... -
@redFIVE 您是否完全阅读了他的问题?他没有要求我们做他的硬件。你应该撤回你的反对票。
-
您的代码不是已经按照您的要求执行了吗?您已经有一个循环,并且您已经在添加项目的值...
-
@alfasin,需求转储,代码转储 +
Here is my issue how to i add the values inside my nested if depending on what numbers the user select?。这怎么不是作业完成请求?另外,我会随心所欲地投反对票。
标签: java while-loop