Добавить материал и получить бесплатное свидетельство о публикации в СМИ
Эл. №ФС77-60625 от 20.01.2015

Опубликуйте свой материал в официальном Печатном сборнике методических разработок проекта «Инфоурок»

(с присвоением ISBN)

Выберите любой материал на Вашем учительском сайте или загрузите новый

Оформите заявку на публикацию в сборник(займет не более 3 минут)

+

Получите свой экземпляр сборника и свидетельство о публикации в нем

Инфоурок / Информатика / Конспекты / Подготовка к ГИА: Задание 10
ВНИМАНИЮ ВСЕХ УЧИТЕЛЕЙ: согласно Федеральному закону № 313-ФЗ все педагоги должны пройти обучение навыкам оказания первой помощи.

Дистанционный курс "Оказание первой помощи детям и взрослым" от проекта "Инфоурок" даёт Вам возможность привести свои знания в соответствие с требованиями закона и получить удостоверение о повышении квалификации установленного образца (180 часов). Начало обучения новой группы: 24 мая.

Подать заявку на курс
  • Информатика

Подготовка к ГИА: Задание 10

библиотека
материалов

hello_html_190e626f.gifВ таблице Dat хранятся данные о численности учеников в классах (Dat[1] – число  учеников  в  первом  классе, Dat[2] – во  втором  и  т.  д.).  Определите, какое  число  будет  напечатано  в  результате  работы  следующей  программы. Текст программы приведён на трёх языках программирования.

 

Алгоритмический язык

алг

нач

целтаб Dat[1:11]

цел k, m

Dat[1] := 20; Dat[2] := 25

Dat[3] := 19; Dat[4] := 25

Dat[5] := 26; Dat[6] := 22

Dat[7] := 24; Dat[8] := 28

Dat[9] := 26; Dat[10] := 21

Dat[11] := 27

m := 0

нц для k от 1 до 11

если Dat[k] > 22 то

m := m + 1

все

кц

вывод m

кон

 

Бейсик

DIM Dat(11) AS INTEGER

DIM k,m AS INTEGER

Dat(1) = 20: Dat(2) = 25

Dat(3) = 19: Dat(4) = 25

Dat(5) = 26: Dat(6) = 22

Dat(7) = 24: Dat(8) = 28

Dat(9) = 26: Dat(10) = 21

Dat(11) = 27

m = 0

FOR k = 1 TO 11

IF Dat(k) > 22 THEN

m = m + 1

END IF

NEXT k

PRINT m

 

Паскаль

Var k, m: integer;

Dat: array[1..11] of integer;

Begin

Dat[1] := 20; Dat[2] := 25;

Dat[3] := 19; Dat[4] := 25;

Dat[5] := 26; Dat[6] := 22;

Dat[7] := 24; Dat[8] := 28;

Dat[9] := 26; Dat[10] := 21;

Dat[11] := 27;

m := 0;

for k := 1 to 11 do

if Dat[k] > 22 then

begin

m := m + 1

end;

writeln(m)

End.

 

Ответ: ___________________________.


Решение:

Рассмотрим программу пошагово. Итак, в самом начале объявляются переменные, которые будут использоваться (переменные k и m), а так же массив Dat, содержащий 11 элементов (от 1 до 11).

Примечание. В массиве Dat, который описан на языке Basic будет 12 элементов, так как нумерация начинается не с первого элемента, а с нулевого.

Алгоритмический язык

Бейсик

Паскаль

целтаб Dat[1:11]
цел k, m

DIM Dat(11) AS INTEGER
DIM k,m AS INTEGER

Var k, m: integer;
Dat: array[1..11] of integer;

 

Далее идет заполнение массива. Например, элементу массива с индексом 1 присваивается значение 20, элементу с индексом 2 — 25 и так далее. В итоге полученный массив можно представить в таком виде:

Массив Dat

Индекс

1

2

3

4

5

6

7

8

9

10

11

Значение

20

25

19

25

26

22

24

28

26

21

27

 

Далее переменной m присваивается значение 0. После чего начинается цикл с параметром k, при этом k изменяется от 1 до 11 с шагом 1.

В теле цикла происходит проверка условия

Алгоритмический язык

Бейсик

Паскаль

если Dat[k] > 22 то

m := m + 1

все

IF Dat(k) > 22 THEN

m = m + 1

END IF

if Dat[k] > 22 then

begin

m := m + 1

end;

 

Значение элемента массива с индексом k сравнивается с числом 22. Если элемент массива больше 22, то переменная m увеличивается на 1. В противном случае ничего не происходит.

В самом конце программы на экран выводится значение переменной m.

Итак, мы перевели программу на человеческий язык, теперь давайте подумаем, что же в итоге получим после ее выполнения. Нас интересует цикл — именно там происходит изменение значения переменной m. До цикла ее значение равно нулю. Далее программа перебирает все элементы массива и сравнивает их с числом 22. И если элемент массива больше 22, то переменная m увеличивается на 1. Таким образом, нам необходимо посчитать все элементы массива, которые больше 22 — их число и будет равно значению переменной m. Таких элементов 7 — это элементы с индексами 2, 4, 5, 7, 8, 9 и 11.

