Итак, моя задача - прочитать файл по строкам и сохранить целые числа в массиве. Затем добавьте целые числа в пятнах 1-5, 2-6, 3-7 и т. Д. И сохраните их в новый массив.Как сравнить два массива разных размеров?
В массиве 1 есть еще 4 значения, чем массив 2. Мне нужно сравнить эти массивы и посмотреть, массив array1 равен 0.999 больше, чем array2.
Если это действительно больше, мне нужно распечатать МЕСТО числа в массиве 1.
Сейчас моя проблема заключается в моем коде выводе, что каждое число больше, чем соответствующее число в массиве- .
Код:
import java.io.*;
import java.util.Arrays;
import java.util.Scanner;
public class Asgn7
{
public static void main(String[] args) throws FileNotFoundException
{
Scanner file = new Scanner(new File("asgn7data.txt"));
double[] array = new double[file.nextInt()];
double[] newArray = new double[array.length - 4];
double tempVal = 0;
int j = 0;
int count = 0;
while(file.hasNext())
{
for(int i = 0; i < array.length ; i++)
{
array[i] = file.nextInt();
}
for(j = 0; j < array.length - 4; j++)
{
for(int k = 0; k < 5; k++)
{
newArray[j] += array[j+k]/5;
}
}
for(int i = 2; i < array.length; i++)
{
if(array[i] > (newArray[i-2] + 0.999));
{
count++;
tempVal = count;
}
System.out.println(tempVal);
}
}
}
}
значения, которые должны быть сравниваемых от 3-13.
Не уверен в вашей логике. Числа в 'newArray' не такие, как вы указали, а среднее из пяти чисел в спортивных состязаниях 1-5, в среднем 2-6 и т. Д. Кроме того, вы сравниваете все числа в' array' с одним, конкретным элемент в 'newArray' (элементы' j-2' и 'j' не меняются. Что именно вы пытаетесь достичь этим? – RealSkeptic
В среднем, правильно, это плохо, если это i-2 ? –
@RealSkeptic -> i = 2, так что массив [i] начинается с третьего индекса, и j-2 был там, потому что, когда я кладу i-2 с newArray [i-2], я получаю выход of bounds error –