На вход подаётся целое трёхзначное число, а затем цифра. Выведите true, если эта цифра является средней в числе (разряд десятков), и false - если нет
import java.util.Scanner;
class Example {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int value1 = Math.abs(input.nextInt());
int value2 = Math.abs(input.nextInt());
if(value1 >= 99 & value1 <= 1000){
if((value1 % 100 / 10) == value2){
System.out.println("true");
}else{
System.out.println("false");
}
}else{
System.out.println("error");
}
}
}
Ответы (2 шт):
Автор решения: Stanislav Volodarskiy
→ Ссылка
Ошибка в том что ваша программа отвечает true вместо error
для -99 9 и 99 9. Вот это место: value1 >= 99.
А ещё true для -1000 0 и 1000 0.
Автор решения: pautinaa
→ Ссылка
Ты невнимательно прочитал задание, диапазон проверки чисел должен быть трехзнаяным.
import java.util.Scanner;
class Example {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int value1 = Math.abs(input.nextInt());
int value2 = Math.abs(input.nextInt());
if(value1 > 99 & value1 < 1000){
if((value1 % 100 / 10) == value2){
System.out.println("true");
}else{
System.out.println("false");
}
}else{
System.out.println("error");
}
}
}
