Запустите программу на выполнение в среде программирования Pascal.
В примере 3 программа вводит десять элементов целочисленного массива a[1..10] и число p, затем последовательно ищет первое вхождение p.
Откройте среду Pascal, создайте файл программы и введите текст примера a[i]:
{$B-}
const n= ;
var a: array[ ..n] of integer;
i, p: integer;
begin
writeln('Ввод значений элементов массива:');
for i:= to n do read(a[i]);
write('Ввод p: ');
readln(p);
i:= ;
while (i<=n) and (a[i]<>p) do i:=i+ ;
if i=n+ then
writeln('Искомого элемента в массиве нет')
else
writeln('Искомый элемент a[', i, '] = ', a[i])
end.
Сохраните файл, выполните компиляцию и запустите программу командой запуска среды. Пример входных данных: readln(p) получает искомое значение.
По правилу трассировки из §
| i | a[i] | a[i]<> |
Дальнейшее действие |
|---|---|---|---|
| да | i= |
||
| да | i= |
||
| да | i= |
||
| да | i= |
||
| да | i= |
||
| нет | Выход из цикла |
При i=i=n+, то есть , ложна, поэтому ожидается строка Искомый элемент a[.
Запустите программу повторно для тех же десяти элементов и p=Искомого элемента в массиве нет. Два запуска проверяют обе ветви алгоритма.
Пример: при p=Искомый элемент a[; при p=Искомого элемента в массиве нет.
