85777

ПРОГРАМИ З РОЗГАЛУЖЕНИМИ ТА ЦИКЛІЧНИМИ АЛГОРИТМАМИ

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

Информатика, кибернетика и программирование

Мета роботи – вивчити оператори мови СІ та основні функції введення-виведення даних, навчитися складати та відлагоджувати розрахункові програми з розгалуженими та циклічними структурами. Завдання: Скласти блок-схеми алгоритмів та програми мовою СІ для табулювання функцій.

Украинкский

2015-03-30

51.17 KB

2 чел.

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”

Кафедра Комп’ютеризованы системи автоматики

ЗВІТ

до лабораторної роботи №2

з курсу: “Алгоритмічні мови та програмування. Частина 1”
на тему:
”ПРОГРАМИ З РОЗГАЛУЖЕНИМИ ТА ЦИКЛІЧНИМИ АЛГОРИТМАМИ ”

Варіант 3

Виконав:
студент групи СІ-11з
Мартинюк П.В.

Перевірив:

Дзелендзяк У.Ю.

Львів 2015

Мета роботи – вивчити оператори мови Сі та основні функції введення-виведення даних, навчитися складати та відлагоджувати розрахункові програми з розгалуженими та циклічними структурами.

Завдання:
Скласти блок-схеми алгоритмів та програми мовою СІ для   табулювання функцій.  Забезпечити ввід значень інтервалу, кроку і похибки табулювання з клавіатури і вивід результатів на дисплей. Дані для роботи беруться з таблиць 1 і 2 за вказівкою викладача:

а) табулювання функції (див. табл.1),  що вибирається залежно від значення аргумента, на проміжку [a, b] з кроком табуляції h.

СПИСОК ІДЕНТИФІКАТОРІВ КОНСТАНТ, ЗМІННИХ, ФУНКЦІЙ, ВИКОРИСТАНИХ У БЛОК-СХЕМАХ АЛГОРИТМІВ І ПРОГРАМАХ, ТА ЇХ ПОЯСНЕННЯ

main() - головна функція (метод);

#include  <math.h>  включення файлу math.h у вихідну програму;

printf - один з методів виведення;

tan - математичне обчислення тангенсу;

pow - математичне піднесення числа до степеню;

getch() - метод зупинки роботи програми допоки не буде нажата будь-яка клавіша

for() - циклічний оператор;

scanf_s() - зчитування з клавіатури

if() - метод перевірки;

ТЕКСТ ПРОГРАМИ (CODE):

#include <stdio.h>

#include <math.h>

int main( int argc, const char* argv[] )

{

float value;

float result;

float x;

float xMax;

float step;

float e = 2.71828182846;

printf("X = ");

scanf_s("%f", &x);

printf("xMax = ");

scanf_s("%f", &xMax);

printf("step = ");

scanf_s("%f", &step);

printf("\n");

for(; x <= xMax; x += step)

{

if(x < 0.6) {

value = x - sin(x);

result = pow(e, value);

}else if(x <=0.6 || x < 0.7) {

value = fabs(log(x));

result = tan(value);

}else {

value = pow(x,7);

result = atan(value);

}

printf("Result = %.2f \n", result);

}

getch();

return 0;

}

Результат роботи програми:
X = 0.5

xMax = 0.8

step = 0.02

Result = 1.02

Result = 1.02

Result = 1.03

Result = 1.03

Result = 1.03

Result = 1.04

Result = 0.52

Result = 0.48

Result = 0.44

Result = 0.41

Result = 0.37

Result = 0.10

Result = 0.12

Result = 0.15

Result = 0.17

Result = 0.21

б) табулювання  функції, представленої рядом (див. табл.2), на інтервалі  [a,  b] з кроком табуляції h та абсолютною  похибкою d.  Оцінку похибки здійснювати за значенням модуля чергового члена ряду.

6

tg(│ln(x)│)

