Помогите, пожалуйста, с этим заданием!

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

Помогите, пожалуйста, с этим заданием!


image

Информатика (33 баллов) | 16 просмотров
0

Ничего. Потому что нет языка PascalABC. Есть Pascal ABC и PascalABc.NET.

0

А что получится - запустите и посмотрите

Дан 1 ответ
0 голосов
Правильный ответ

Разберем программу:

a[i] - элемент массива.
i - индекс элемента массива.

5 строка. Цикл. Значение элемента массива = индекс элемента массива + 3.

6 строка. Ввод "k" (8).

8 строка. Цикл. Пока (i <= 10) и (a[i] не равно k) к переменной "i" прибавляется единица. <br>
9 строка. Если "i" не равно 11, то печатается "i".

10 строка. Если условие не выполняется, то печатается "0".


Проанализируем 8-ую строку.
Если одно из условий цикла не выполняется, то программа идет к 9 строке. Первое условие (i <= 10) будет выполняться в любом случае, а второе (a[i] <> k) нет. Так как "k" = 8, то цикл прервется, когда элемент массива будет равен 8.

Дабы не делать лишние вычисления, то выполним цикл в строке 5 до момента, когда элемент массива (a[i]) будет равен 8.

a[i] = i + 3.
a[1] = 1 + 3 = 4.
a[2] = 2 + 3 = 5.
a[3] = 3 + 3 = 6.
a[4] = 4 + 3 = 7.
a[5] = 5 + 3 = 8.

Итого получим, что в 8 строке значение "i" = 5, так как пять элементов массива удовлетворяют условию.

Переходим в 9 строку. Так как "i" не равно 11, то на вывод идет значение переменной "i", что и является ответом.

Ответ: 5.

(8.6k баллов)