Задача 11 Урок 15
Primary tabs
Напишите функцию, которая определяет являются ли значения переданного массива целых чисел уникальными относительно друг друга, если среди есть неуникальные элементы, то удалите их, сдвинув значения влево, заполняя оставшиеся справа ячейки нулями.
Протестируйте работу функции на массиве из 7 случайных элементов из диапазона от 1 до 15-ти.
Например для:
|1|-3|5|-3|9|5|8|
получим:
|1|9|8|0|0|0|0|
type MyArray = array [1..7] of integer; var a:MyArray; l,i:integer; procedure wr(c:array of integer); var i:integer; begin for i:=low(c) to high(c) do write(c[i],' '); writeln(); end; function uniq(b:array of integer):MyArray; var i,j,z:integer; begin for i:=low(b) to high(b) do for j:=low(b) to high(b) do if((b[i]=b[j])and(i<>j)) then begin for z:=i to 6 do b[z]:=b[z+1]; b[7]:=0; end; result:=b; end; begin randomize(); for l:=1 to 7 do begin a[l]:=random(15); write(a[l],' '); end; writeln(); a:=uniq(a); writeln('massiv '); wr(a); end.
Консоль:
13 3 4 4 11 4 0 massiv 13 3 11 4 0 0 0
- Log in to post comments
- 675 reads
vedro-compota
Wed, 02/16/2022 - 19:23
Permalink
засчитано
засчитано
_____________
матфак вгу и остальная классика =)