
- •Информатика и программирование
- •Содержание
- •Предисловие
- •Рабочая программа
- •Цели и задачи дисциплины
- •Место дисциплины в структуре ооп
- •Требования к результатам освоения дисциплины
- •Содержание разделов и тем дисциплины
- •Тема 8. Введение в программирование
- •Раздел 5. Основы программирования на языке высокого уровня
- •Тема 9. Основы программирования
- •Тема 10. Программирование алгоритмов обработки сложных данных
- •Раздел 6. Основы современной технологии программирования
- •Тема 11. Модульный принцип построения программ
- •Тема 12. Основы проектирования программ
- •Тема 13. Программирование с использованием динамической памяти
- •Раздел 7. Основы объектно-ориентированного программирования
- •Тема 14. Основные понятия объектно-ориентированного программирования
- •Тема 15. Классы и объекты
- •Учебно-методическое и информационное обеспечение дисциплины
- •Вопросы для подготовки к экзамену
- •Контрольная работа
- •2.1 Общие указания и выбор варианта
- •2.2 Задания контрольной работы
- •2 Задание Логика (балл -10)
- •3 Задание Основные понятия информатики (балл -5)
- •4 Задание Основы алгоритмизации (балл -5)
- •5 Задание Основы программирования (балл -5)
- •6 Задание Структуры данных (балл -5)
- •7 Задание Решение задач с заданным алгоритмом (балл -10)
- •8 Задание Разработка алгоритмов и программ (балл -20)
- •3.Методические указания к выполнению заданий
- •Требования к оформлению контрольной работы
- •Методические указания к выполнению задания 1
- •Методические указания к выполнению 2
- •Методические указания к выполнению заданий 3-6
- •Методические указания к выполнению задания 7
- •Методические указания к выполнению задания 8
- •Разность наибольшего и наименьшего элементов
- •Применение бальной системы оценок
- •Типичные ошибки, допускаемые при выполнении контрольной работы
- •650992, Г. Кемерово, пр. Кузнецкий, 39
Методические указания к выполнению задания 8
Пример1 выполнения задания 8
Определить количество тех членов последовательности, которые нечетны и отрицательны. Найти сумму членов последовательности, кратных 5.
Выполнение задания:
1. Разработаем алгоритм решения задачи (рис. 2).
Рис.2. Блок-схема алгоритма к примеру 1
Оценка за правильную блок-схему алгоритма – 7 баллов.
2.Разработаем программу.
program zadacha_8_1;
uses crt;
const
m=500; {максимальное значение n};
var
a: array [1..m] of integer; {массив, состоящий из членов последовательности};
n: word; {число членов последовательности}
kol: word; {количество нечетных и отрицательных членов последовательности}
sum: integer; {сумма членов последовательности, кратных 5}
i: word; {счетчик цикла}
begin
writeln (‘Введите исходные данные:’);
write (‘n=’); readln (n);
for i:=1 to n do
begin
write (‘a[‘,i:3,’]=’); readln (a[i]);
end;
kol:=0; sum:=0;
for i:=1 to n do
begin
if odd(a[i]) and (a[i]<0) then kol:= kol +1;
if a[i] mod 5=0 then sum:= sum +a[i];
end;
writeln (‘результаты расчета:’);
writeln (‘количество нечетных и отрицательных ’);
writeln (‘членов последовательности равно’,kol:4);
writeln (‘сумма членов последовательности, кратных 5, равна’, sum:4);’);
readln;
end.
Оценка за разработанную программу – 9 баллов.
3.Приведем тестовый пример
Введите исходные данные
n = 10
a[ 1] = 1
a[ 2] = 5
a[ 3] = -3
a[ 4] = -4
a[ 5] = 0
a[ 6] = 6
a[ 7] = -25
a[ 8] = -100
a[ 9] = 9
a[10] = -7
Результаты расчета:
Количество нечетных и отрицательных членов последовательности равно 3
Сумма членов последовательности, кратных 5, равна –120
Оценка за тестовый пример – 4 балла.
Суммарный балл за выполнение задания 8 – 20 баллов.
Пример 2 выполнения задания 8.
Найти разности наибольших и наименьших элементов каждой строки матрицы А.
1. Разработаем алгоритм решения задачи (рис. 3).
Введем обозначения:
m – количество строк матрицы А;
n – количество столбцов матрицы А;
i – номер текущей строки матрицы А;
j – номер текущего столбца матрицы А;
min – наименьший элемент в текущей строке матрицы А;
max – наибольший элемент в текущей строке матрицы А;
razn – разность наибольшего и наименьшего элементов текущей строки матрицы А.
Рис.3. Блок-схема к примеру 2
Оценка за правильную блок-схему алгоритма – 7 баллов.
2.Разработаем программу.
Program zadacha_8_2;
const
p=100;
var a :array [1..p,1..p] of integer; {исходная матрица}
n ,m :integer;{размеры матрицы}
i , j :integer;{счетчики циклов}
max :integer;{максимальный элемент строки}
min :integer;{минимальный элемент строки}
razn :integer;{разность максимального и минимального элементов}
begin
write (‘m=’); readln (m);
write (‘n=’); readln (n);
writeln (‘Матрица’);
for i:=1 to m do
begin
for j:=1 to n do read (a[i,j]);
end;
writeln (‘Разность наибольшего и наименьшего элементов’);
for i:=1 to m do
begin
min :=a[i,1];
max :=a[i,1];
for j:=1 to n do
begin
if a[i,j]<min then min:=a[i,j];
if a[i,j]>max then max:=a[i,j];
end;
razn:=max-min;
writeln(‘для ‘,i:3,’-й строки равна ‘, razn:5);
end;
readln;
end.
Оценка за разработанную программу – 9 баллов.
3.Приведем тестовый пример
m = 4
n = 7
Матрица А:
5 |
23 |
-3 |
8 |
9 |
15 |
-26 |
7 |
19 |
13 |
-1 |
8 |
6 |
74 |
-8 |
65 |
87 |
3 |
1 |
9 |
5 |
77 |
96 |
4 |
5 |
8 |
3 |
7 |