Задание 8 Урок 15
Primary tabs
Задание 8 Урок 15
Заполнить массив из 9 элементов случайными числами, далее получить случайное число N из диапазона от 1 до 9 и затем "удалить" элемент с позиции N из массива, "сдвинув" значения влево и заполнив все что справа нулями.
Например:|1|3|4|5|4|7|-8|-9|
Путь n=2, тогда после работы программы мы должны получить:
|1|4|5|4|7|-8|-9|0|
type arr = array[0..8] of integer;
var i,t,n : integer;
first_array, second_array : arr;
procedure shift(f_array,s_array : arr; u : integer; var change : arr );
var g : integer;
begin
for g := low(s_array) to high(s_array) do
begin
if g = u then
break;
s_array[g] := f_array[g];
end;
for g := u to high(s_array) do
begin
s_array[g-1] := f_array[g];
end;
for g := low(change) to high(change) do
change[g] := s_array[g];
end;
begin
for i := low(first_array) to high(first_array) do
begin
first_array[i] := random(10);{инициализируем первый массив случайным
числом}
second_array[i] := 0;
end;
for i := low(first_array) to high(first_array) do
write(first_array[i], ' ');{выводим первый массив}
for i := low(first_array) to high(first_array) do
begin
write('Введите значение');{запрашиваем значение переменной}
readln(n);
shift(first_array, second_array,n,first_array);
for t := low(first_array) to high(first_array) do
begin
write(first_array[t], ' ');{выводим первый массив}
end;
writeln();
end;
readln();
end.- Log in to post comments
- 2585 reads
vedro-compota
Thu, 12/17/2020 - 19:50
Permalink
переделать структуру, чтобы
переделать структуру, чтобы для сдвига и получения нового состояния массива использовалась функция:
_____________
матфак вгу и остальная классика =)
Dobrii_kot
Fri, 01/01/2021 - 11:01
Permalink
Исправлено
type arr = array[1..9] of integer; var first_array: arr; i,n: integer; function shift(value_user: integer; f_array: arr): arr; var g: integer; begin for g := value_user to (high(f_array)-1) do f_array[g] := f_array[g+1]; f_array[high(f_array)] := 0; result := f_array; end; begin randomize; for i := low(first_array) to high(first_array) do begin first_array[i] := random(100); write('|',first_array[i], '|'); end; writeln(); write('Введите случайное число от 1 до 9 и нажмите ENTER: '); readln(n); first_array := shift(n,first_array); for i := low(first_array) to high(first_array) do write('|',first_array[i], '|'); readln(); end.vedro-compota
Sun, 01/03/2021 - 15:09
Permalink
решение засчитано
решение засчитано
_____________
матфак вгу и остальная классика =)