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

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ

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

«ОМСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»

Кафедра «Информатика и вычислительная техника»

ОТЧЕТ 

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

«ПРОГРАММИРОВАНИЕ ЦИКЛИЧЕСКИХ АЛГОРИТМОВ С ПРЕДУСЛОВИЕМ»

Выполнил: 

студент группы ИВТ-234 Кукушкина А.А.

______________________________________

(дата, подпись)

Проверил:

ст. пр. доцент Дорошенко М.С.

_____________________________________________________

(дата, подпись)

Омск 2023

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

Тема: Программирование циклических алгоритмов с предусловием

Вариант 9

Задание 1

Условие задачи:

Начертите структурную схему алгоритма, напишите и отладьте про­грамму для табуляции следующих функций:

-a ex-3a, если 0 < x<= 3, a = 1; 1.5,

Z= -a(1+ln(x-3a)), если 3 < x <= 4, шаг dx=a/2.

Схема алгоритма:

Текст программы:

#include <stdio.h>

#include <conio.h>

#include <math.h>

int main()

{

float a, x, dx, z;

a = 1;

while (a <= 1.51)

{

x = 0;

dx = a / 2;

while (x <= 4.1)

{

if (0 <= x && x <= 3)

z = -a * exp(x - 3 * a);

else z = -a * (1 + log(x - 3 * a));

printf("a = %f, x = %f, z = %f\n", a, x, z);

x = x + dx;

}

a = a + 0.5;

}

_getch ();

return 0;

}

Результаты выполнения программы, выводы:

После выполнения программы на экран вывелись вычисленные значения z при соответствующих им значениях a и x.

Задание 2

Условие задачи:

Начертите структурную схему алгоритма, напишите и отладьте про­грамму для табуляции следующих функций:

-a ex-3a, если 0 < x<= 3, a = 1; 1.5,

Z= -a(1+ln(x-3a)), если 3 < x <= 4, шаг dx=a/2.

С хема алгоритма:

Текст программы:

#include <stdio.h>

#include <conio.h>

#include <math.h>

int main()

{

float a, x, dx, z;

for (a = 1; a <= 1.51; a += 0.5)

{

dx = a / 2;

for (x = 0; x <= 4.1; x += dx)

{

if (0 <= x && x <= 3)

z = -a * exp(x - 3 * a);

else z = -a * (1 + log(x - 3 * a));

printf("a = %f, x = %f, z = %f\n", a, x, z);

}

}

_getch ();

return 0;

}

Результаты выполнения программы, выводы:

После выполнения программы на экран вывелись вычисленные значения z при соответствующих им значениях a и x.

Задание 3

Условие задачи:

Модифицировать (изменить) программу 3_2 для вычисления функций F1(x) и F2(x) с применением вместо счетного цикла оператора цикла с предусловием. Выполнить ее и сравнить результаты с полученными в пре­дыдущей работе.

Схема алгоритма:

Текст программы:

#include <stdio.h>

#include <conio.h>

#include <math.h>

#define a 1.0

#define b 3.0

#define n 15.0

int main()

{

int i;

float x, F1, F2, s;

x = a;

s = fabs(b - a) / (n - 1);

printf(" ______________________________________\n");

printf("| i | x | F1 | F2 | \n");

i = 1;

while (x <= b+s/2)

{

F1 = sqrt(exp(x) - 1);

F2 = x * pow(log(x), 2);

printf(" ______________________________________ \n");

printf("| %3d | %f | %f | %f |\n", i, x, F1, F2);

x += s;

i += 1;

}

printf(" ______________________________________ \n");

_getch();

return 0;

}

Результаты выполнения программы, выводы:

После выполнения программы выводятся результаты, полностью совпадающие с результатами выполнения программы 3_2.

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