Условие задачи
Каждая пара чисел входного потока задает некоторое линейное уравнение. Выпишите через запятую решения этих уравнений (если это возможно).
Тесты
№
|
Входные данные | Выходные данные |
1
|
0 0 1 0 0 1 | Infinite set of roots; 0.0; No roots; |
2
|
2.02134 -0.52412 15.578 0 5.302 -89 -431.345 9.43 7 49 | 0.25929334006154336; 0.0; 16.786118445869484; 0.021861850722739336; -7.0; |
3
|
1 1 -6 -2 1 -2 10 0 | -1.0; -0.3333333333333333; 2.0; 0.0; |
Код на языке C++
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
#include <iostream> using namespace std; int main() { double a, b, x; int n = 0; while (cin >> a >> b) { cout << ++n << ") "; if (a == 0) { if (b == 0) cout << "Infinite set of roots; \n"; else cout << "No roots; \n"; } else { x = (-b/a == -0)? b/a : -b/a; cout << x << "; \n"; } } return 0; } |
Код на языке Java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
import java.util.*; import java.lang.*; import java.io.*; class Ideone { public static void main (String[] args) throws java.lang.Exception { double a, b, x; Scanner in = new Scanner(System.in); while (in.hasNextDouble()) { a = in.nextDouble(); b = in.nextDouble(); if (a == 0) { if (b == 0) System.out.println("Infinite set of roots; "); else System.out.println("No roots; "); } else { x = (-b/a == -0)? b/a : -b/a; // Тернарная операция, чтобы избежать выражения "-0" System.out.println(x + "; "); } } } } |
Решение задачи
Линейное уравнение, зависящее от двух параметров, в общей форме имеет вид: [latex] ax + b = 0 [/latex]. Количество решений зависит от параметров [latex]a[/latex] и [latex]b[/latex].
Если [latex] a = b = 0 [/latex], то уравнение имеет бесконечное множество решений, поскольку [latex]\forall x\in \mathbb {R} :x\cdot 0=0[/latex].
Если [latex] a=0,b\neq 0[/latex], то уравнение не имеет решений, поскольку [latex] \not \exists x\in \mathbb {R} :0\cdot x=-b\neq 0[/latex].
Если [latex] a\neq 0[/latex], то уравнение имеет единственное решение [latex] x=-{\frac {b}{a}} [/latex].
Условие задачи.
Код программы на языке C++;
Код программы на языке Java.