Тернарный оператор должен возвращать значение (или ссылку на переменную), которое потом можно использовать. Например, если в целочисленной переменной a записано число -3, то используя такой синтаксис:
int absa = a >= 0 ? a : -a;
можно присвоить переменной absa значение |-3| = 3.
Выражения break, continue (и, например, return) управляют выполнением программы, показывая, какую инструкцию выполнять следующей, и не возвращают никакого значения (даже void). Поэтому при попытке использовать такие выражения в качестве аргументов тернарного оператора, ожидающего, что оба аргумента вернут какое-то значение, возникает ошибка компиляции.
Если очень хочется использовать тернарный оператор для выхода из цикла (но зачем?) можно выбрасывать исключение, которое потом обрабатывать, например, так:
try {
int a = 5;
while(true) {
a == 0 ? throw "a equals 0" : (void) 0;
a--;
}
} catch (<span>char const*</span> s) {
if (s != "a equals 0") throw s;
};
1111101(2)=2^6+2^5+2^4+2^3+2^2+2^0=125(10)
AF(16)=175(10)
A=10 F=15
AF(16)=16^1*10+16^0*15=175(10)
36(8)=3*8^1+6*8^0=30(10)
1101(2)=2^3+2^2+2^0=13(10)
125+175+30+13=343
Var a: array [1..8] of integer;
i: integer;
begin
for i := 1 to 8 do
readln(a[i]);
for i := 8 downto 1 do
writeln(a[i]);
<span>end.
Вот так)</span>