- •«Национальный исследовательский
- •Т.Е. Мамонова Лабораторная работа № 9
- •220700 – «Автоматизация технологических процессов и производств».
- •Лабораторная работа № 9
- •Теоретическая часть
- •Объявление типа структура
- •Объявление переменных типа структура
- •Использование структур
- •Типичные ошибки при разработке структур
- •Варианты заданий к лабораторной работе № 9
- •Содержание отчета
- •Список литературы
- •220700 – «Автоматизация технологических процессов и производств». Отпечатано в Издательстве тпу в полном соответствии с качеством предоставляемого оригинал-макета
- •634034, Г. Томск, пр. Ленина, 30
Типичные ошибки при разработке структур
Наиболее часто встречающейся ошибкой является включение в структуру взаимозависимых данных. То есть таких членов, значения которых могут быть вычислены на основании других членов структуры.
Пример 7. Неправильная структура
struct Line {
vec3 pt1, pt2;
double length;
};
В данном случае член length может быть вычислен на основании pt1 и pt2. Хранение значение length в структуре нарушает вторую рекомендацию по использованию структур. Кроме расхода памяти для хранения избыточной информации программист получает намного более сложную проблему: необходимость синхронизации данных. При каждом изменении любого из членов структуры придётся пересчитывать значение length.
Варианты заданий к лабораторной работе № 9
Решение каждого варианта должно использовать структуры для передачи массивов в качестве параметров и объявления типа результата функции.
Вариант 1. Вычислить суммы отрицательных элементов в каждом столбце двумерного массива.
Вариант 2. Вычислить суммы положительных элементов в каждой строке двумерного массива.
Вариант 3. В каждом столбце двумерного массива вычислить произведения элементов массива с чётной суммой индексов.
Вариант 4. В каждой строке двумерного массива вычислить произведения элементов массива с нечётной суммой индексов.
Вариант 5. Найти максимальные элементы в каждой строке двумерного массива.
Вариант 6. Найти минимальные элементы в каждом столбце двумерного массива.
Вариант 7. Вычислить произведения элементов, расположенных между первым и последним нулевыми элементами в каждой строке
Вариант 8. Вычислить сумму элементов, принадлежащих отрезку [Min; Max], в каждом столбце двумерного массива; Min означает наименьший, а Max – наибольший элемент двумерного массива.
Вариант 9. Найти максимальные по модулю элементы в каждой строке двумерного массива.
Вариант 10. Для каждой строки двумерного массива вычислить суммы модулей элементов, расположенных после первого элемента в строке равного нулю.
Вариант 11. Удалить из каждой строки двумерного массива все элементы, величина которых находится в отрезке [a, b], а освободившиеся в концах строк элементы заполнить нулями.
Вариант 12. Расположить в начале каждого столбца двумерного массива все элементы, целая часть которых лежит в отрезке[a, b], а потом – все остальные.
Вариант 13. В каждой строке двумерного массива вычислить количество элементов, лежащих в отрезке [a, b].
Вариант 14. В каждом столбце двумерного массива вычислить количество нулевых элементов.
Вариант 15. В каждой строке двумерного массива вычислить произведение элементов, расположенных после максимального по модулю элемента.
Содержание отчета
-
цель работы;
-
задание;
-
код программы;
-
блок-схема;
-
результаты работы программы;
-
выводы по работе.
Список литературы
-
Ален И. Голуб. Правила программирования на С и С++. Пер. с англ.: – М.: Вильямс, 2001. – 241 с.
-
Павловская Т.А. С/С++. Программирование на языке высокого уровня. – СПб.: Питер, 2010.
-
Прата С. Язык программирования С++. Лекции и упражнения. СПб.: Питер, 2003. – 645 с.
Учебное издание
МАМОНОВА Татьяна Егоровна
ТИП «СТРУКТУРА» В С++
Методические указания по выполнению лабораторных работ
по курсу «Информатика» для студентов I курса, обучающихся по направлениям 220000 – «Мехатроника и робототехника»,