Реализация алгоритмов решения задач на языке Pascal.
ГИА-2011
1 шаг:
2 шаг:
3 шаг:
Спасибо за внимание.
441.50K
Categories: programmingprogramming informaticsinformatics

Реализация алгоритмов решения задач на языке Pascal

1. Реализация алгоритмов решения задач на языке Pascal.

Подготовила:
учитель информатики и ИКТ
МБОУ СОШ № 3
Татьянченко Галина Ивановна
15 января 2013 г.

2. ГИА-2011

Напишите программу для решения следующей задачи.
Девятиклассники участвовали в викторине по математике. Необходимо было
ответить на 20 вопросов. Победителем викторины считается участник,
правильно ответивший на наибольшее количество вопросов. На сколько
вопросов победитель ответил правильно? Если есть участники викторины,
которые не смогли дать правильный ответ ни на один из вопросов, выведите
YES, иначе выведите NO. Гарантируется, что есть участники, правильно
ответившие хотя бы на один из вопросов.
Программа получает на вход число участников викторины N (1 ≤ N ≤ 50),
затем для каждого участника вводится количество вопросов, на которые
получен правильный ответ.
Пример работы программы:
Входные данные
4 - число участников (N)
15
12
0
17
количество вопросов,
на которые получен
правильный ответ (a)
(для каждого участника)
Выходные данные
-
наибольшее количество вопросов,
на которые получен правильный
ответ (max)
YES -
наличие участников, которые не
смогли дать правильный ответ ни
на один вопрос (num – счётчик
17
таких участников)

3.

Для решения задачи необходимо определить,
что нам известно:
1) N – число участников викторины (1 ≤ N ≤ 50)
2) a – количество вопросов, на которые получен правильный
ответ для каждого участника.
3) У победителя наибольшее количество правильных
ответов на вопросы (max).
4) num – счётчик участников, которые не смогли дать
правильный ответ ни на один вопрос.
и что необходимо найти:
1) На сколько вопросов победитель ответил
правильно?
2) Если есть участники викторины, которые не смогли
дать правильный ответ ни на один из вопросов, то
вывести на экран YES, иначе вывести NO.

4. 1 шаг:

начало
a, N, i, max,
num
N
max:=0;num:=0
Описываем используемые
переменные, вводим с
клавиатуры значение
переменной N и обнуляем
значения переменных max и
num.

5. 2 шаг:

i:=1 to N
a
да
a > max
max := a
да
num := 1
a=0
Организуем цикл и
проанализируем для
каждого участника
количество вопросов, на
которые получен
правильный ответ:
каким он является по
отношению к
максимальному
значению (a>max) и если
правильных ответов у
участника нет (a=0), то
счётчик num станет
равным 1.

6. 3 шаг:

max
Вывод результата:
Количество вопросов, на которые
победитель ответил правильно.
4 шаг:
да
YES
num > 0
NO
Если есть участники викторины,
которые не смогли дать
правильный ответ ни на один из
вопросов, то значение
переменной num > 0 и на экран
мы выведем YES, иначе выведем
NO.

7.

Пример верного решения,
записанного на языке
Паскаль:
начало
a, N, i, max,
num
N
Var a, N, i, max, num: integer;
max:=0;num:=0
begin
i:=1 to N
readln(N);
max:=0; num:=0;
a
да
for i:=1 to N do
begin
readln(a);
if a > max then max := a;
if a = 0 then num := 1;
end;
a > max
max := a
да
a=0
num := 1
writeln(max);
max
да
if num > 0 then writeln(‘YES’)
else writeln(‘NO’);
num > 0
YES
NO
конец
end.

8. Спасибо за внимание.

English     Русский Rules