Java 我仍然没有得到正确的值
现在,循环正在工作,但我正在获取“tc”的初始化值。 我想要总成本的值,即这里的tc,通过公式-| Y-X |*max(c,b) 但是我的程序正在返回tc的初始化值,即0 在解析循环之后,答案仍然与初始化值相同Java 我仍然没有得到正确的值,java,for-loop,Java,For Loop,现在,循环正在工作,但我正在获取“tc”的初始化值。 我想要总成本的值,即这里的tc,通过公式-| Y-X |*max(c,b) 但是我的程序正在返回tc的初始化值,即0 在解析循环之后,答案仍然与初始化值相同 import java.util.*; public class Main { static int max(int c, int b){ int m; if(b<c){ m=c; } else{
import java.util.*;
public class Main {
static int max(int c, int b){
int m;
if(b<c){
m=c;
} else{
m=b;
}
return m;
}
public static void main(String[] args) {
int i, y, z, b, c, j, tc = 0;
Scanner in= new Scanner(System.in);
System.out.println("Enter the number of soldiers");
int n = in.nextInt();
System.out.println("Enter the coordinates of "+ n + " soldiers");
int X[]=new int[n];
for (i=0;i<n;i++){
X[i]= in.nextInt();
}
System.out.println("Enter the numbers of bomb with soldiers");
int B[]=new int[n];
for (i=0;i<n;i++) {
B[i]= in.nextInt();
}
//below this
for (i = n-1; i >= 1 ; i--)
{
y = X[i];
c = B[i];
System.out.println(i);
for (j = i-1; j >= 0; j--)
{
System.out.println(j);
z = X[i];
b = B[i];
int m = max(c,b);
tc += (y - z) * m;
}
}
// till here
System.out.println(tc);
}
}
import java.util.*;
公共班机{
静态整数最大值(整数c,整数b){
int m;
if(我认为需要为(i=n;i>=1;i--)替换for循环)@GauravJeswani,这将导致循环继续,直到i
溢出到Integer.MIN\u VALUE
。我不认为这是Cipher想要的。@Mihir,抱歉更新了评论,他需要做我——以及Cipher,你到底想做什么?你的公式试图表示什么?作为旁注,你可以使用数学。max(int a,int b)
而不是创建自己的max()
方法。@MihirKekkar thnx,现在循环工作了,但答案仍然是错误的。