1. a = 10; b = 5; not (a < 5) -> not (5 < 5) -> not false -> true -> a = 5 ответ: 5
2. a = 10; b = 5; (a > 5) and (a < b) -> (10 > 5) and (10 < 5) -> true and false -> false ответ: 10
3. a = 10; b = 5; (a > 1) or (a < b) -> (10 > 1) or (10 < 5) -> true or false -> true -> a = a-5 = 10-5 = 5 (a > 1) and (a = b) -> (5 > 1) and (5 = 5) -> true and true -> true -> a = a-5 = 5-5 = 0 ответ: 0
4. a = 10; b = 5; (a > 1) and (a < b) -> (10 > 1) and (10 < 5) -> true and false -> false (a > 1) and (a = b) -> (10 > 1) and (10 = 5) -> true and false -> false ответ: 10
5. a := 10; b := 5; (a > 1) and (a < b) -> (10 > 1) and (10 < 5) -> true and false -> false -> a = a + 7 = 10+7 = 17 ответ: and
6. a = 10; b := 5; (a < 1) or (a > b) -> (10 < 1) or (10 > 5) -> a = a-7 = 10-7 = 3 ответ: or
7. a = 10; b = 5; (a < 1) and (a > b) -> (10 < 1) and (10 > 5) -> false and true -> false -> a = a + 5 = 10+5 = 15 ответ: and
using namespace std;
int main() {
int a, b, c, n, i;
cout << "n = ";
cin >> n;
if (n < 3) {
cout << "Не может быть менее 3 прямых!" << endl;
return 2;
}
int aa[n], bb[n], cc[n];
cout << "Ввод в формате 'a b c'" << endl;
for (i = 0; i < n; i++) {
cout << "прямая " << i << ": ";
cin >> a >> b >> c;
if ((a == 0) && (b == 0)) {
cout << "Оба коэффициента равны 0, повторите ввод." << endl;
i--;
}
else {
aa[i] = a;
bb[i] = b;
cc[i] = c;
}
}
for (i = 0; i < n; i++) {
a = aa[i];
b = bb[i];
c = cc[i];
for (int j = 0; j < n; j++) {
if (j == i) continue;
if (aa[i] / aa[j] == bb[i] / bb[j]) {
for (int k = 0; k < n; k++) {
if ((k == i) || (k == j)) continue;
if (aa[i] / aa[k] == bb[i] / bb[k])
cout << "прямые " << i << ", " << j << " и " << k << " пересекаются." << endl;
return 0;
}
}
}
}
cout << "Среди данных прямых нет трёх пересекающихся." << endl;
return 1;
}