Java 检查数组的和必须小于最大时间
检查数组和是否小于最大时间,如果是,则随机数生成器将停止,输出如下:Java 检查数组的和必须小于最大时间,java,arrays,Java,Arrays,检查数组和是否小于最大时间,如果是,则随机数生成器将停止,输出如下: No of customer = 3 max time = 4; customer 1 = 3 customer 2 = 1 total time = 4 //so the customer 3 a 类CstplangsBadango package cstplangsbadango; import java.io.*; import java
No of customer = 3
max time = 4;
customer 1 = 3
customer 2 = 1
total time = 4
//so the customer 3 a
类CstplangsBadango
package cstplangsbadango;
import java.io.*;
import java.util.Random;
import java.util.Scanner;
public class CstplangsBadango {
static int customer = 0;
static int maxTime = 0;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Random rand = new Random();
System.out.print("Enter number of customer: ");
customer = sc.nextInt();
System.out.print("Enter number of Maximum time: ");
maxTime = sc.nextInt();
System.out.println(" ");
int[] cust = new int[customer];
int j = 0;
int sum = 0;
int sum1 = 0;
int chu = 0;
for (int i = 0; i < cust.length; i++) {
cust[i] = (int) randomFill();
j += 1;
sum += cust[i];
System.out.println("Customer #" + j + " = " + cust[i]);
}
System.out.println(" ");
System.out.println("Maximum time: " + sum);
}
public static double randomFill() {
Random rand = new Random();
int randomNum = rand.nextInt(3) + 1;
return randomNum;
}
}
包cstplangsbadango;
导入java.io.*;
导入java.util.Random;
导入java.util.Scanner;
公共类CstplangsBadango{
静态int客户=0;
静态int maxTime=0;
公共静态void main(字符串[]args){
扫描仪sc=新的扫描仪(System.in);
Random rand=新的Random();
系统输出打印(“输入客户编号:”);
customer=sc.nextInt();
System.out.print(“输入最长时间:”);
maxTime=sc.nextInt();
System.out.println(“”);
int[]cust=新int[客户];
int j=0;
整数和=0;
int sum1=0;
int-chu=0;
for(int i=0;i
for(int i=0;i
您必须排除您的声明
j+=1;
sum += cust[i];
System.out.println("Customer #" + j + " = " + cust[i])
并在填充数组时在创建的循环下方创建另一个循环
for(int i=0;i<cust.length;++i)
{
j+=1;
sum+=cust[i];
if(sum>=MAX_TIME)
{
i=cust.length;
System.out.println("Customer #" + j + " = " + cust[i]);
}
}
if(sum>MAX_TIME)
{
int subtractor=sum-MAX_TIME;
sum-=subtractor;
}
for(int i=0;i=MAX_TIME)
{
i=客户长度;
System.out.println(“客户#“+j+”=“+cust[i]);
}
}
如果(总和>最大时间)
{
int减法器=总和最大时间;
总和-=减法器;
}
customer 3随后被删除,因为当customer 2到达计数器时,它已经消耗了4个最长时间,您有什么问题吗?你刚刚陈述了你的家庭作业问题并发布了一些代码,但看起来你忘记问问题了。问题出在哪里?请指定您当前遇到的问题..如何比较最长时间上的数组和,然后如果达到最长时间,它将在for循环上停止。抱歉>-<但示例输出已声明,谢谢您的帮助me@JeraldBadango因为最大时间是一个不变的值,所以您希望它是final max_time=4代码>每当我键入奇数的最大时间值时,总时间都会超过最大时间…@JeraldBadango是否希望总时间不超过最大时间?是,但显示的总时间超过了最大时间time@JeraldBadango您可能需要添加一个变量,该变量将设置正确的总时间int减法器代码>减法器=总时间-最大时间代码>totalTime-=减法符代码>它显示总时间的负值
for(int i=0;i<cust.length;++i)
{
j+=1;
sum+=cust[i];
if(sum>=MAX_TIME)
{
i=cust.length;
System.out.println("Customer #" + j + " = " + cust[i]);
}
}
if(sum>MAX_TIME)
{
int subtractor=sum-MAX_TIME;
sum-=subtractor;
}