Const n = 10; var h: array[1..n] of real; i: integer; s: real; begin randomize; write('элементы массива: '); s : = 0; for i : = 1 to n do begin h[i] : = (100 * random - 50) / 3; write(h[i]: 0: 3, ' '); if h[i] < 0 then s : = s + h[i] end; writeln(#13#10, 'сумма отрицательных элементов равна ', s: 0: 3) end. тестовое решение: элементы массива: 9.159 -12.427 11.448 -7.493 -12.976 -2.252 9.923 -4.759 -7.867 5.567 сумма отрицательных элементов равна -47.774 const m = 3; n = 4; var h: array[1..m, 1..n] of real; i, j: integer; p: real; begin p : = 1; for i : = 1 to m do begin write('введите через пробел элементы строки ', i, ': '); for j : = 1 to n do begin read(h[i, j]); if h[i, j] < > 0 then p : = p * h[i, j] end end; writeln('произведение ненулевых элементов равно ', p: 0: 3) end. тестовое решение: введите через пробел элементы строки 1: -2.1 3.7 0.46 17 введите через пробел элементы строки 2: -3.54 0 11.7 2.222 введите через пробел элементы строки 3: 3 -5.1 -4.7 0 произведение ненулевых элементов равно 402114.968 const n = 4; var i, k: integer; d: array[1..n] of string; begin k : = 0; for i : = 1 to n do begin write('введите слово ', i, ': '); readln(d[i]); if (d[i][2]='о') then k: = k + 1 end; writeln('количество слов со второй буквой "о" равно ', k) end. тестовое решение: введите слово 1: информатика введите слово 2: компьютер введите слово 3: процессор введите слово 4: монитор количество слов со второй буквой "о" равно 2 const n = 4; var i, imin: integer; a: array[1..n] of real; b: array[1..n] of string; min: real; begin min : = 1000; for i : = 1 to n do begin write('введите фамилиию участника ', i, ': '); readln(b[i]); write('введите время участника ', i, ': '); readln(a[i]); if a[i] < min then begin min : = a[i]; imin : = i end; end; writeln('лучшее время ', a[imin], ' у участника ', b[imin]) end. тестовое решение: введите фамилиию участника 1: иванов введите время участника 1: 8.3 введите фамилиию участника 2: петров введите время участника 2: 7.9 введите фамилиию участника 3: сидоров введите время участника 3: 8.7 введите фамилиию участника 4: васечкин введите время участника 4: 8.0 лучшее время 7.9 у участника петров
metelkin7338
27.05.2022
Var i, a, b, n, n2, j: longint; s: string; flag: boolean; begin write('введите через пробел границы диапазона: '); readln(a, b); if b < a then begin n : = a; a : = b; b : = n end; if a < 11 then a : = 11; for i : = a to b do begin str(i, s); n : = length(s); n2 : = n div 2; flag : = true; j : = 1; repeat flag : = (s[j] = s[n - j + 1]); j : = j + 1 until (not flag) or (j > n2); if flag then write(i, ' ') end; end. тестовое решение: введите через пробел границы диапазона: 800 1500 808 818 828 838 848 858 868 878 888 898 909 919 929 939 949 959 969 979 989 999 1001 1111 1221 1331 1441