Задачка на двумерный массив (чуток доделать) - Pascal

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

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

Задание: Все элементы заданного массива вещественных чисел A(N), начиная с первого по порядку положительного элемента уменьшить на единицу. Новый массив переписать в S(N). Вот то, что я сделала:
Но вот блин незадача, препод не принимает только изза того что раз 2 массива выводится, то и for (циклов) должно быть 2, я всяко пробывала, нето что нужно получается((( Помогите кто в этом разберается

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

textual
Листинг программы
program ppc;
uses crt;
const N=10;
var i,k:integer;
    A,S: array [1..N] of real;
begin
clrscr;
randomize;
for i:=1 to N do
 begin
   A[i]:=-5+10*random;
   write(A[i]:2:2,'  ');
 end;
writeln;
for i:=1 to N do
if A[i]>0 then
 begin
  k:=i;
  break;
 end;
for i:=1 to N do
 begin
  if i>=k then S[i]:=A[i]-1
  else S[i]:=A[i];
  write(S[i]:2:2,'  ');
 end;
readln
end.

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

  1. Объявлены переменные: i, k, A, S (индекс, номер строки, массив, сумма)
  2. Задается размер массива N=10
  3. В цикле заполняются элементы массива A случайными числами от -5 до 10 с шагом 1
  4. Выводится на экран каждая строка массива A, числа разделяются пробелом
  5. В цикле ищутся положительные числа в массиве A, запоминается индекс первого положительного числа, и с этого момента начинается заполнение массива S
  6. В цикле заполняются элементы массива S, если индекс больше или равен найденному, то вычитается единица, иначе значение берется из массива A
  7. Выводится на экран каждая строка массива S, числа разделяются пробелом
  8. Программа ожидает ввода с клавиатуры для завершения работы

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


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

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

10   голосов , оценка 4.1 из 5
Похожие ответы