我使用java计算一个简单的组合,当我定义结果为双精度时,答案似乎是正确的,只是失去了一些精度,但是当我使用BigInteger类时,答案看起来根本就是错误的,我不明白为什么会这样,这是代码。
import java.math.BigInteger;
import java.util.Scanner;
public class Test {
public static void main(String[] args){
Scanner in = new Scanner(System.in);
System.out.println("Please input th
我有一个脚本,首先用python编写,然后用java编写。使用给定的参数100,50,9,3,python脚本生成1630。由于某些原因,java版本产生-22。为什么会这样呢?java代码中是否存在逻辑错误?
Python:
def calcPopulation(E,P,R,Y):
if E > 1000 or P > 100 or R > 50 or Y > 10:
print("One or more values that you entered is too high")
return None
double d=1/0.0;
System.out.println(d);
它打印Infinity,但是如果我们编写double d=1/0;并打印它,我们会得到这样的异常:Exception in thread "main" java.lang.ArithmeticException: / by zero at D.main(D.java:3)为什么Java在一种情况下知道减0就是无穷大,但是对于int0却没有定义?在这两种情况下,d都是双倍的,并且结果都是无穷大的。
我试图运行下面的程序,并期待Arithmetic Exception,因为我们是dividing double value by zero but getting Infinity as output。
这是下面的程序。But if we are using int instead of double then getting Arithmetic Exception
public static void main(String z[]) {
Double a = 10.0;
Double b = 0.0;
System.out.println(a/b);
}
输出:
在Java类上工作,这让我抓狂,因为这个表达式的值是零,我需要它的值为双精度,然后将其四舍五入为最接近的整数。所以我试图得到的是天数是一个整数,但是当我通过java运行它时,它的计算结果是0。当我通过我的计算器运行它时,它的计算结果是正确的值。我希望能解决这个问题,并解释为什么我已经拥有的东西不起作用。
public int getEventDays(){
//variables
double daysCalc;
int days;
//logic
if (getStatus().equals("filling")){
我的代码的问题是,当我输入0时,结果是0.0,但是每当我输入任何大于0的值时(比如1,2,3,4,5,6,998...anything),在每种情况下结果都是1.0。我的逻辑在迭代中是不是不正确?
我的代码:
/*/ Write a y program that will calculate the value of y if the expression
of y is as follows (n is the input):
y = 1/1 + 2/3 + 3/5 + 4/7 + ....... + n/(2n-1) /*/
import stati
我正在将一个java项目迁移到groovy。然后,我得到了一个,如果条件是在Groovy中给出false,这在false代码中给出了true。
Groovy示例代码:
int status_num = 301
if (status_num / 100 == 3) {
throw new GoogleServiceConditionException("Google Search System is under maintenance")
}
if条件为groovy提供了false。对于Java,它给出了真。
我怎样才能减轻这个问题呢?
我的任务是编写一个程序,提示用户输入一个正的双精度a和一个大于2的整数n,并将正整数a的n次根的值以100位的精度打印到屏幕上。我使用Math.pow来获取根,我感觉好像我做的每件事都是正确的。唯一的问题是,每次我运行我的程序时,无论我为a和n输入什么数字,输出都是1.0。我的代码有什么问题?
import java.util.Scanner;
import java.lang.Math;
public class Q8 {
public static void main(String[] args) {
System.out.println("Enter a p
为什么这在Java中有效,而在JavaScript中却不起作用?我试着在Java中使用它,它运行得非常好,但我不明白为什么它只在JavaScript中打印“不是回文”?谢谢
var n = 121;
var sum = 0, r;
var temp = n;
while(n>0)
{
r = n % 10;
sum = (sum*10)+r;
n = n/10;
}
if(temp==sum)
console.log("It is a Palindrome number.
S=1+ 1/2!+ 1/3!+1/4
这是我的代码:
import java.util.Scanner;
public class question{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n =sc.nextInt();
int[] fact= new int[n];
fact[0] =fact[1] =1;
for(int i=2;i<=n;i++)
{
fact[i]= fa
我试图通过我的CelsiusToFahrenheit.java文件中的main()类运行一个程序。我创建了一个名为CelsiusToFahrenheit的公共类,当这个类收到一个类型为"double“的参数时,它应该接受这个输入并通过一个算法运行它,该算法将摄氏数字转换为华氏温度。当我编译代码并输入整数时,输出并不反映分配给tempOutput的算法。以下是代码:
import java.util.Scanner;
public class CelsiusToFahrenheit {
public static double convertCelsiusToFahrenheit
我以前使用过BigDecimals,但不是很频繁,今天早上我正在做一些事情,我一直收到以下异常:
Exception in thread "main" java.lang.ArithmeticException: Non-terminating decimal expansion;
no exact representable decimal result.
at java.math.BigDecimal.divide(BigDecimal.java:1594)
我尝试设置比例并使用四舍五入来消除问题,如下所示:
BigDecimal bd1 = new Big
我对此很好奇:
在用Java计算1/0时,会出现以下异常:
线程“”java.lang.ArithmeticException: / by 0 at Foo.main(Foo.java:3)中的Foo.main异常
但是1/0.0被评估为Infinity。
public class Foo {
public static void main (String[] args) {
System.out.println(1/0.0);
}
}
这一切为什么要发生?
我要做的是:在下面的代码片段中,我打印出条形图的X轴,这取决于不同长度的单词数量。例如,最大的单词是长度6,所以X轴沿底部有1,2,3,4,5,6。
问题是:代码是完全功能的,但是在我的画图方法中返回了一个错误。
我尝试过的是:隔离引起问题的代码行,方法是将代码块变成一个方法,这个方法在into方法中被调用。
使用的变量:
lengthCountArray.length (数组长度指示沿底部有多少个数字)
int canvasWidth = 410;
int inferiorLeftCornerX = 50; // this the the x point of the left corne
我试着用Java做了一点实验,出现了这个问题:
public class TestRandom {
public static void main(String[] args){
System.out.println(Math.pow((1/(1+1)),1));
}
}
计算结果为0.0,最有可能是最初的NaN。
是我出了什么问题,还是有一个真实的解释?
我的公司有一个EJB,它试图通过RenderedImage将灰度TIFF映像转换为PNG映像。
今天,我了解到,在我不知道的情况下(我不是作者,而且我不在测试现场),它会以零例外抛出一个除法。我发现不寻常的是它是由PNGImageEncoder扔的。试图在网上搜索这个问题并没有提供任何有用的信息。
例外情况:
java.lang.ArithmeticException: divide by zero
at com.sun.media.jai.codecimpl.PNGImageEncoder.encodePass(PNGImageEncoder.java:367)
at com
在机器人动画类的方法applyTransformation中,我得到了误差除以零:
05-15 21:13:59.330: E/AndroidRuntime(16997): java.lang.ArithmeticException: divide by zero
05-15 21:13:59.330: E/AndroidRuntime(16997): at com.special.ResideMenuDemo.FontResize.applyTransformation(FontResize.java:34)
这是我的applyTransformation方法:
@Override
我试图实现的是一个考试的评分系统,但变量percentGrade继续返回0,如果有错误的答案。
供参考的代码:
import java.util.ArrayList;
public class Result
{
private Test test;
private ArrayList<String> correctAnswers;
public Result()
{
this.correctAnswers = new ArrayList<>();
}
public void addTest(Te
我刚开始学习java,我想我应该为我的朋友创建一个BMI程序。
但是只要我输入我的身高和质量,它就会返回0而不是BMI值。
import java.util.Scanner;
public class calculator {
public static void main(String[] args) {
int a, kg, height;
Scanner scanner = new Scanner(System.in);
System.out.println("What is your height in meter?");