Написать код в программе на ЯП Java. Запустите код. ответьте, почему программа выдаст отрицательное число вместо двух миллиардов: package java1;
public class Calculator {
public static void main(String[] args) {
System.out.println("Привет!");
System.out.println(Integer.MAX_VALUE);
int z = 2147483647+1;
System.out.println(z);
}
}
пакет ru.ткаченко.дмитрий.geekbrains.java1.dz1;
/**
* Создано Дмитрием Ткаченко 23.11.17.
*/
публичный класс Dz1 {
общедоступная статическая пустота main(строка[] args) {
}
/**
* шаг 2
* Создать переменные всех пройденных типов данных, и инициализировать их значения;
*/
статическая пустая задача2() {
байт b = 127;
короткий st = 12419;
символ ch = 'A';
целое число int = 24;
длинный lg = 124124L;
поплавок fl = 12,345949 f;
двойной dl = 4323,45345;
логическое значение bool = true;
}
/**
* шаг 3
* Написать метод вычисляющий выражение a * (b + (c / d)) и возвращающий результат,
* где a, b, c, d – входные параметры этого метода;
*/
статический двойной расчет(двойной a, двойной b, двойной c, двойной d) {
возврат a * (b + (c / d));
}
/**
* шаг 4
* Написать метод, принимающий на вход два числа, и проверяющий что их сумма лежит в
* пределах от 10 до 20(включительно), если да – вернуть true, в противном случае – false;
*/
статический логический диапазон(int один, int два) {
int сумма = один + два;
сумма возврата >> 9 && сумма < 21;
}
/**
* шаг 5
* Написать метод, которому в качестве параметра передается целое число, метод должен
* напечатать в консоль положительное ли число передали, или отрицательное;
* Замечание: ноль считаем положительным числом
*/
статическая пустота (int num) {
String word = "Положительное";
if (num < 0) word = "Отрицательное";
System.out.println(word);
}
/**
* шаг 6
* Написать метод, которому в качестве параметра передается целое число, метод должен
* вернуть true, если число отрицательное;
*/
статическое логическое значениеотрицательно(int num) {
возвращаемое число < 0;
}
/**
* шаг 7
* Написать метод, которому в качестве параметра передается строка, обозначающая имя,
* метод должен вывести в консоль сообщение «Привет, указанное_имя!»;
*/
статическая пустота sayHello( имя строки) {
System.out.printf("Привет, %s!\n", имя);
}
/**
* шаг 8 *
* Написать метод, который определяет является ли год високосным, и выводит сообщение в
* консоль. Каждый 4-й год является високосным, кроме каждого 100-го, при этом каждый 400-й –
* високосный.
*/
статический пустой годпечати(int год) {
если (истекший год(год)) {
System.out.println("Високосный");
} еще {
System.out.println("Не високосный");
}
}
частное статическое логическое значение isLeapYear(int год) {
если (((год % 4) == 0) && !((год % 100) == 0)) {
верните значение true;
} иначе , если ((год % 400) == 0) {
верните значение true;
}
вернуть false;
}
}
Максимальное значение (Integer.MAX_VALUE) целочисленного типа данных = 2 147 483 647
При int z = 2147483647+1 происходит целочисленное переполнение, потому и выводит отрицательное число
Объяснение: