- •Введение
- •Требования к выполнению и оформлению контрольной работы по информатике для студентов заочной формы обучения
- •Требования к содержанию работы
- •Требования к оформлению работы
- •Оценивание контрольной работы
- •Варианты контрольных работ
- •Вопросы к контрольной работе по информатике
- •Тема 1. Основы информационной культуры
- •Тема 2. Техническая база информационных технологий
- •Тема 3. Алгоритмизация и программирование
- •Тема 4. Технология программирования в среде turbobasic (qbasic или turbopascal)
- •Тема 5. Системное программное обеспечение компьютера
- •Тема 6. Текстовый процессор ms word
- •Тема 7. Табличный процессор ms еxcel
- •Тема 8. Система управления базами данных
- •Тема 9. Графические редакторы
- •Тема 10. Компьютерные сети
- •Тема 11. Защита информации
- •Варианты задач
- •1. Даны два числа X и y. Вычислить
- •Термины
- •Примеры по алгоритмизации и программированию Алгоритмы линейной структуры
- •Алгоритмы разветвляющейся структуры
- •Алгоритмы циклической структуры
- •Пример оформления контрольной работы
- •Инструкция по безопасной эксплуатации персональных компьютеров (пк)
- •Общие требования безопасности
- •Требования безопасности перед началом работы
- •Требования безопасности во время работы
- •Используемая литература и источники:
- •Список литературы а) основная литература:
- •Б) дополнительная литература:
- •В) справочная литература:
- •Г) учебно-методическая литература:
- •Д) основные периодические издания:
- •Алгоритмы линейной структуры……………………………..24 Алгоритмы разветвляющейся структуры…………………...25 Алгоритмы циклической структуры…………………………30
Алгоритмы циклической структуры
Наиболее сложным типом вычислительного процесса является циклический. Циклы возникают тогда, когда необходимо многократно повторять какие-либо действия. Число повторений в любом цикле должно быть конечным.
Существуют циклы, в которых число повторений заранее известно (счетные циклы). В итерационных циклах количество повторений заранее неизвестно, выход из них осуществляется по достижению заданных условий.
Рассмотрим несколько примеров циклических процессов.
Задача 5. Найти конечную сумму S=1+1/2+1/3+….+1/n.
Введем следующие обозначения. Переменная i – номер слагаемого данной суммы. Само слагаемое имеет вид 1/i. Необходимо просмотреть все номера, начиная с первого и заканчивая последним номером n, и каждое слагаемое прибавить к S. Предлагается следующая схема алгоритма нахождения S.
Рис.5. Схема алгоритма решения задачи 5.
Поясним схему. Блоки 3,4,5 служат для организации цикла. С их помощью задается количество повторений цикла. Переменная i называется переменной цикла или счетчиком цикла. В блоке 3 задается начальное значение счетчика цикла, а в блоке 6 – шаг изменения счетчика цикла. В блоке 4 осуществляется проверка на конец циклических вычислений.
Обнуление суммы S в блоке 2 необходимо для того, чтобы при первом вхождении в блок 5 действие S+1/i было однозначно определено.
Программа на Паскале:
Program Prim_5; {заголовок программы}
Var I, N: Integer; {блок описания данных}
S: Real;
Begin {начало операторов программы}
Read(N); {ввод значения N с клавиатуры}
S:=0; {обнуление суммы}
For I:=1 To N Do {оператор цикла}
S:=S+1/I; {циклическое действие}
Writeln('S=',S:6:2) {вывод результата}
End. {конец программы}
Алгоритм на Бэйсике :
10 Input N%
20 S=0
30 For I%=1 To N%
40 S=S+1/I%
50 Next I%
60 Print ("S=";S)
70 End
Можно записать и так :
10 Input N
20 S=0
30 For I=1 To N
40 S=S+1/I
50 Next I
60 Print ("S=";S)
70 End
Результаты будут одинаковы при одном и том же значении N. В этой задаче можно не указывать тип переменных, так как счетчик цикла I может принимать только целые значения.
Задача 6. Дан массив чисел D=(d1,d2,..,dn). Найти dср по формуле dср= (d1+d2+..+dn)/n.
Решение этого примера похоже на решение примера 5. Сначала введем исходные данные d1,d2,..,dn и найдем их сумму S. Разделив S на n, получим dср. и выведем результат и исходные данные.
Схема алгоритма решения задачи 6:
Рис.6. Схема алгоритма решения задачи 6
Программа на Паскале:
Program Prim_6; {заголовок программы}
Const M=100;
Var I,N : Integer; {блок описания данных}
S,DSR : Real;
D : Array[1..M] of Real;
Begin {начало операторов программы}
Read(N); {ввод значения N ≤100 с клавиатуры}
For I:=1 To N Do {оператор цикла}
Read(D[I]); {Ввод значений Di}
S:=0; {обнуление суммы}
For I:=1 To N Do {оператор цикла}
S:=S+D[I]; {нахождение суммы Di}
DSR:=S/N; {нахождение среднего диаметра DSR}
Writeln('DSR=',DSR:6:2) {вывод результата}
End. {конец программы}
Программа на Бейсике :
10 Input N
20 Dim D(N)
30 For I=1 to N
40 Input D(I)
50 Next I
60 S=0
70 For I=1 To N
80 S=S+D(I)
90 Next I
100 DSR=S/N
110 Print ("DSR=";DSR)
120 End
Задача 7. Даны массив целых чисел X=(x1,x2,..,xn) и целое число Z. Найти количество чисел xi , которые равны Z.
Схема алгоритма решения задачи 7:
Рис.7. Схема алгоритма решения задачи 7
Искомое количество элементов массива Х, равных числу Z, обозначим K. До начала просмотра элементов K=0. Просматривая по порядку все элементы массива, будем сравнивать их с числом Z. Как только будет обнаружен очередной элемент, который равен Z, значение переменной K увеличивается на 1.
Программы записываются так:
Program Prim_7; {заголовок программы}
Const M=100;
Var I,N,K,Z : Integer; {блок описания данных}
X : Array[1..M] of Integer;
Begin {начало операторов программы}
Read(N); {ввод значения N ≤100 с клавиатуры}
For I:=1 To N Do {оператор цикла}
Read(X[I]); {Ввод значений Xi}
Read(Z); {Ввод значения Z}
K:=0; {обнуление K}
For I:=1 To N Do {оператор цикла}
If X[I]=Z Then {проверка условия}
K:=K+1; {нахождение количества К}
Writeln('K=',K:6) {вывод результата}
End. {конец программы}
10 Input N,Z
20 Dim X(N)
30 For I=1 To N
40 Input X(I)
50 Next I
60 K=0
70 For I=1 To N
80 If X(I)=Z Then K=K+1
90 Next I
100 Print ("K=";K)
110 End