Эй, ребята, я работал над проектом, и результат ничего не дает. Я уже пробовал кучу вещей, которые не дали никаких результатов, кроме перемещения System.out.print над скобкой, которая только что напечатала бесконечное количество случайных чисел. Это короткий код, так вот:Программа Java работает, но не дает выход
import java.util.Scanner;
import java.io.IOException;
import java.io.File;
public class ACSLPrintsJR {
public static int value(int num){
int [] array = {0,16,16,8,8,4,4,2,2,1,1};
return array[num];
}
public static void main(String[] args) throws IOException {
int top = 1;
int bottom = 1;
File file = new File("ACSLPRINTSJR.IN");
Scanner scan = new Scanner(file);
int num = scan.nextInt();
while (num != 0){
num = scan.nextInt();
if (num % 2 == 0)
top += 1 + value(num);
else
bottom += 1 + value(num);
}
System.out.println(top+"/"+bottom);
scan.close();
}
}
Как я сказал, что нет выхода, и вот содержание IN файла
ввода является:
Ожидаемый результат:
19/3
1/1
Токовый выход: Ничего
Вам необходимо обновить 'num' в цикле while, используя' num = scan.nextInt() '. –
Пройдите через свой код на бумаге, чтобы посмотреть, что он делает в этом цикле. Если вы это сделаете, вы увидите, что он никогда не получает данные из сканера. –
Я сделал это, и теперь он фактически выводит что-то, но это не правильный вывод, и он делает это только для одной строки. – icecreeper01