Заменить все элементы одномерного массива, меньшие заданной величины, на нуль - Pascal

Узнай цену своей работы

Формулировка задачи:

Pascal. Составить процедуру, заменяющую все элементы, меньшие заданной величины, одномерного массива на нуль и определяющую число таких замен. Применить данную процедуру для двух заданных одномерных массивов Р и С, заменив в них все отрицательные элементы на нуль, и определить, в каком массиве число замен больше. Р(-0.01; 2.75; 458.7; 0.007; -0.0008) C(-33.7; -0.004; -4.9; 0; -0.005) Процедуры только недавно изучили, скажите что не так в моей программе:
Листинг программы
  1. program p4_2_5_25;
  2. type
  3. mas=array [1..5] of real;
  4. var
  5. P,C:mas;
  6. T:real;
  7. i,k,s:integer;
  8. procedure ZAMENA(P:mas;var k:integer);
  9. var
  10. i:integer;
  11. begin
  12. k:=0;
  13. for i:=1 to 5 do
  14. begin
  15. if P[i]<T then
  16. begin
  17. P[i]:=0;
  18. k:=k+1;
  19. end;
  20. end;
  21. end;
  22. procedure VVOD(var P:mas);
  23. var
  24. i:integer;
  25. begin
  26. for i:=1 to 5 do readln(P[i]);
  27. end;
  28. procedure VIVOD(P:mas);
  29. var
  30. i:integer;
  31. begin
  32. for i:=1 to 5 do write(P[i]:6:2);
  33. writeln;
  34. end;
  35. begin
  36. writeln('Введите величину T');
  37. readln(T);
  38. writeln('Введите элементы массива Р');
  39. VVOD(P);
  40. writeln('Введите элементы массива С');
  41. VVOD(C);
  42. writeln('Массив Р');
  43. VIVOD(P);
  44. writeln('Массив С');
  45. VIVOD(C);
  46. ZAMENA(P,k);
  47. ZAMENA(C,s);
  48. writeln('Измененный массив Р');
  49. VIVOD(P);
  50. writeln('Измененный массив С');
  51. VIVOD(C);
  52. writeln('Количество замен в массиве Р = ', k);
  53. writeln('Количество замен в массиве С = ', s);
  54. if k>s then
  55. writeln('В массиве Р больше замен')
  56. else
  57. writeln('В массиве С больше замен');
  58. end.

Решение задачи: «Заменить все элементы одномерного массива, меньшие заданной величины, на нуль»

textual
Листинг программы
  1. procedure ZAMENA(var P: mas; T: Real; var k: Integer);
  2. var i: Integer;
  3. begin
  4.   k:=0;
  5.   for i:=1 to 5 do
  6.     if P[i]<T then begin
  7.       P[i]:=0;
  8.       Inc(k);
  9.     end;
  10. end;

Объяснение кода листинга программы

  1. Создается процедура ZAMENA с тремя параметрами:
    • Переменная P типа mas (предположительно одномерный массив)
    • Переменная T типа Real (предположительно величина, с которой сравниваются элементы массива)
    • Переменная k типа Integer (предположительно счетчик)
  2. Инициализируется переменная i типа Integer.
  3. Присваивается значению k значение 0.
  4. Запускается цикл от 1 до 5 (предположительно из-за фиксированного размера массива).
  5. Внутри цикла проверяется условие: если элемент массива P[i] меньше, чем T, то выполняется следующее:
    • Элементу P[i] присваивается значение 0.
    • Переменная k увеличивается на 1.
  6. Процедура завершается. Таким образом, данная процедура заменяет все элементы массива, которые меньше заданной величины T, на 0, и подсчитывает количество таких замен, сохраняя результат в переменной k.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.667 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы