Из вычисленного массива R удалить все положительные элементы, расположенные до последнего отрицательного элемента
Программа:
type mas = array [1..100] of real;var x, h, a: real; i, n, j, k, l: integer; r: mas;begin repeat writeln ('Введите 1<=n<=100'); readln (n); if (n<1) or (n>100) then writeln ('Некорректный ввод'); until (n>=1) and (n<=100); writeln ('Введите h и a'); readln (h, a); writeln ('Введите х'); readln (x); for i:=1 to n do begin r[i]:=6*cos(a*x+i*h); end; write('Массив: '); for i:=1 to n do writeln(r[i]); {Найденный массив} j:=0; k:=0; for i:=1 to n do if r[i]<0 then k:=i; for i:=1 to n do if (r[i]>0) and (i<k) then begin (28 строка) for i:=k to n do begin j:=j+1; r[j]:=r[i]; end; n:=j;end;writeln('Новый массив');for i:=1 to n do writeln (r[j]);end.
Ошибка: Нельзя изменять значение переменной цикла внутри этого цикла (строка 28)
Я понимаю суть ошибки, но не знаю, чем заменить "i" для нужного мне результата
Answers & Comments
надеюсь разберетесь что тут к чему, этот кусок кода нужно вставить после строки for i := 1 to n do writeln(r[i]); {Найденный массив}, а после этого вывести измененный массив, сами допишите. Если что-то не понятно смотрите текстовый файл во вложении.