Задание 15 урок 15

Дан массив длиной N не более 100 элементов).
Проверить, что в этом массиве на отрезке индексов от m до p
( 1 ≤ m встречаются все числа от 0 до k, где 0 ≤ k

АЛГОРИТМ:
1 запись масива, N -длинна массива, к примеру = 100
2 вводим число к, К -число больше равно 0 и меньше 100, к примеру = 5
3 получаем ряд чисел от 0 до 5
4 находим отрезок индексов массива от m до p, к примеру от 20 до 40
5 сравниваем есть ли в этом отрезке массива от m до p
все числа от 0 до 5

Задача 15 урок 15

var
  a: array[1..100] of integer;
  k, i, j, r, C, m, p: integer;
begin
  randomize();
  C := 0;  //счетчик совпадений диапазона
  for i := low(a) to high(a) do
    a[i] := random(100);
  writeln('Enter k');
  Write('chislo k: ');
  readln(k);
  writeln('massiv:');
  for i := low(a) to high(a) do
    Write(a[i], ' ');
  m := 20;
  p := 40;
  writeln();
  writeln('massiv 2:');
  for r := m to p do
    Write(a[r], ' ');  //выводим значения отрезка от m  до p

  for j := 0 to k do   //цикл по отрезку чисел до к
  begin
    for r := m to p do
      if a[r] = j then
        //поиск совпадений во втором массиве
      begin
        C := C + 1;  //при совпадении - счетчик +1
        break;
      end;
    if C = k then  //все числа есть в массиве
    begin
      writeln();
      writeln('vse ', k, ' chisla v massive');
      break;
    end;
  end;
  if C < k then //если совпадения не все
  begin
    writeln();
    writeln('ne vse chisla ot 0 do ', k, ' v massive');
  end;
  readln();
end.    
vedro-compota's picture

оформить как функцию и использовать эту функцию в задаче 16

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