Цикл — разновидность управляющей конструкции в высокоуровневых языках программирования, предназначенная для организации многократного исполнения набора инструкций. Команда цикла в паскале: 1)for x to n do begin
end. 2) while < условие> do <оператор 1>; {Пока … делай ….} 3)repeat { повторяй … } <оператор 1>; < оператор 2>; … until {до…} <условие>
2. Условие цикла - это то, где мы объявляем задачу: "for 1 to 2 do" Тело цикла -Последовательность инструкций, предназначенная для многократного исполнения, называется телом цикла. пример: begin (действие) end.
Предположим, что первое введённое число - максимальное. Тогда в ans мы будем хранить 1, если первое число не меньше удвоенной суммы второго и третьего, и 0, если меньше.
Проверим - если второе число больше первого, мы запомним, что максимальное число у нас второе и пересчитаем ответ: 1, если второе число не меньше удвоенной суммы первого и третьего, 0 иначе.
Точно так же проверим третье число: если оно больше нашего максимального, обновим его и ответ.
После этого мы выведем "YES", если в ans хранится 1, "NO" иначе.
Код
#include <bits/stdc++.h>
using namespace std;
int main() {
int a, b, c;
cin >> a >> b >> c;
int mx = a;
int ans = (a >= (b + c) * 2 ? 1 : 0);
if (b > mx) {
mx = b;
ans = (b >= (a + c) * 2 ? 1 : 0);
}
if (c > mx) {
mx = c;
ans = (c >= (a + b) * 2 ? 1 : 0);
}
cout << (ans == 1 ? "YES" : "NO") << endl;
return 0;
}
Другие варианты1) int + тернарный оператор -> bool
Команда цикла в паскале:
1)for x to n do
begin
end.
2) while < условие> do <оператор 1>; {Пока … делай ….}
3)repeat { повторяй … }
<оператор 1>;
< оператор 2>;
…
until {до…} <условие>
2.
Условие цикла - это то, где мы объявляем задачу:
"for 1 to 2 do"
Тело цикла -Последовательность инструкций, предназначенная для многократного исполнения, называется телом цикла.
пример:
begin
(действие)
end.
Предположим, что первое введённое число - максимальное. Тогда в ans мы будем хранить 1, если первое число не меньше удвоенной суммы второго и третьего, и 0, если меньше.
Проверим - если второе число больше первого, мы запомним, что максимальное число у нас второе и пересчитаем ответ: 1, если второе число не меньше удвоенной суммы первого и третьего, 0 иначе.
Точно так же проверим третье число: если оно больше нашего максимального, обновим его и ответ.
После этого мы выведем "YES", если в ans хранится 1, "NO" иначе.
Код
#include <bits/stdc++.h>
using namespace std;
int main() {
int a, b, c;
cin >> a >> b >> c;
int mx = a;
int ans = (a >= (b + c) * 2 ? 1 : 0);
if (b > mx) {
mx = b;
ans = (b >= (a + c) * 2 ? 1 : 0);
}
if (c > mx) {
mx = c;
ans = (c >= (a + b) * 2 ? 1 : 0);
}
cout << (ans == 1 ? "YES" : "NO") << endl;
return 0;
}
Другие варианты1) int + тернарный оператор -> bool
#include <bits/stdc++.h>
using namespace std;
int main() {
int a, b, c;
cin >> a >> b >> c;
int mx = a;
bool ans = (a >= (b + c) * 2);
if (b > mx) {
mx = b;
ans = (b >= (a + c) * 2);
}
if (c > mx) {
mx = c;
ans = (c >= (a + b) * 2);
}
cout << (ans ? "YES" : "NO") << endl;
return 0;
}
2) string ans
#include <bits/stdc++.h>
using namespace std;
int main() {
int a, b, c;
cin >> a >> b >> c;
int mx = a;
string ans = (a >= (b + c) * 2 ? "YES" : "NO");
if (b > mx) {
mx = b;
ans = (b >= (a + c) * 2 ? "YES" : "NO");
}
if (c > mx) {
mx = c;
ans = (c >= (a + b) * 2 ? "YES" : "NO");
}
cout << ans << endl;
return 0;
}