Урок 15. Задача №10. Решение.
Primary tabs
Напишите программу, которая будет заполнять массив из 10 элементов случайными числами из диапазона от 0 до 20, при этом в полученном массиве не должно быть одинаковых значений.
type IntArr = array[1..10] of integer; function UniqArr(new_arr: IntArr): IntArr; var i, j, max, randNumb: integer; UniqNumb: boolean; begin randomize(); max := 20; i := 1; while(i <= length(new_arr)) do begin UniqNumb := true; randNumb := random(max); for j := 1 to i do begin if(new_arr[j] = randNumb) then begin UniqNumb := false; break; end; end; if(UniqNumb = true) then begin new_arr[i] := randNumb; i += 1; end; end; result := new_arr; end; procedure ShowArray(arrUniq: IntArr); var i: integer; begin writeln('arr = '); for i := 1 to length(arrUniq) do write('|', arrUniq[i], '|', ' '); writeln(); end; var arr: IntArr; begin arr := UniqArr(arr); ShowArray(arr); readln(); // Удержание консоль end.// Завершение программы
- Log in to post comments
- 2763 reads
vedro-compota
Sat, 06/06/2020 - 20:12
Permalink
arr := UniqArr(arr);
-- аргумент на вход не нужен.
_____________
матфак вгу и остальная классика =)
Firons
Sun, 06/07/2020 - 12:15
Permalink
Исправлено.