Я работал над этим вчера, но мне все время не удавалось получить два простых множителя 91. Поэтому я просто немного схитрил, чтобы сдать экзамен. Сейчас я оглядываюсь назад, чтобы посмотреть, смогу ли я заставить это работать.
Код: Выделить всё
//made this code for a java test
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int num, fact1 = 0, fact2 = 0;
System.out.print("Enter a number: ");
num = scan.nextInt();
int check = num;
System.out.print("Prime factors of "+num+" (excluding multiples of 3): ");
for (int i=2; i 0) {
System.out.print(fact1+" "+fact2);
} else {
System.out.print(fact1+" ");
}
}
}
Я добавил значения, чтобы проверить приращение, и был удивлен, увидев, что оно увеличилось только до 12??? Всего на один шаг ниже 13, что является ожидаемым вторым фактором, и цикл завершен. Мне любопытно, почему оно не дошло до 90, потому что 90 — это последнее число перед 91. Мне пришлось отредактировать условие цикла for из i
Подробнее здесь:
https://stackoverflow.com/questions/791 ... o-the-last