/
javapractice
/
JavaPractice
Обзор
Документация
Войти
/
javapractice
/
JavaPractice
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
2
CI/CD
Аналитика
develop
CodeRun/src/main/java/quickStart/QuickStartExercise05.java
55 строк
3 KB
Кузьма Даждъбогин
TSKJVPRCTC5-9 Yandex. CodeRun. Задачи из раздела "Быстрый старт".
16 дек 2025, 15:04
16 дек 2025, 15:04
06efdfd
Код
Авторство
О чём код?
package quickStart; import java.io.*; /** * Вам дано квадратное уравнение вида: a*x^2 + b*x + c = 0, где a, b и c — целые числа, такие что a≠0. * Напишите программу, которая решает это уравнение. * <br> * Формат ввода<br> * Единственная строка входных данных содержит три целых числ a,b,c(−10^3 ≤ a,b,c ≤ 10^3, a≠0). * <br> * * Формат вывода<br> * В первой строке выведите количество действительных корней уравнения. * * В второй строке выведите сами корни. * Если уравнение имеет два корня, то выведите их через пробел в порядке возрастания. * Если корень один, то выведите его. * Если корней нет, то ничего выводить не нужно. * Ваш ответ будет принят, если введенные числа отличаются от правильных ответов на величину не более 10^−6 */ public class QuickStartExercise05 { public static void main(String[] args) throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(System.out)); String[] input = reader.readLine().split(" "); int a = Integer.parseInt(input[0]); int b = Integer.parseInt(input[1]); int c = Integer.parseInt(input[2]); // Вычисляем дискриминант double discriminant = b * b - 4 * a * c; if (discriminant > 0) { // Два различных действительных корня double sqrtD = Math.sqrt(discriminant); double root1 = (-b - sqrtD) / (2.0 * a); double root2 = (-b + sqrtD) / (2.0 * a); writer.write("2\n"); if (root1 < root2) { writer.write(root1 + " " + root2); } else { writer.write(root2 + " " + root1); } } else if (discriminant == 0) { // Один корень double root = -b / (2.0 * a); writer.write("1\n"); writer.write(String.valueOf(root)); } else { // Нет действительных корней writer.write("0"); } reader.close(); writer.close(); } }