- •«Утверждаю»
- •Учебно-методический комплекс
- •Астана 2010 График выполнения и сдачи заданий по дисциплине
- •Карта учебно-методической обеспеченности дисциплины Учебники, учебные пособия
- •Конспект лекционных занятий
- •Тема 1. Введение в программирование на Си. Структура программы. Директивы препроцессора. Типы данных.
- •Основные операции в языке Си.
- •Преобразование типов
- •Тема 2. Управляющие структуры. Выбор вариантов. Структура выбора If, If – Else, логические операции, операция условия, множественный выбор.
- •Тема 3. Управляющие структуры. Структуры повторения While, do – While, For. Управляющие операторы break и continue.
- •Тема 4. Массивы. Разработка программ с использованием одномерных и двумерных массивов.
- •Тема 5. Функции в Си. Создание и использование функций.
- •Тема 6. Классы памяти и разработка программ.
- •Тема 7. Указатели в Си.
- •Тема 8. Использование указателей при обработке одномерных и двумерных массивов.
- •Тема 9. Символы и строки в Си.
- •Функции сравнения из библиотеки обработки строк. Прототипы функций и краткое описание каждой из них приведены в таблице 6.
- •Функции поиска из библиотеки обработки строк. Прототипы функций и краткое описание каждой из них приведены в таблице 7.
- •Другие функции из библиотеки обработки строк. В таблице 8 приведены прототипы и краткое описание остальных функций из библиотеки обработки строк.
- •Ниже приведены примеры программы, использующих функции работы со троками.
- •Тема 11. Структуры данных в Си.
- •Тема 12. Динамические структуры данных.
- •Тема 13. Работа с файлами в Си.
- •Тема 14. Графика в Си.
- •Тема 15. Объектно-ориентированное программирование.
- •Методические рекомендации по выполнению лабораторных заданий
- •Лабораторная работа № 3. Использование операторов цикла при решении задач.
- •Лабораторная работа №4. Разработка программ с использованием одномерных массивов.
- •Лабораторная работа №5. Разработка программ с использованием двумерных массивов.
- •Лабораторная работа № 6. Программирование задач с использованием нескольких функций на языке Си.
- •Лабораторная работа № 8. Программирование задач обработки структур данных.
- •Лабораторная работа № 9. Разработка программ с использованием файловых переменных.
- •Лабораторная работа № 10. Разработка программ с использованием графических функций языка Си.
- •Содержание отчета по выполнению лабораторной работы
- •1 Задание
- •Тема 1. Запись констант, стандартных функций, выражений, операторов присваивания. Запись программ линейных структур алгоритмов.
- •Тема 2. Алгоритмическое описание, запись программ линейных, разветвляющихся.
- •Тема 3. Алгоритмическое описание, запись программ циклических структур алгоритмов.
- •Тема 4. Алгоритмическое описание, составление программ обработки одномерного массива.
- •Тема 5. Алгоритмическое описание, составление программ обработки двумерного массива.
- •Тема 6-7. Составление программ решения задач с использованием функции.
- •Рекомендуемая литература:
- •Тема 8-9. Составление программ решения задач обработки массивов с использованием указателей.
- •Тема 10-11. Программирование задач обработки символьных и стрковых данных.
- •Рекомендуемая литература.
- •Тема 12. Методы сортировки.
- •Тема 13. Составление программ решения задач с использованием структур данных.
- •Тема 14. Составление программ решения задач с использованием файла произвольного доступа.
- •Рекомендуемая литература.
- •Тема 15. Алгоритмизация графических построений.
- •Варианты заданий:
- •Сведения
- •Перечень экзаменационных вопросов по пройденному курсу
- •Глоссарий
Лабораторная работа № 6. Программирование задач с использованием нескольких функций на языке Си.
Цель лабораторной работы:получить навыки программирования задач с использованием нескольких функций.
Задания к лабораторной работе № 6
1. Даны действительные числа s,t. Вычислитьf(t, -2s, 1.17) +f(2.2,t,s-t), где.
2. Даны действительные числа s,t. Вычислитьg(1.2,s) +g(t,s) -g(2s-1,st), где.
3. Даны действительные числа a,b,c. Вычислить.
4. Даны действительные числа a,b,c. Вычислить.
5. Даны натуральные числа n,m, целые числаa1, …,an,b1, …,bm,c1, …,c30. Вычислить.
6. Даны действительные числа a1, …,an,b1, …,bm. В последовательностиa1, …,anи в последовательностиb1, …,bmвсе члены, следующие за членом с наибольшим значением (за первым по порядку, если их несколько), заменить на 0.5.
7. Даны действительные числа x1,y1,x2,y2, …,x7,y7. Найти периметр семиугольника, вершины которого имеют соответственно координаты (x1,y1), (x2,y2), …, (x7,y7).
8. Даны три массива А(3,6),В(5,5),С(5,4). Найти максимальное произведение четных элементов, расположенных в нечетных строках этих массивов.
9. Даны два массива А(10),В(10). В массивахА(10) иВ(10) все элементы, предшествующие первому нулевому элементу, заменить на 0,5.
10. Даны три массива А(5,5),В(5,5),С(5,5). Найти минимальное произведение ненулевых элементов, расположенных в нечетных строках этих массивов.
11. Даны пять массивов А(4,4),В(4,4),С(4,4),D(4,4),F(4,4). Найти произведение и сумму массивов. Определение произведения и суммы двух массивов оформить в виде процедуры.
12. Даны четыре массива A(5,5),B(5,5),C(5,5),D(5,5). Найти произведение минимальных элементов, расположенных выше побочной диагонали в этих массивах.
13. Даны действительные числа a,b,c,d. Найти площадь пятиугольника, изображенного на рисунке. (Определить процедуру вычисления площади треугольника по трем его сторонам).
14. Найти семиугольник с координатами вершин (x1,y1), (x2,y2), …, (x7,y7). Вывести на печать координаты треугольника с максимальной площадью. Определение площади треугольника по формуле Герона оформить в виде функции.
15. Даны целые числа a1, …,an,b1, …,bm,k. Если в последовательностиa1, …,anнет ни одного члена со значениемk, то первый по порядку член этой последовательности, не меньший всех остальных членов, заменить на значениеk. По такому же правилу преобразовать последовательностьb1, …,bmприменительно к значению 10.
16. Даны действительные числа a,b. Получить
.
17. Даны натуральные числа k, l, m,действительные числаx1, …,xk,y1, …,yl,z1, …,zm. Получить
18. Даны действительные числа s,t. Получить,
где .
19. Даны действительные числа a1, …,a6. Получить дляx= 1, 3, 4 значенияp(x+1)-p(x), где
20. Дано действительное число y. Получитьгде
21. Даны действительные числа s,t,Получить
где
22. Даны целые числа . Вычислить по схеме Горнера, определив процедуры полного сокращения рационального числа, заданного числителем и знаменателем, а также процедуры сложения и умножения рациональных чисел.
23. Даны целые числа Исследовать существование целочисленных корней уравнения.(Если, то имеется корень 0; если же, то целочисленный корень, если он существует, принадлежит конечному множеству положительных и отрицательных делителей числа. Здесь полезно определить процедуру вычисления по схеме Горнера значения многочлена, а также процедуру, которая по двум заданным числам k и mпозволяет определить значение наименьшего делителя числа m, содержащегося среди чисел k+1, k+2,...,m.
24. Даны натуральное число n, действительные числа x, y,
Вычислить по схеме Горнера значение многочлена с комплексными коэффициентами (Определить процедуры выполнения арифметических операций над комплексными числами).
25. Даны действительные числа Получитьгдеu,v,w– комплексные числа(Определить процедуры вычисления арифметических операций над комплексными числами.)
26. Даны натуральное число n, целые числаРассмотреть отрезки последовательности(подпоследовательности идущих подряд членов), состоящие из
а) полных квадратов; б) степеней пятерки; в) простых чисел.
В каждом случае получить наибольшую из длин рассматриваемых отрезков. (Определить процедуры, позволяющие распознавать полные квадраты, степени пятерки, простые числа.)
27. Дано натуральное число n. Среди чисел 1,2,...,n найти все те, которые можно представить в виде суммы квадратов двух натуральных чисел. (Определить процедуры, позволяющие распознавать полные квадраты).
28. Даны действительные числа Найти периметр десятиугольника, вершины которого имеют соответственно координаты(Определить процедуру вычисления расстояния между двумя точками, заданными своими координатами).
29. Даны натуральное число n, действительные числа. Найти площадьn-угольника, вершины которого при некотором последовательном обходе имеют координаты. (Определить процедуру вычисления площади треугольника по координатам его вершин.)
30. Дано четное число n> 2; проверить для этого числа гипотезу Гольдбаха. Эта гипотеза (по сегодняшний день не опровергнутая и полностью не доказанная) заключается в том, что каждое четное n, больше двух, представляется в виде суммы двух простых чисел. (Определить процедуру, позволяющую распознавать простые числа).
31. Дано натуральное число n. Выяснить, имеются ли среди чиселблизнецы, т.е. простые числа, разность между которыми равна двум. (Определить процедуру, позволяющую распознавать простые числа).
32. Даны натуральные число n, целые числа. Рассмотреть все отрезки последовательности, состоящие из совершенных чисел. (Определить процедуру, позволяющую распознавать совершенные числа).
Лабораторная работа № 7. Использование указателей при работе с одномерными и двумерными массивами.
Цель лабораторной работы:получить навыки использования указателей при работе с одномерными и двумерными массивами.
Задания к лабораторной работе № 7.
Даны натуральное число n, действительные числа. Получить последовательность
2. Даны натуральное число n, действительные числа .Если последовательностьупорядочена по убыванию (т.е., если), то оставить её без изменения. Иначе получить последовательность
3. Даны натуральное число n, действительные числа. Вычислить:
а);
б);
в).
4. Дано натуральное число n, действительные числа.Получить
а);
б);
в);
г).
5. Даны натуральное число n, целые числа. Выяснить, имеется ли среди чиселсовпадающие.
6. Даны натуральное число n, действительные числа. Если в последовательностиесть хотя бы один член, меньший, чем -3, то все отрицательные члены заменить их квадратами, оставив остальные члены без изменения; в противном случае домножить все члены на 0.1.
7. ”Считалка“. Даны натуральные n,m. Предполагается, чтоnчеловек встают в круг и получают номера, считая против часовой стрелки, 1, 2, ...,n. Затем, начиная с первого, также против часовой стрелки отсчитываетсяm-й человек (поскольку люди стоят по кругу, то заn-м человеком стоит первый). Этот человек выходит из круга, после чего, начиная со следующего, снова отсчитываетсяm-й человек, и так до тех пор, пока из всего круга не остается один человек. Определить его номер.
8. Даны натуральное число n, действительные числаa1, ...,an. Преобразовать последовательностьa1, ...,a2n, расположив вначале отрицательные члены, а затем – неотрицательные. При этом порядок тех и других чисел изменяется на обратный.
9. Даны натуральное число n, целые числаa1, ...,a3n. Выяснить, верно ли, что для всехa2n+1, ...,a3nимеются равные средиa1, ...,a2n.
10. Даны натуральное число n, действительные числаr1, ...,rn. Получить последовательностьr1, ...,rn,r1, ...,rn.
11. Даны натуральное число n, действительные числаr1, ...,rn. Получить последовательностьr1, ...,rn,rn, ...,r1.
12. Даны натуральное число n, действительные числаr1, ...,rn. Получить последовательностьrn, ...,r1,r1, ...,rn.
13. Даны натуральное число n, действительные числаa1, ...,an. Преобразовать последовательностьa1, ...,a2n, расположив вначале отрицательные члены, а затем – неотрицательные. При этом порядок отрицательных чисел сохраняется прежним, а порядок неотрицательных изменяется на обратный.
14. Даны натуральное число n, целые числаa1, ...,a2n. Выяснить, верно ли, что дляi=l, ...,nвыполненоai=an+i.
15. Даны натуральное число n, целые числаa1, ...,a2n. Выяснить, верно ли, что дляi=l, ...,nвыполненоai= 2an-i+ 2a2n-i+1.
16. Даны натуральное число n, целые числаa1, ...,a2n. Выяснить, верно ли, что дляi=l, ...,nвыполненоai+a2n-i+1 > 17.
17. Даны натуральное число n, целые числаa1, ...,a2n. Выяснить, верно ли, что дляi=l, ...,nвыполненоa2n-i+1<ai <a2n-i.
18. Даны натуральное число n, действительные числаa1, ...,an. Преобразовать последовательностьa1, ...,a2n, расположив вначале отрицательные члены, а затем – неотрицательные. При этом порядок как отрицательных, так и неотрицательных чисел сохраняется прежним.
19. Даны натуральное число n, действительные числаa1, ...,an. Преобразовать последовательностьa1, ...,a2n, расположив вначале отрицательные члены, а затем – неотрицательные. При этом порядок отрицательных чисел изменяется на обратный, а порядок неотрицательных сохраняется прежним.