我的代码运行不正常 import java.util.Scanner; 公共类新类{ 公共静态void main(字符串[]args){ 扫描仪输入=新扫描仪(System.in); 字符串productMin=“”; 系统输出打印(“你有多少钱?”); double money=input.nextDouble(); 双倍价格=0; 双倍合计=0; 双倍产品价格; 系统输出打印(“请在发票中插入项目 产品名称及其价格):\n插入\\\\\\\\\“作为产品名称 要完成输入的产品\n“; 字符串productName=input.next(); productPrice=input.nextDouble(); 总计=总计+产品价格; 而(!input.next().equals(“stop”)) { 如果(最小价格
在该行中我的代码运行不正常 import java.util.Scanner; 公共类新类{ 公共静态void main(字符串[]args){ 扫描仪输入=新扫描仪(System.in); 字符串productMin=“”; 系统输出打印(“你有多少钱?”); double money=input.nextDouble(); 双倍价格=0; 双倍合计=0; 双倍产品价格; 系统输出打印(“请在发票中插入项目 产品名称及其价格):\n插入\\\\\\\\\“作为产品名称 要完成输入的产品\n“; 字符串productName=input.next(); productPrice=input.nextDouble(); 总计=总计+产品价格; 而(!input.next().equals(“stop”)) { 如果(最小价格,java,Java,在该行中 import java.util.Scanner; public class NewClass { public static void main(String[]args){ Scanner input=new Scanner(System.in); String productMin=""; System.out.print("How much money do you have? "); double money=input.nextDouble(
import java.util.Scanner;
public class NewClass {
public static void main(String[]args){
Scanner input=new Scanner(System.in);
String productMin="";
System.out.print("How much money do you have? ");
double money=input.nextDouble();
double minPrice=0;
double total=0;
double productPrice;
System.out.print("Please, insert the items in the invoice (the
name of product and its price):\n Insert \\\"stop\\\" as the name of
product to finish your input \n");
String productName=input.next();
productPrice=input.nextDouble();
total=total+productPrice;
while(!input.next().equals("stop"))
{
if(minPrice<productPrice)
{
minPrice=productPrice;
productMin=productName;
}
productName=input.next();
total=total+productPrice;
}
if(total<=money)
{
System.out.println("You have enough money !");
System.out.printf("%s is the item with the minimum price(which is SR
%.3f)\n",productMin,minPrice);
}
else
System.out.println("You don\'t have enough money");
System.out.println(total);
}//end of main method
}//end of calss
如果用户没有输入
stop
,会发生什么情况?-他/她仍然输入了一些东西…你只是忘记了在while循环中将产品价格作为一个输入,你将其作为一个字符串。这是一个任务吗?看看。相同的代码。相同的问题。是的。我尝试修改我的代码,就像你给出的链接中的代码一样我认为它仍然不起作用,供将来参考,您的问题缺少有用的信息,包括您的预期输出和观察到的输出。请尝试在将来提出更完整的问题。很抱歉,我没有引起注意。是的,他将继续输入产品名称及其价格,直到输入Stop。但是产品名称在哪里它存储在这里??它存储在名为productNameno的变量中,而不是。productName获取下一个令牌(可能是价格)它会给您一个致命的逻辑错误,因为您没有以正确的方式执行比较。首先,您应该编辑代码,在while循环中将产品价格作为双精度,因为如果不这样做,价格将输入到productname字符串中,其次,您可以用一个大值初始化minPrice,例如99999999和n将当前产品价格与循环中的价格进行比较。尝试通过使用system out打印结果来跟踪您的代码逻辑,这对您真的很有帮助。我做了什么?:lBut它的链接在这里,以便我可以检查它::D
while(!input.next().equals("stop"))