- •«Утверждаю»
- •Учебно-методический комплекс
- •Астана График выполнения и сдачи заданий по дисциплине
- •Карта учебно-методической обеспеченности дисциплины Учебники, учебные пособия
- •Конспект лекционных занятий
- •Тема 1. Введение в программирование на Си. Структура программы. Директивы препроцессора. Типы данных.
- •Основные операции в языке Си.
- •Преобразование типов
- •Тема 2. Управляющие структуры. Выбор вариантов. Структура выбора If, If – Else, логические операции, операция условия, множественный выбор.
- •Тема 3. Управляющие структуры. Структуры повторения While, do – While, For. Управляющие операторы break и continue.
- •Тема 4. Массивы. Разработка программ с использованием одномерных и двумерных массивов.
- •Тема 5. Функции в Си. Создание и использование функций.
- •Тема 6. Классы памяти и разработка программ.
- •Тема 7. Указатели в Си.
- •Тема 8. Использование указателей при обработке одномерных и двумерных массивов.
- •Тема 9. Символы и строки в Си.
- •Тема 10. Функции операции над строками.
- •Функции сравнения из библиотеки обработки строк. Прототипы функций и краткое описание каждой из них приведены в таблице 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:
а) ;
|
б) ; |
в) |
г) ;
|
д) ; |
е) ; |
ж) ;
|
з) ; |
и) ; |
к) ; |
л) ; |
м) . |