Урок 15 задача 11
Primary tabs
Напишите функцию, которая определяет являются ли значения переданного массива целых чисел уникальными относительно друг друга, если среди есть неуникальные элементы, то удалите их, сдвинув значения влево, заполняя оставшиеся справа ячейки нулями.
Протестируйте работу функции на массиве из 7 случайных элементов из диапазона от 1 до 15-ти.
Например для:|1|-3|5|-3|9|5|8|получим:
|1|9|8|0|0|0|0|
program project1; type newArr = array [1..7] of integer; var numArr: newArr; i: integer; function unicalArr(var promArr:newArr):newArr; var x,y:integer; begin for x := 1 to 7 do for y := 1 to 7 do begin if((promArr[x]=promArr[y])and (x <> y))then begin promArr[x]:=0; promArr[y]:=0; end; result:=promArr; end; end; procedure shiftArr(var promArr: newArr); var j,count:integer; begin unicalArr(numArr); for count:=1 to 7 do for j:=1 to 7 do if(promArr[j]=0)then begin promArr[j]:=promArr[j+1]; promArr[j+1]:=0; end; end; begin for i:=1 to 7 do begin write('Введите ',i,' элемент массива: '); readln(numArr[i]); end; for i:=1 to 7 do begin write(numArr[i],'|'); end; writeln(); shiftArr(numArr); for i:=1 to 7 do begin write(numArr[i],'|'); end; readln(); end.
- Log in to post comments
- 3461 reads
vedro-compota
Sat, 02/05/2022 - 20:35
Permalink
1)
1)
-- выход за пределы массива
-- поправить этот вариант решения
2) Есть реализация сдвига по указанному индексу:
-- добавить еще один альтернативный вариант решения
_____________
матфак вгу и остальная классика =)
vedro-compota
Sat, 03/05/2022 - 21:08
Permalink
Сейчас мы на стадии сдвига на
Сейчас мы на стадии сдвига на нулевые элементы в подобном массиве:
-- как только встретили нулевой элемент мы можем вызвать для него процедуру shiftArr, указав его идекс, после чего будет проведен сдвиг всех элементов справа на одну позицию влево.
_____________
матфак вгу и остальная классика =)
alexander263
Thu, 03/17/2022 - 16:12
Permalink
Исправлено
---используется принцип (алгоритм) работы машины Поста.
alexander263
Sat, 04/02/2022 - 19:19
Permalink
Исправлено
vedro-compota
Sat, 04/02/2022 - 20:33
Permalink
Реализовать замену на ноль
Реализовать замену на ноль неуникальных чисел в массиве:
_____________
матфак вгу и остальная классика =)
alexander263
Sat, 04/16/2022 - 20:09
Permalink
Решено
vedro-compota
Sat, 04/16/2022 - 20:14
Permalink
засчитано
засчитано
_____________
матфак вгу и остальная классика =)