var mas:array[0..9] of integer; i,max,min,k:integer; arifm:real; begin k:=0; arifm:=0; Randomize; for i:=0 to 9 do mas[i]:=Random(15); for i:=0 to 9 do write(mas[i],' '); {poisk max} max:=mas[0]; for i:=1 to 9 do if max<mas[i] then max:=mas[i]; {poisk min} min:=mas[0]; for i:=1 to 9 do if min>mas[i] then min:=mas[i]; arifm:=(max+min)/2; writeln('max: ',max); writeln('min: ',min); writeln('arifm: ',arifm:0:3); for i:=0 to 9 do if mas[i]<arifm then inc(k); writeln('k: ',k); readln; end.
1) Независимо от условия будет выполнен оператор присваивания. a:=b 2) Условие ложное, значит будет выполнен оператор после else write('b') 3) Условие истинное, значит будет выполнен оператор после then write('a') 4) Функции операторов присваивания одинаковы, значит не зависят от условия (a + b - 14 = b - 14 + a) a := a + b - 14 5) Оператор a := a практически ничего не изменяет, значит можно избавится от него if a<b then a:=b 6) То же самое, что и в пункте 5, только нужно поменять истину на ложь if not(a>b) then a:=b 7) Остаток деления на 2 не может быть равен трем, значит условие всегда ложно. Else нет, значит условный оператор можно смело откинуть 8) Остаток от деления на может быть равен или 0 или 1, значит в любом случае условие истинно. Первый условный оператор можно смело откинуть, но вложеннный остается! if a<0 then a:=-a 9) Если a отрицательное, тогда b = a, то есть тоже отрицательно. Если a неотрицательное, тогда b = -a, то есть b отрицательное. Можно записать как модуль числа a, умноженный на -1 b := -abs(a)
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку