Нужна . задали слишком много для паскаля. ничего не успеваю. буду хотя бы за несколько . стоимость всего 35 . массивы. обработка массива. 1. задать, с датчика случайных чисел одномерный вещественный массив с именем h, состоящий из десяти элементов и сложить все отрицательные элементы. 2. задать, вводом с клавиатуры двумерный целый массив с именем h, состоящий из трёх строк и четырёх столбцов и перемножить все ненулевые элементы. 3. задать вводом с клавиатуры строковый массив d[1 .. 4] и подсчитать, сколько слов имеют вторую букву о. 4. задать вводом с клавиатуры массивы в[1 .. 4], где записаны фамилии участников соревнования, и а[1 .. 4], где записано время пробега каждого. вывести на экран фамилию победителя и результат.

olegmuslimov778 olegmuslimov778    3   12.06.2019 06:20    0

Ответы
GRISHINANASTYA GRISHINANASTYA  09.07.2020 21:18
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 у участника Петров
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика