Отчет по лабораторной работе 1 Динамическая память
Скачать 223.94 Kb.
|
МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ ФГБОУ ВО «ПЕНЗЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ» Факультет вычислительной техники Кафедра «Высшей и прикладной математики» ОТЧЕТ по лабораторной работе №1 «Динамическая память» Дисциплина: Программирование и практикум на ЭВМ Выполнили: студенты группы 22ВБ1 Сараева А. С. Проверил: к.т.н., доцент Тарасов Д. В. Работа защищена с оценкой _______ Дата защиты _________________ Пенза 2022 Цель работы: Освоить использование динамической памяти при разработке программ на языке C/С++. Разработать программу на языке С/С++ (согласно варианту). Задание: Создать два вектора, размерность которых вводится с клавиатуры. Заполнить вектора случайными числами. Найти сумму и разность этих векторов, а также их векторное произведение (последнее нужно найти, если размерность равна трем). Результат записать на экран. Использовать функцию calloc. Код программы на языке C/C++: #include #include void print(int* M, int n) { for (int i = 0; i < n; i++) printf("%d\t", M[i]); printf("\n"); } void main() { int n; scanf_s("%d", &n); int* vec1 = NULL; int* vec2 = NULL; //Инициализация Vec1 vec1 = (int*)calloc(n, sizeof(int)); for (int i = 0; i < n; i++) { vec1[i] = rand() % 100; } //Инициализация Vec2 vec2 = (int*)calloc(n, sizeof(int)); for (int i = 0; i < n; i++) { vec2[i] = rand() % 100; } //Сумма int* vecS; vecS = (int*)calloc(n, sizeof(int)); for (int i = 0; i < n; i++) { vecS[i] = vec1[i] + vec2[i]; } //Разность int* vecR; vecR = (int*)calloc(n, sizeof(int)); for (int i = 0; i < n; i++) { vecR[i] = vec1[i] - vec2[i]; } //Произведение if (n == 3) { int vecP[3]; vecP[0] = (vec1[1] * vec2[2] - vec1[2] * vec2[1]); vecP[1] = (vec1[2] * vec2[0] - vec1[0] * vec2[2]); vecP[2] = (vec1[0] * vec2[1] - vec1[1] * vec2[0]); printf("Proizvedenie\n"); print(vecP, n); } //print(vec1, n); print(vec2, n); printf("Summa\n"); print(vecS, n); printf("Raznost\n"); print(vecR, n); free(vec1); free(vec2); free(vecS); free(vecR); } Результат работы программы: Вывод: Было освоено выделение динамической памяти при разработке программ на языке C/С++. |