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

  • Цель работы: Приобрести практический опыт работы при использовании однотипных данных или массивов. Задание 1

  • Код программы

  • Блок-схема: Результат программы

  • одномерные массивы. Лаб одномерные массивы. Отчет по лабораторной работе 3 Одномерные массивы


    Скачать 356.57 Kb.
    НазваниеОтчет по лабораторной работе 3 Одномерные массивы
    Анкородномерные массивы
    Дата13.12.2021
    Размер356.57 Kb.
    Формат файлаdocx
    Имя файлаЛаб одномерные массивы.docx
    ТипОтчет
    #302000

    Министерство образования Республики Беларусь
    Учреждение образования

    Белорусский Государственный Университет Информатики и Радиоэлектроники

    Факультет компьютерных систем и сетей

    Кафедра электронных вычислительных средств

    Отчет

    по лабораторной работе № 3

    «Одномерные массивы»


    Выполнил:

    студентка группы 150702

    Реут Ксения





    Проверил:

    Ст. преп. каф. ЭВС

    Демидович Г. Н.




    Минск 2021

    Цель работы:

    Приобрести практический опыт работы при использовании однотипных данных или массивов.
    Задание 1 : Написать программу:
    Ввести массив вещественных чисел размером п, п вводиться с клавиатуры. Найти его наибольший и наименьший элементы и поменять их местами. Найти сумму и произведение всех элементов массива.

    Код программы:

    #include

    #include

    #include

    int main()

    {

    setlocale(LC_ALL, "Rus");

    int n, k, l = 0, r = 0;

    float* mas, sum = 0, proizv = 1, t;

    float max, min;

    printf("Введите размер массива\n");

    scanf_s("%d", &n);

    mas = (float*)malloc(n * sizeof(float));

    for (k = 0; k < n; k++)

    {

    printf("Число %d: ", k + 1);

    scanf_s("%f", &mas[k]);

    sum += mas[k];

    proizv *= mas[k];

    }

    printf("Сумма n чисел равна %f\n", sum);

    printf("Произведение n чисел равно %f\n", proizv);

    max = mas[0];

    min = mas[0];

    for (k = 0; k < n; k++)

    {

    if (max < mas[k])

    {

    max = mas[k];

    l = k;

    }

    if (min > mas[k])

    {

    min = mas[k];

    r = k;

    }

    }

    t = mas[l];

    mas[l] = mas[r];

    mas[r] = t;

    printf("Минимальный элемент массива = %f\n", min);

    printf("Максимальный элемент массива = %f\n", max);

    for (k = 0; k < n; k++)

    printf("%f\n", mas[k]);

    free(mas);

    return 0;

    }
    Блок-схема:

    Результат программы:



    Задание
    2: Написать программу в соответствии с вариантом.
    В одномерном массиве, состоящем из n вещественных элементов, вычислить: - номер максимального по модулю элемента массива;
    - сумму элементов массива, расположенных после первого положительного элемента.

    Код программы:

    #include

    #include

    #include

    #include

    int main()

    {

    setlocale(LC_ALL, "Rus");

    int n, k;

    float *mas, sum=0, neg;

    float max, max_k = 1;

    printf("Введите размер массива\n");

    scanf_s("%d", &n);

    mas = (float*)malloc(n * sizeof(float));

    for (k = 0; k < n; k++)

    {

    printf("Число %d: ", k + 1);

    scanf_s("%f", &mas[k]);

    }

    max = mas[0];

    for (k = 1; k < n; k++)

    {

    if (fabs(max) < fabs(mas[k]))

    {

    max = mas[k];

    max_k = k;

    }

    }

    printf("Номер максимального по модулю элемента : %0.3f он находится в позиции %0.3f\n", max, max_k + 1);

    neg = 1;

    for (k = 0; k < n; k++)

    {

    if (mas[k] > 0)

    {

    neg = k;

    break;

    }

    }

    if (neg == 1) printf("нет положительных\n");

    else

    {

    printf("номер I-го положительного элемента: %0.3f\n", neg + 1);

    for (k = neg + 1; k < n; k++)

    sum += mas[k];

    printf("Сумма равна %0.3f\n", sum);

    }

    free(mas);

    return 0;

    }




    Блок-схема:

    Результат программы:


    Задание 3:
    Написать программу в соответствии с вариантом.
    Даны массивы A и B, состоящие из n элементов. Постройте массив S, каждый элемент которого равен сумме соответствующих элементов массивов A и B.

    Код программы:

    #include
    #include

    int main()

    {

    const int n = 5;

    int A[n] = { 1, 2, 3, 4, 5 };

    int B[n] = { 6, 7, 8, 9, 10 };

    int S[n];

    printf("Array S:\n");

    for (int i = 0; i < n; ++i)

    {

    S[i] = A[i] + B[i];

    printf("S[%u] = %d \n", i, S[i]);

    }

    return 0;

    }

    Блок-схема:

    Результат программы:


    Вывод:


    В ходе лабораторной работы я приобрела практический опыт работы при использовании однотипных данных или массивов.


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