Описать процедуру RemoveForInc(A,N,K),удаляющую из вещественного мас-сива A размера N элемент с номером К - Pascal ABC

  1. Описать процедуру RemoveForInc(A,N,K),удаляющую из вещественного мас- сива A размера N элемент с номером К (уменьшая N). С помощью этой проце- дуры удалить "лишние"элементы массива так, чтобы оставшиеся элементы оказались упорядоченными по возрастанию: первый элемент не удаляется, второй элемент удаляется, если он меньше первого, третий — если он меньше предыдущего элемента, оставленного в массиве, и т. д. Например, массив 5.5, 2.5, 4.6, 7.2, 5.8, 9.4 должен быть преобразован к виду 5.5, 7.2, 9.4. очень нужно завтра сдавать (((((((((((((((


textual

Код к задаче: «Описать процедуру RemoveForInc(A,N,K),удаляющую из вещественного мас-сива A размера N элемент с номером К - Pascal ABC»

const nmax=100;
type mas=array[1..nmax] of real;
procedure RemoveForInc(var a:mas;var n:integer; k:integer);
var i:integer;
begin
if k=n then n:=n-1
else
 begin
  for i:=k to n-1 do
  a[i]:=a[i+1];
  n:=n-1;
 end;
end;
 
var a:mas;
    n,i:integer;
begin
randomize;
repeat
write('Размер массива А от 2 до ',nmax,' n=');
readln(n);
until n in [2..nmax];
writeln('Массив A');
for i:=1 to n do
 begin
  a[i]:=10*random;
  write(a[i]:5:1)
 end;
writeln;
i:=2;
while i<=n do
if a[i]<a[i-1] then RemoveForInc(a,n,i)
else inc(i);
writeln('Измененный массив');
for i:=1 to n do
write(a[i]:5:1);
end.

СДЕЛАЙТЕ РЕПОСТ

12   голосов, оценка 3.750 из 5



Похожие ответы
  1. Напишите программу, которая строит "линию" из знаков '-' заданной длины. Используйте процедуру.Входные данные Входная строка содержит единственное натуральное число – длину линии N .Выходные данные Программа должна вывести N знаков '-'.Примерывходные данные 5выходные данные -----

  1. Помогите, пожалуйста, с программой Даны натуральное число n, целые числа а1,…,аn (последовательности идущих подряд членов), состоящие из степеней пятерки. Определить процедуру, позволяющую распознавать степень пятерки. Программу оформить в виде диалога. Выход из программы – нажатием Esc.

  1. Помогите пожалуйста написать данный код через процедуру

  1. Как написать данный код через процедуру и функцию?

  1. 2.Дана строка.Дописать в конец ее строки ее длину.

  1. Доброе время суток. Подскажите пожалуйста, как заменить goto на процедуру. Код готовый, нужно только отредактировать, нашел тут на форуме похожий пример, но не совсем понял его. Заменять на if ... then... else?

  1. Добрый вечер программисты. Помогите с задачами на pascal ABC. У меня плохо идет pascal и прошу помочь знатоков. Вот две задачи: С клавиатуры вводятся гипотенуза и один из катетов для каждого из трёх прямоугольных треугольников. Вычислить площади этих треугольников и вывести на экран наибольшую площадь. С клавиатуры вводятся 3 стороны для каждого из трёх треугольников. Для каждого треугольника определить, является ли он прямоугольным, и если является, то вычислить его периметр. Заранее спасибо.

  1. Здравствуйте!Условие задачи: Описать рекурсивную функцию digits (s), которая подсчитывает сумму цифр в строке s.

  1. Нужно дописать гласные и знаки препинания. Чтобы в ответе выводил и гласные и согласные. Помогите пожалуйста. Вот сама программа

  1. Составить процедуру обнуления всех положительных элементов в одномерном массиве A. С помощью этой процедуры обнулить все положительные элементы в n-м и k-м столбце произвольной матрицы B. Помогите!