arctg(

x<0.6

0.6≤x<07

x≥0.7

0.02

[0.5, 0.8]

ТЕКСТ ПРОГРАМИ (CODE):

#include <stdio.h>

#include <math.h>

int main( int argc, const char* argv[] )

{

float value1 = 0;

float value2 = 0;

float result = 0;

float sum = 0;

float x;

int xMax;

float step;

int d;

float k = 1;

printf("X = ");

scanf("%f", &x);

printf("xMax = ");

scanf("%i", &xMax);

printf("step = ");

scanf("%f", &step);

for(; x <= xMax; x+=step)

{

sum = 0;

result = 0;

for(k = 1;; k++)

{

value1 = pow(-1, k) * x / k * (k + 1);

value2 = sin(2 * k + 1);

result = value1 * value2;

if(fabs(result) <= 0.001) break;

sum += result;

}

printf("\n");

printf("X = %0.1f Sum = %.2f \n", x, sum);

}

getch();

return 0;

}

Результат роботи програми:
X = -1

xMax = 1

step = 0.5

X = -1.0 Sum = 0.66

X = -0.5 Sum = 0.33

X = 0.0 Sum = 0.00

X = 0.5 Sum = -0.33

X = 1.0 Sum = -0.66

Висновки: я  вивчив оператори мови Сі та основні функції введення-виведення даних, навчився складати та відлагоджувати розрахункові програми з розгалуженими та циклічними структурами.


 

А также другие работы, которые могут Вас заинтересовать

9699. Организационная структура страхования хозяйственных рисков 39 KB
  Организационная структура страхования хозяйственных рисков В страховании рисков как способе борьбы с неблагоприятными событиями или складывающимися обстоятельствами реализуются определенные экономические отношения, включающие следующие элементы...
9700. Необходимость и основные задачи актуарных расчетов 38 KB
  Необходимость и основные задачи актуарных расчетов. При заключении договора страхования хозяйственных рисков стоимость услуг, оказываемых страховщиком страхователю, устанавливается на основе всесторонней оценки объективных и субъективных..
9701. Виды страхового покрытия риска 64.5 KB
  Виды страхового покрытия риска Страхование хозяйственных рисков является эффективным механизмом покрытия ущерба субъекта экономической деятельности только в том случае, когда покрытие, обеспеченное страховым договором, соответствует нуждам...
9702. Сдерживающие факторы при страховании хозяйственных рисков 32 KB
  Сдерживающие факторы при страховании хозяйственных рисков. Построенные на общности интересов участников договоры страхования рисков в хозяйственной практике не имеют широкого распространения, поскольку их заключение и выполнение сдерживается во мн...
9703. Удержание риска возможных потерь на предприятии 31 KB
  Удержание риска возможных потерь на предприятии Самострахование рисков субъектов хозяйствования осуществляется с целью поддержания уровня их деловой активности и эффективности, которые организационно-правовая структура планирует сохранить после проя...
9704. Способы резервирования средств для покрытия возможных убытков 36 KB
  Способы резервирования средств для покрытия возможных убытков Программа самострахования рисков предусматривает один или несколько из альтернативных методов покрытия возможных убытков. Стремление субъекта хозяйствования сократить риски практически вс...
9705. Оптимальные уровни удержания для самострахования риска 31.5 KB
  Оптимальные уровни удержания для самострахования риска Удержание для покрытия потерь при негативном проявлении рискованных ситуаций - это использование средств предприятия для финансирования случайных убытков. Уровень удержания формируется с уч...
9706. Передача риска без страхования через договорные соглашения 30 KB
  Передача риска без страхования через договорные соглашения Одним из методов преодоления риска является частичная или полная передача возможных потерь кому-то другому через включение в договоры, контракты, соглашения статей и оговорок о компенсации п...
9707. Национальные страховые рынки 31.5 KB
  Национальные страховые рынки Транснациональным корпорациям, компаниям, фирмам, некоммерческим организациям, государственным органам и отдельным лицам приходится защищать результаты своей деятельности или получать дополнительные доходы или другие выг...