Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
0
Добавлен:
30.10.2024
Размер:
115.09 Кб
Скачать

Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования «Московский технический университет связи и информатики»

Центр заочного обучения по программам бакалавриата

Кафедра «Математической кибернетики и информационных технологий»

Дисциплина: Технологии программирования

Лабораторная работа №1

Программирование циклических вычислительных процессов

Выполнил: Иванов И.И., студент группы БСТ17XX Вариант №7

Проверил: Клешнин Н.Г.

Москва, 2021

Введение

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

Задание

Для функции составить программу построения таблицы значений функции при изменении аргумента от A = −5 до B = 5 с шагом H = 0,1. Значения A, B и H объявить, как константы в директивах #define. В каждой строке выводить значение аргумента и соответствующее ему значение функции в форматированном виде с 4 знаками после запятой. Кроме того, в конце таблицы нужно напечатать отдельной строкой значение, которое требуется вычислить в соответствии с индивидуальным вариантом.

Вариант задания

Уровень C

Для решения следующих заданий разрешается использовать цикл только один раз.

C7. Максимальное среди значений функции, имеющих дробную часть

больше 0,4, и количество таких максимальных значений.

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

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace lab1

{

class Program

{

static void Main(string[] args)

{

const double A = -5;

const double B = 5;

const double H = 0.1;

Func(A, B, H);

Console.ReadKey();

}

static void Func(double A, double B, double H)

{

double mem = 0;

int count = 0;

for (double x = A; x <= B; x += H)

{

double f = x * Math.Exp(x) + 2 * Math.Sin(x) - Math.Sqrt(Math.Abs(Math.Pow(x, 3) - Math.Pow(x,2)));

Console.WriteLine($"x = {Math.Round(x,4)} \t f = {Math.Round(f,4)}");

if ((f - (int)f) > 0.4)

{

if (f > mem)

mem = f;

count++;

}

}

if (count > 0)

Console.WriteLine($"Количество значений функции с дробной частью больше 0.4: {count}, Наибольшее значение: {Math.Round(mem, 4)}");

else

Console.WriteLine("Не найдено значений функции с дробной частью больше 0.4");

}

}

}

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

Заключение

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

Соседние файлы в папке Лабораторные работы