Java 如何使程序将用户输入20读取为20%或0.20
这是我要求用户输入以下内容的部分 输入项目名称:Shirt 项目原价:700 加成百分比:20 销售税率:7 输出:Java 如何使程序将用户输入20读取为20%或0.20,java,Java,这是我要求用户输入以下内容的部分 输入项目名称:Shirt 项目原价:700 加成百分比:20 销售税率:7 输出: 待售商品:衬衫 商品原价:700.00 加价后的价格:840.00 销售税:58.80 项目最终价格:898.80 所以我的问题是如何让程序读取20和7的输入作为百分比 import java.util.*; import javax.swing.*; public class lab3 { public static void main(Str
待售商品:衬衫
商品原价:700.00
加价后的价格:840.00
销售税:58.80
项目最终价格:898.80
所以我的问题是如何让程序读取20和7的输入作为百分比
import java.util.*;
import javax.swing.*;
public class lab3 {
public static void main(String[] args) {
JOptionPane jo=new JOptionPane();
String item=jo.showInputDialog("Item to be sold: ");
double Oprice=Double.parseDouble(
jo.showInputDialog("Original price of the item: "));
double mup=Double.parseDouble(
jo.showInputDialog("Marked-up percentage: "));
double str=Double.parseDouble(
jo.showInputDialog("Sales Tax Rate: "));
double pamu=(Oprice*mup)+Oprice;
double ST=pamu*str;
double result=pamu+ST;
String hold= "\n| Item to be sold \t: "+item+"\t |"
+"\n| Original price of the item \t: "+Oprice+"\t |"
+"\n| Price after mark-up \t: "+pamu+"\t |"
+"\n| Sales Tax \t: "+ST+"\t |"
+"\n| Final price of the item \t: "+result+"\t |";
jo.showMessageDialog(null, new JTextArea(hold));
}
}
这是我的实际代码。对不起,这里很乱。就像我说的,这还是一个新概念,让我们使用
扫描仪来读取用户的信息:
Scanner keyboard = new Scanner(System.in);
System.out.println("Enter item name:");
String item;
keyboard.nextLine();
System.out.println("Original Price of item:");
double originalPrice;
keyboard.nextDouble();
System.out.println("Marked up percentage:");
double markedUpPercentage;
keyboard.nextDouble();
markedUpPercentage = markedUpPercentage/100; //this is what you want
System.out.println("Sales tax rate:");
double salesTaxRate;
keyboard.nextDouble();
salesTaxRate = salesTaxRate/100; //same thing here
//now output
System.out.println("Item to be sold: " + item);
System.out.println("Original price of the item: " + originalPrice);
System.out.println("Price after mark up: " + (originalPrice + originalPrice * markedUpPrice));
//similarly, do for sales tax
Scanner sc = new Scanner(System.in);
double percentage = 0.01 * sc.nextInt();
我会成功的
double pamu = (Oprice*(mup/100)) + Oprice; // enter code here
double ST = pamu*(str/100) ;
double result = pamu+ST ;
我想这应该行。提示:如果除以100会发生什么?(确保您正在执行浮点运算…)不要使用浮点或双精度,但实际代码在哪里?我真的不知道如何添加实际代码。。我还是个新手。对不起,我不明白这个问题,到底出了什么问题?我的意思是700+20%=840,因为代码已经在计算/输出-其余的计算也是如此。我的错,没有注意到这一点。问题本身没有代码,所以我认为是错的。@johnfelix只是将它复制粘贴到编辑器中。在粘贴之前留出4个空格,以便编辑器理解粘贴的是代码。这真的有效吗?编译?至少这不是Java!e、 g.nextLine
不接受任何参数,nextDouble
!!Java是按值传递的,我希望类似于item=keyboard.nextLine()
。。。既然您已经有时间编辑答案,为什么不删除“因为您没有指定…”部分呢?