1)Когда будет прервано выполнение этой программы? i: =0 ; repeat i:=i+1; until...

0 голосов
76 просмотров

1)Когда будет прервано выполнение этой программы?

i: =0 ;
repeat
i:=i+1;
until (a[i]=x) or (i=10);
if a[i]=x then write(i) else write('Heт')


В массиве найден минимальный элемент

В массиве найден максимальный элемент

Все элементы массива записаны

В массиве найден первый из элементов, равный заданному

2)Что происходит при каждой итерации линейного поиска?


Отсекаются все элементы массива, кроме одного

Отсекается половина элементов массива

Отсекается один элемент массива

Ничего не происходит

3)Что считает следующий фрагмент программы?

s: =0 ;
for i:=1 to 15 do
if (a[i]=>40) and (a[i]<55) then s:=s*a[i]; <br> write('s=', s)


Произведение элементов массива, которые лежат в промежутке [0;15]

Произведение элементов массива, которые лежат в промежутке [40;55)

Сумму элементов массива, которые лежат в промежутке (0;15)

Сумму элементов массива, которые лежат в промежутке (40;55)




Можно пожалуйста с объяснением , потому что , тема вообще не понятная.


Информатика (271 баллов) | 76 просмотров
Дан 1 ответ
0 голосов

1)когда найдется элемент равный заданому 
2)отсекается 1 элемент
3)Произведение элементов массива, которые лежат в промежутке [40;55)

в паскале как и почти любом ЯП есть переменные,которые содержат имя и значение,например (i: =0)->имя переменной i,значение 0.Значение переменной можно изменить,имя переменной нельзя.Массивы это переменные которые хранят несколько значений.Чтобы обратиться к определенному значению масива использовать синтаксис имямасива[индексмасива],например чтоб получить 3 элемент масива a использовать a[3].repeat  (expression) .... until(boolean) это цикл,в котором будет выполняться expression(любой код) до тех пор пока boolean не будет верно.Boolean это выражение значение которого будет равно true/false(правда/неправда).Напрмер в repeat 
i:=i+1; 
until (a[i]=x) or (i=10); к переменной i будет прибавляться 1 до тех пор пока a[i] не равно x или i будет меньше 10(так как в масиве всего 10 элементов,если например i будет 11 это будет выход за границу массива).Каждый блок выполнения в цикле(в нашем случае i:=i+1) называется итерацией.В цикле for(a to max) в a идет создание переменной-счетчика(в нашем случае создание переменной i со значением 0) ,потом пишется to и идет максимальное значение счетчика.И итерации этого цикла(
if (a[i]=>40) and (a[i]<55) then s:=s*a[i]; <br>).В конце каждой итерации автоматически значение счетчика увеличивается на 1.До тех пор пока счетчик меньше или равен max итерации будут выполняться.
А вообще в интернете очень много обучающих статей по данной теме

(261 баллов)