Урок 15 Задача 11
Primary tabs
Напишите функцию, которая определяет являются ли значения переданного массива целых чисел уникальными относительно друг друга.
Протестируйте работу функции на массиве из 7 случайных элементов из диапазона от 1 до 15-ти.Например для массива:
|1|5|4|5|6|7|8|-- функция должна "сообщить", что он неуникальный
а для:
|1|15|4|5|6|7|8|-- что уникальный.
type myArr = array[1..7] of integer; var m: myArr; i, j: integer; function otvet (n: myArr): string; // ф-ция получает на вход массив и выдает сообщение var p, r: integer; q: boolean; s: string; begin for p:=low(n) to high(n)-1 do // внешний цикл for r:=p+1 to high(n) do // вложенный цикл if (n[p] = n[r]) then // если встретились равные эл-ты begin q:= true; // переключаем переключатель break; // прерываем цикл, т.к. дальше проверять не обязательно end; if q = true then // если переключатель был переключен (встретились равные эл-ты) s:= 'Neunikalnyj' // присваиваем строковой переменной соответствующее значение else // если переключатель остался не переключенным (не встретились равные эл-ты) s:= 'Unikalnyj'; // присваиваем соответствующее значение result:=s; // результат функции - строковая переменная с соответствующим значением (сообщением) end; begin // начало тела осн-й программы randomize(); for i:=low(m) to high(m) do begin m[i] := random(15) + 1; write(m[i], ' '); end; writeln; write (otvet (m)); // передаем в функцию массив и сразу же выводим на экран сообщение (результат) от функции readln (); end.
Вывод в консоли:
8 8 3 3 2 5 4 Neunikalnyj
14 6 2 9 13 8 5 Unikalnyj
- Log in to post comments
- 585 reads
vedro-compota
Sun, 11/27/2022 - 13:18
Permalink
засчитано
засчитано
_____________
матфак вгу и остальная классика =)