Урок 15. Задача 15.

Урок 15. Задача 15.

Дан массив длиной N (не более 100 элементов). Проверить, что в нем в встречаются все числа от 0 до k, где 0≤k Указание: Проверку массива на соответствие условиям задачи вынести в подпрограмму (функцию)

var N :integer;
    fl :boolean;

function num_in(n_1 :integer) :boolean;
var Arr :array [1..100] of integer;
    i, j, k, a :integer;
    fl :boolean;
begin
  fl := true;
  randomize;
  for i := 1 to 100 do // инициализация исходного массива
    Arr[i] := 0 + random(100);

  k := n_1 div 2; // k всегда меньше N
  for j := 1 to k + 1 do // количество сравниваемых элементов с элементами массива
  begin
    a :=  0 + random(100); // значения сравнивания со значениями массива
    for i := 1 to n_1 do
      if Arr[i] <> a then // выход с первого не совпадающего значения
      begin
        fl := false;
        break;
      end;
    if not fl then
      break;
  end;
  num_in := fl;
end;

begin
  write('Enter an integer <=100 : ');
  readln(N);
  fl := num_in(N);
  if fl then
    write('Full presence of values')
  else
    write('No complete match');
  readln();
end.
vedro-compota's picture

засчитано

_____________
матфак вгу и остальная классика =)