Главная страница
Навигация по странице:

  • РОССИЙСКОЙ ФЕДЕРАЦИИ ФГБОУ ВО «ПЕНЗЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ» Факультет вычислительной техники

  • Цель работы: Освоить использование динамической памяти при разработке программ на языке C/С++. Разработать программу на языке С/С++ (согласно варианту).Задание

  • Код программы на языке C / C ++

  • Результат работы программы: Вывод

  • Отчет по лабораторной работе 1 Динамическая память


    Скачать 223.94 Kb.
    НазваниеОтчет по лабораторной работе 1 Динамическая память
    Дата05.04.2023
    Размер223.94 Kb.
    Формат файлаdocx
    Имя файлаlab1_2.docx
    ТипОтчет
    #1040000

    МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ

    РОССИЙСКОЙ ФЕДЕРАЦИИ

    ФГБОУ ВО «ПЕНЗЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»

    Факультет вычислительной техники

    Кафедра «Высшей и прикладной математики»


    ОТЧЕТ
    по лабораторной работе №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/С++.


    написать администратору сайта