//Pascal var A: array [1 .. 5, 1 .. 4] of integer; V: array [1 .. 20] of integer; i, j, z: byte; SUM1, SUM2, SUM3, MIN: integer; begin randomize; writeln('***Сгенерированный массив***'); SUM1 := 0; SUM2 := 0; SUM3 := 0; for i := 1 to 5 do begin for j := 1 to 4 do begin A[i, j] := random(30); if ((A[i, j] >= 0) and (A[i, j] <= 5)) then SUM1 := SUM1 + A[i, j]; if ((A[i, j] >= 5) and (A[i, j] <= 15)) then SUM2 := SUM2 + A[i, j]; write(A[i, j]:6) end; writeln; end; writeln('Сумма элементов [0 5] = ', SUM1); writeln('Сумма элементов [5 15] = ', SUM2); MIN := A[3, 1]; for j := 1 to 4 do if A[3, j] < MIN then MIN := A[3, j]; writeln('Минимальный элемент в третьей строке = ', MIN); writeln('***Вектор***'); j := 1; z := 0; while (z < 20) do begin for i := 1 to 5 do begin z := z + 1; V[z] := A[i, j]; end; j := j + 1; end; for i := 1 to 20 do writeln(V[i]:6); for i := 20 downto 10 do SUM3 := SUM3 + V[i]; writeln('Сумма последних 10-ти элементов = ', SUM3); readln; end.
Заменим символы операций на более привычные (логическое сложение на сложение, логическое умножение - на умножение), но будем помнить, что все же это не арифметика, хотя и тут умножение "старше" сложения и выполняется первым. x=19+17*13+22*14 1) 17₁₀*13₁₀ 17₁₀ = 10001₂; 13₁₀=01101₂ Правила умножения поразрядно: 1*1=1, иначе 0 10001 *01101
00001 = 1₂ 2) 19₁₀+1₂ 19₁₀=10011₂ Правила сложения поразрядно: 0+0=0, иначе 1 10011 +00001
if (a>10) then writeln(a); // Если параметр а больше 10, то его вывести
if (a >20) then writeln(a)
else writeln('нет'); // Если а больше 20, то вывести этот параметр, если это не так - то написать слово НЕТ