Тематический блок «Программирование» ЕГЭ-2015 Задания 19, 20, 21, 25.

Презентация:



Advertisements
Похожие презентации
Язык программирования Pascal Массивы А. Жидков. Массивы Массив – поименованный набор однотипных элементов, каждый из которых имеет свой номер, (индекс).
Advertisements

Стандартные алгоритмы обработки массивов в заданиях ОГЭ и ЕГЭ по информатике (на примере заданий 10 КИМ ОГЭ, 25,19 КИМ ЕГЭ) Учитель информатики МАОУ «Лицей.
1 Массивы Массив – это упорядоченная последовательность, состоящая из фиксированного количества величин одного типа. Особенности: все элементы имеют один.
1 Программирование на языке Паскаль Тема 1. Массивы.
Решение задач с использованием одномерных массивов.
К. Поляков, Программирование на языке Паскаль Часть II Тема: Массивы.
Программирование Задания В2, В5. Оператор присваивания в языке программирования Задание В2 – базовый уровень, время – 2 мин.
Массивы 9 класс. Основные теоретические сведения Примеры решения задач.
Программирование на языке Паскаль Массивы. Определение массива Многие задачи, которые решаются с помощью ЭВМ, связаны с обработкой массивов. Массив -
Массивы Теоретические сведения. Примеры решения задач. Задания для самостоятельного выполнения.
ЕГЭ 2012 Информатика и ИКТ Консультация 3. Пример.
МАССИВЫ Если работа программы связана с хранением и обработкой большого количества однотипных переменных, для их представления в программе можно использовать.
Одномерные массивы целых чисел. 9 класс
Массивы Вариант 1 Program upr1; Var s,a:real; I: integer; Begin S:=0; For I:=1 to 10 do Begin Writeln (введите очередное число'); Readln(a); S: =s+a; End;
Задача. С клавиатуры вводится n чисел (числа могут повторяться). Необходимо подсчитать количество чисел равных наименьшему числу.
Массивы Описание массива. Виды и назначение массивов. Заполнение и вывод элементов массива.
РЕШЕНИЕ ЗАДАЧ по теме: МАССИВЫ Выполнила учитель информатики МБОУ «СОШ с. Грачев Куст Перелюбского муниципального района Саратовской области» Подстречная.
Одномерные массивы Решение задач. Табличный способ организации данных Одномерные и двумерные массивы.
Алгоритмизация и программирование. Практическая работа в Pascal Задача 1.
Основные алгоритмы работы с одномерными массивами (поиск и сортировка) 8 класс 1.
Транксрипт:

Тематический блок «Программирование» ЕГЭ-2015 Задания 19, 20, 21, 25

2 Массивы (вектора) Массив – это группа однотипных элементов, имеющих общее имя и расположенных в памяти рядом. Особенности: все элементы имеют один тип весь массив имеет одно имя все элементы расположены в памяти рядом Примеры: список учеников в классе квартиры в доме школы в городе данные о температуре воздуха за год

3 Массивы A НОМЕР элемента массива (ИНДЕКС) НОМЕР элемента массива (ИНДЕКС) A[1] A[2] A[3] A[4] A[5] A[2] НОМЕР (ИНДЕКС) элемента массива: 2 ЗНАЧЕНИЕ элемента массива: 10

4 Объявление массивов Зачем объявлять? определить имя массива определить тип массива определить число элементов выделить место в памяти Массив целых чисел: Размер через константу: имя начальный индекс конечный индекс тип элементов тип элементов var A: array[1.. ] of integer; const N=5; N var A : array[ ] of integer ;

Стандартные алгоритмы обработки одномерных массивов

1. Найти сумму элементов массива Program Summa; Const N = 20; Var i, S:integer; A: array [1..N] of integer; Begin {Ввод массива} for i:=1 to N do Readln (A[i]); {Обработка массива} S:=0; for i:=1 to N do S:=S+A[i]; {Вывод результата} Write (S); End. Program Summa; Const N = 20; Var i, S:integer; A: array [1..N] of integer; Begin {Ввод массива} for i:=1 to N do Readln (A[i]); {Обработка массива} S:=0; for i:=1 to N do S:=S+A[i]; {Вывод результата} Write (S); End.

2. Найти произведение элементов массива (*) P:=1; for i:=1 to N do P:=P*A[i]; Write (P); End. (*) P:=1; for i:=1 to N do P:=P*A[i]; Write (P); End.

3. Найти среднее арифметическое элементов массива (*) S:=0; for i:=1 to N do S:=S+A[i]; S:=S/N; Write (S); End. (*) S:=0; for i:=1 to N do S:=S+A[i]; S:=S/N; Write (S); End.

4. Найти сумму положительных элементов массива (*) S:=0; for i:=1 to N do if A[i]>0 then S:=S+A[i]; Write (S); End. (*) S:=0; for i:=1 to N do if A[i]>0 then S:=S+A[i]; Write (S); End.

5. Найти количество отрицательных элементов массива (*) k:=0; for i:=1 to N do if A[i]<0 then k:=k+1; Write (k); End. (*) k:=0; for i:=1 to N do if A[i]<0 then k:=k+1; Write (k); End.

6. Найти среднее арифметическое четных элементов массива (*) S:=0; k:= 0; for i:=1 to N do if A[i] mod 2=0 then begin k:=k+1; S:=S+A[i]; end; S:=S/k; Write (S); End. (*) S:=0; k:= 0; for i:=1 to N do if A[i] mod 2=0 then begin k:=k+1; S:=S+A[i]; end; S:=S/k; Write (S); End.

7. Найти максимальный элемент массива (*) max:=A[1]; for i:=1 to N do if A[i]>max then max:=A[i]; Write (max); End. (*) max:=A[1]; for i:=1 to N do if A[i]>max then max:=A[i]; Write (max); End.

8. Найти минимальный элемент массива и его номер. (*) min:=A[1]; imin:= 1; for i:=1 to N do if A[i]<min then begin min:=A[i]; imin:=i; end; Write (min, imin); End. (*) min:=A[1]; imin:= 1; for i:=1 to N do if A[i]<min then begin min:=A[i]; imin:=i; end; Write (min, imin); End.

C2 (высокий уровень, время – 30 мин) Тема: Обработка массива (написать программу из строк на языке программирования или алгоритм на естественном языке). Что нужно знать: массив – это набор однотипных элементов, имеющих общее имя и расположенных в памяти рядом; для обращения к элементу массива используют квадратные скобки, запись A[i] обозначает элемент массива A с номером (индексом) i; для обработки всех элементов массива используется цикл вида for i:=1 to N do begin { что-то делаем с элементом A[i] } end; переменная i обозначает номер текущего элемента массива, она меняется от 1 до N с шагом 1, то есть мы «проходим» последовательно все элементы;

Задание 25 (С2) С2. Дан целочисленный массив из 20 элементов. Элементы массива могут принимать целые значения от 0 до включительно. Опишите на естественном языке или на одном из языков программирования алгоритм, позволяющий найти и вывести максимальное значение среди трёхзначных элементов массива, не делящихся на 9. Если в исходном массиве нет элемента, значение которого является трёхзначным числом и при этом не кратно 9, то выведите сообщение «Не найдено». Исходные данные объявлены так, как показано ниже на примерах для некоторых языков программирования и естественного языка. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.

В качестве ответа Вам необходимо привести фрагмент программы (или описание алгоритма на естественном языке), который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования или в виде блок-схемы. В этом случае Вы должны использовать те же самые исходные данные и переменные, какие были предложены в условии (например, в образце, записанном на естественном языке). Const N = 20; var a: array [1..N] of integer; i, j, max: integer; begin for i := 1 to N do readln(a[i]);... end.

Задание 19 (А12) (повышенный уровень, время – 5 мин) Массив A одномерный; в программе рассматривается его фрагмент, соответствующий значениям индекса от 1 до n. J := 1; for i:=1 to n do begin if A[i]<A[j] then j := i; end; s := j; Тема: Работа с массивами и матрицами в языке программирования.

Чему будет равно значение переменной s после выполнения данного фрагмента программы? 1)минимальному элементу в массиве A 2)индексу минимального элемента в массиве A (наименьшему из таких индексов, если минимальных элементов несколько) 3)индексу минимального элемента в массиве A (наибольшему из таких индексов, если минимальных элементов несколько) 4) количеству элементов, равных минимальному в массиве A

Задание 20 (В8) (повышенный уровень, время – 5 мин) Тема: Анализ программы, содержащей подпрограммы, циклы и ветвления. Ниже на четырех языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наименьшее из таких чисел x, при вводе которых алгоритм печатает сначала 13, а потом 5. var x, a, b, c: integer; begin readln(x); a:=0; b:=10; while x > 0 do begin c := x mod 10; a := a + c; if c < b then b := c; x := x div 10; end; writeln(a); write(b); end.

Задание 21 (В14) (повышенный уровень, время – 6 мин.) Тема: Анализ программы с подпрограммами Напишите в ответе число, которое будет напечатано в результате выполнения следующего алгоритма var a,b,t,M,R : integer; Function F(x: integer): integer; begin F:= 2*(x*x-16)*(x*x-16)+5; end; begin a:=-11; b:=11; M:=a; R:=F(a); for t:= a to b do begin if (F(t)<R)then begin M:=t; R:=F(t); end; end; write(M+6) end.