Следует обратить внимание на элемент под номером 6, который равен 22. Так как сравнение у нас строгое ( знак > ), то его мы не учитываем, так как 22 не больше 22. Учитывать его можно было бы в том случае, если бы в сравнении стоял знак >=.

Итак, правильный ответ 7.



Краткое описание документа:

В таблице Dat хранятся данные о численности учеников в классах (Dat[1] – число учеников в первом классе, Dat[2] – во втором и т. д.). Определите, какое число будет напечатано в результате работы следующей программы. Текст программы приведён на трёх языках программирования.

Алгоритмический язык

алг

нач

целтаб Dat[1:11]

цел k, m

Dat[1] := 20; Dat[2] := 25

Dat[3] := 19; Dat[4] := 25

Dat[5] := 26; Dat[6] := 22

Dat[7] := 24; Dat[8] := 28

Dat[9] := 26; Dat[10] := 21

Dat[11] := 27

m := 0

нц для k от 1 до 11

если Dat[k] > 22 то

m := m + 1

все

кц

вывод m

кон

Бейсик

DIM Dat(11) AS INTEGER

DIM k,m AS INTEGER

Dat(1) = 20: Dat(2) = 25

Dat(3) = 19: Dat(4) = 25

Dat(5) = 26: Dat(6) = 22

Dat(7) = 24: Dat(8) = 28

Dat(9) = 26: Dat(10) = 21

Dat(11) = 27

m = 0

FOR k = 1 TO 11

IF Dat(k) > 22 THEN

m = m + 1

END IF

NEXT k

PRINT m

Паскаль

Var k, m: integer;

Dat: array[1..11] of integer;

Begin

Dat[1] := 20; Dat[2] := 25;

Dat[3] := 19; Dat[4] := 25;

Dat[5] := 26; Dat[6] := 22;

Dat[7] := 24; Dat[8] := 28;

Dat[9] := 26; Dat[10] := 21;

Dat[11] := 27;

m := 0;

for k := 1 to 11 do

if Dat[k] > 22 then

begin

m := m + 1

end;

writeln(m)

End.

Решение:

Рассмотрим программу пошагово. Итак, в самом начале объявляются переменные, которые будут использоваться (переменные k и m), а так же массив Dat, содержащий 11 элементов (от 1 до 11).

Примечание. В массиве Dat, который описан на языке Basic будет 12 элементов, так как нумерация начинается не с первого элемента, а с нулевого.

Алгоритмический язык

Бейсик

Паскаль

целтаб Dat[1:11]
цел k, m

DIM Dat(11) AS INTEGER
DIM k,m AS INTEGER

Var k, m: integer;
Dat: array[1..11] of integer;

Далее идет заполнение массива. Например, элементу массива с индексом 1 присваивается значение 20, элементу с индексом 2 — 25 и так далее. В итоге полученный массив можно представить в таком виде:

Массив Dat

Индекс

1

2

3

4

5

6

7

8

9

10

11

Значение

20

25

19

25

26

22

24

28

26

21

27

Далее переменной m присваивается значение 0. После чего начинается цикл с параметром k, при этом k изменяется от 1 до 11 с шагом 1.

В теле цикла происходит проверка условия

Алгоритмический язык

Бейсик

Паскаль

если Dat[k] > 22 то

m := m + 1

все

IF Dat(k) > 22 THEN

m = m + 1

END IF

if Dat[k] > 22 then

begin

m := m + 1

end;

Значение элемента массива с индексом k сравнивается с числом 22. Если элемент массива больше 22, то переменная m увеличивается на 1. В противном случае ничего не происходит.

В самом конце программы на экран выводится значение переменной m.

Итак, мы перевели программу на человеческий язык, теперь давайте подумаем, что же в итоге получим после ее выполнения. Нас интересует цикл — именно там происходит изменение значения переменной m. До цикла ее значение равно нулю. Далее программа перебирает все элементы массива и сравнивает их с числом 22. И если элемент массива больше 22, то переменная m увеличивается на 1. Таким образом, нам необходимо посчитать все элементы массива, которые больше 22 — их число и будет равно значению переменной m. Таких элементов 7 — это элементы с индексами 2, 4, 5, 7, 8, 9 и 11.

Следует обратить внимание на элемент под номером 6, который равен 22. Так как сравнение у нас строгое ( знак > ), то его мы не учитываем, так как 22 не больше 22. Учитывать его можно было бы в том случае, если бы в сравнении стоял знак >=.

Итак, правильный ответ 7.

Автор
Дата добавления 18.02.2015
Раздел Информатика
Подраздел Конспекты
Просмотров898
Номер материала 395930
Получить свидетельство о публикации

Выберите специальность, которую Вы хотите получить:

Обучение проходит дистанционно на сайте проекта "Инфоурок".
По итогам обучения слушателям выдаются печатные дипломы установленного образца.

ПЕРЕЙТИ В КАТАЛОГ КУРСОВ

Похожие материалы

Включите уведомления прямо сейчас и мы сразу сообщим Вам о важных новостях. Не волнуйтесь, мы будем отправлять только самое главное.
Специальное предложение
Вверх