Файл: Организация функций.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 08.11.2023

Просмотров: 32

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

ФЕДЕРАЛЬНОЕ АГЕНТСТВО СВЯЗИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»

(СПбГУТ)

ФАКУЛЬТЕТ ИНФОКОММУНИКАЦИОННЫХ СЕТЕЙ И СИСТЕМ (ИКСС)

КАФЕДРА ПРОГРАММНОЙ ИНЖЕНЕРИИ И ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ (ПИ И ВТ)


Дисциплина: «Программирование»

Лабораторная работа №6.

Тема: «Организация функций»

Выполнил: Студент группы ИКПИ-23

Павлечко Н.Г.

Подпись ______________
Принял: доцент кафедры ПИиВТ

Футахи Абдо Ахмед Хасан
Подпись ______________

2022г
А. Постановка задачи
Вычислить значение величины, содержащей несколько однотипных сумм. Для вычисления сумм написать функцию пользователя.




Б. Разработка алгоритма
В настоящей лабораторной работе необходимо вычислить значение величины, в расчетную формулу которой входит несколько “похожих” сумм. В таком случае целесообразно организовать функцию пользователя для вычисления этих сумм.

При разработке функции пользователя можно поступить следующим образом. Вначале на основе анализа отдельных сумм напишем общее выражение для вычисления суммы, модификация которого позволит определить значения каждой исходной суммы. Это оказывается возможным при введении некоторого количества параметров.

В. Описание программы







Г. Результаты работы программы


рис 1. Результаты работы программы

E. Программа на языке Си­­

#include

#include

#include
int summa(int n1, int n2, int a2, int a1, int a0){

    int s = 0,i=0;

    for(i = n1; i<=n2; i++){

        s = s + a2 * (i*i) + a1 * i  + a0;

        return s;

    }

}

int main(void){

    setlocale(LC_ALL, "RUS");
    int n,m;

    float y = 0;
    printf("Введите  n=");

    scanf("%d", &n);

    printf("Введите  m=");

    scanf("%d", &m);
    y =(float) (5 + 3*summa(3, n, 2, 0, 1)) / ((1 + summa(2, m, 1, 1, 2)) +(4 * summa(3, n, 0, 5, 3)));

    printf("y=%f", y);

    getchar();

    return 0;

}


Ж. Выводы

В результате проведенной работы получены следующие результаты:


  1. Мы научились пользоваться функциями;

  2. И хорошо провели время)


Таблица вычислений

Назначение набора данных

Набор данных

Результаты ручных вычислений

Результаты машинных вычислений

n

m

y

y

Контрольный набор

10

10

0,765432

0,765432

Рабочий набор

2

2

0,666667

0,666667