- •«Утверждаю»
- •Учебно-методический комплекс
- •Астана 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. Алгоритмизация графических построений.
- •Варианты заданий:
- •Сведения
- •Перечень экзаменационных вопросов по пройденному курсу
- •Глоссарий
Лабораторная работа №5. Разработка программ с использованием двумерных массивов.
Цель лабораторной работы:получить навыки по обработке двумерных массивов с помощью языка Си.
Задания к лабораторной работе № 5.
1. Дан массив A[5,5]. Найти минимальный элемент среди элементов, расположенных в нечетных строках массива.
2. Дан массив A[6,6]. Если среди элементов массива есть элемент, равныйВто переменнойХприсвоить значение, равное сумме положительных элементов, расположенных слева от этого элемента, иначе переменнойХприсвоить 0.
3. Дан массив A[5,5]. Построить массивВ(5) по следующему правилу:В(J) присвоить максимальный элементJ-го столбца массиваА.
4. Дан массив A[7,7]. Найти произведение и количество четных положительных элементов, расположенных выше главной диагонали.
5. Дан массив A[6,6]. Найти суммы положительных элементов строк и присвоить их элементам побочной диагонали соответствующих строк.
6. Дан массив A[5,5]. Построить массивВ(5) по следующему правилу:В(I) присвоить 1, если вI-той строке массива есть хотя бы один отрицательный элемент, в противном случаеВ(I) присвоить 0.
7. Дан массив A[6,6]. Построить массивВ(6) по следующему правилу:В(J) присвоить 1, если вJ-ом столбце массиваАколичество ненулевых элементов больше количества нулевых элементов, в противном случаеВ(J) присвоить 0.
8. Дан массив A[8,8]. Найти максимальный элемент среди элементов, расположенных выше побочной диагонали. Поменять местами элементы строки и столбца, на пересечении которых находится максимальный элемент.
9. Дан массив A[7,7]. Построить массивВ(7) по следующему правилу:В(I) присвоить 1, если вI-той строке массива представляют возрастающую последовательность, в противном случаеВ(I) присвоить 0.
10. Дан массив A[6,6]. Построить массивВ(6) по следующему правилу:В(1) присвоить количество нулевых элементов главной диагонали,В(2) присвоить количество нулевых элементов диагонали, расположенной выше и параллельно главной диагонали и т.д.
11. Дан массив A[5,5]. Найти минимальную сумму положительных элементов диагоналей, параллельных побочной диагонали.
12. Дан массив A[6,6]. В каждой строке найти максимальный элемент, в каждом столбце найти минимальный элемент. Найденные элементы соответствующей строки и столбца поменять местами.
13. Дан массив A[7,7]. Упорядочить элементы массива построчно.
14. Дан массив A[6,6]. Найти мах среди элементов, повторившихся более одного раза.
15. Дан массив A[7,7]. Найти количество столбцов, составленных из попарно различных элементов.
16. Дан массив A[8,8]. Найти минимальный элемент среди элементов строк, упорядоченных либо по возрастанию, либо по убыванию.
17. Дан массив A[7,7]. Вывести строки массива по убыванию максимальных элементов строк массива.
18. Дан массив A[8,8]. Найти максимальное произведение ненулевых элементов диагоналей, параллельных главной диагонали.
19. Дана действительная матрица размера получить действительную квадратную матрицу порядка 8:
.
20. Дана действительная матрица размера получить действительную квадратную матрицу порядка 8:
.
21. Даны натуральное число n, действительная матрица. Получить последовательность элементов главной диагонали
22. Все элементы с наибольшим значением в данной целочисленной квадратной матрице порядка 10 заменить нулями.
23. Дана действительная матрица размера Найти среднее арифметическое наибольшего и наименьшего значений её элементов.
24. Дана действительная матрица размера Найти значение наибольшего по модулю элемента матрицы, а также индексы какого-нибудь элемента с найденным значением модуля.
25. Дана действительная матрица размера Найти сумму наибольших значений элементов её строк.
26. В данной действительной квадратной матрице порядка nнайти сумму элементов строки, в которой расположен элемент с наименьшим значением. Предполагается, что такой элемент единственный.
27. В данной действительной матрице размера поменять местами строку, содержащую элемент с наибольшим значением, со строкой, содержащей элемент с наименьшим значением. Предполагается, что эти элементы единственны.
28. Даны натуральное число n, действительная квадратная матрица порядкаn, действительныеЭлементы последовательностидомножить на 10, если наибольший элемент матрицы (в предположении, что такой элемент единственный) находится на главной диагонали, и на 0.5 в противном случае.
29. Даны действительные числа действительная квадратная матрица порядкаn . Получить действительную матрицу размеравставив в исходную матрицу между пятым и шестым столбцами новый столбец с элементами
30. Дана целочисленная матрица размера Найти матрицу, получающуюся из данной перестановкой столбцов – первого с последним, второго с предпоследним и т.д..
31. Дана целочисленная матрица размера . Найти матрицу, получающуюся из данной перестановкой строк – первой с последней, второй с предпоследней и т.д.
32. Дана действительная квадратная матрица порядка n. Преобразовать матрицу по следующему правилу: строку с номеромnсделать столбцом с номеромn, а столбец с номеромnсделать строкой с номеромn.
33. В данной действительной квадратной матрице порядка nнайти наибольший по модулю элемент. Получить квадратную матрицу порядкаn-1 путем выбрасывания из исходной матрицы какой-нибудь строки и столбца, на пересечении которых расположен элемент с найденным значением.
34. Дана действительная квадратная матрица порядка n, все элементы которой различны. Найти наибольший элемент среди стоящих на главной и побочной диагоналях и поменять его местами с элементом, стоящим на пересечении этих диагоналей.
35. Дана действительная квадратная матрица порядка n. Найти наибольшее из значений элементов, расположенных в закрашенной части матрицы:
а)
|
б) |
в) |
г) |
д) |
е)
|
ж) |
з) |
и) |
к) |
36. Дана действительная квадратная матрица порядка 2n. Получить новую матрицу, переставляя её блоки размера.
-
а)
б)
37. Даны матрицы Аи В размераи, соответственно. Найти произведениеАВ.
38. Дана квадратная матрица порядка n. Получить матрицу.
39. Даны квадратные матрицы АиВпорядкаn. Получить матрицуАВ-ВА.
40. Даны квадратная матрица А порядкаnи вектор сnэлементами. Получить вектор:
а) ; б)в), гдеЕ – единичная матрица порядкаn.
41. Даны квадратные матрицы А,BиСпорядкаn. Получить матрицу (А+В)С.
42. Даны квадратные матрицы АиBпорядкаn. Получить матрицуА(В-Е)+С, гдеЕ– единичная матрица порядкаn, а элементы матрицыСвычисляются по формуле:
43. Дана матрица Аразмера. Получить транспонированную матрицу(её размер -).
44. Дана квадратная матрица порядка n. Получить векторAb, гдеb – вектор, элементы которого вычисляются по формуле:
а) б);.
45. Дана квадратная матрица Апорядкаn. Получить матрицуАВ ; элементы матрицыВвычисляются по формуле
а) б); в).
46. Дана матрица А:
а) размера б) размера
Получить матрицу(её размер -).
47. Дана квадратная матрица Апорядкаm. Получить матрицыи
48. Правая треугольная матрица Апорядкаnзадана в виде последовательности (n+1)n/2 чисел: сначала идетnэлементов первой строки, затемn-1 элемент второй строки, начиная со второго элемента, и т.д. (из последней,n-ой строки берется толькоn-й элемент). Кроме этой последовательности дан векторbсnэлементами. Найти векторAb.
49. Дана действительная матрица порядка mn. Получить векторb1,…,bm, элементы которого соответственно равны:
а) суммам элементов строк;
б) произведениям элементов строк;
в) наименьшим значениям элементов строк;
г) значениям средних арифметических элементов строк;
д) разностям наибольших и наименьших значений элементов строк.
50. Две правые треугольные матрицы АиВпорядкаnзаданы так, как описаны в предыдущей задаче. Получить в аналогичном виде:
а) матрицу АВ;
б) матрицу , гдеЕ – единичная матрица порядкаn.
51. Получить квадратную матрицу порядка n:
а) ;
|
б) ; |
в) |
г) ;
|
д) ; |
е) ; |
ж) ;
|
з) ; |
и) ; |
к) ; |
л); |
м) . |