85777

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

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

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

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

Украинкский

2015-03-30

51.17 KB

1 чел.

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

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

ЗВІТ

до лабораторної роботи №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

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


 

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

13280. Исследование трехфазного двухобмоточного трансформатора 625.5 KB
  Лабораторная работа Т1. Исследование трехфазного двухобмоточного трансформатора. Цель работы: ознакомление с конструкцией и принципом работы трехфазного двухобмоточного трансформатора а также определение параметров его схемы замещения в симметричных режимах при
13281. Побудова комбінаційних схем та побудова часових діаграм 3.84 MB
  У даній курсовій роботі буде даний один із логічних виразів, який буде розв’язуватися, як і в ручну так і за допомогою пакетів прикладних програм (ППП). А саме ППП Proteus та ППП ORCAD...
13282. Теорії міжнародної торгівлі 37.71 KB
  Оскільки, історично міжнародна торгівля передувала іншим формами міжнародних економічних відносин, першими зявилися теоретичні розробки (концепції), що стосувалися саме проблем міжнародної торгівлі і намагалися відповісти на практичні запитання
13283. ДЕФОРМАЦИИ РАСТЯЖЕНИЯ И ИЗГИБА 717 KB
  ДЕФОРМАЦИИ РАСТЯЖЕНИЯ И ИЗГИБА Задание. Определить модуль Юнга стальной проволоки с предельной относительной погрешностью не превышающей. Задание. Определить модуль Юнга дерева с предельной относительной погрешностью не превышающей...
13284. Классификация затрат на производство и реализацию продукции 67.5 KB
  Деление затрат по функциям деятельности позволяет в планировании и учете определять величину затрат в разрезе подразделений каждой сферы, что является одним из важных условий организации внутрихозяйственного расчета.
13285. Навыки работы с программным пакетом Electronics Workbench (EWB) для виртуального моделирования физических измерительных процессов 89.5 KB
  Лабораторная работа №1 Навыки работы с программным пакетом Electronics Workbench EWB для виртуального моделирования физических измерительных процессов. Цель исследования: Получить начальное представление о базовых возможностях программного пакета EWB необходимых для мод...
13286. Изучение вольтамперных характеристик биполярного транзистора в среде Electronics Workbench 380.5 KB
  Лабораторная работа №2 Изучение вольтамперных характеристик биполярного транзистора в среде Electronics Workbench Цель исследования: Моделирование работы биполярного транзистора в среде Electronics Workbench и виртуальные измерения его входной и выходной вольтамперных характер
13287. Виртуальные измерения магнитной индукции на основе эффекта Холла в среде Electronics Workbench 333.5 KB
  Лабораторная работа №3 Виртуальные измерения магнитной индукции на основе эффекта Холла в среде Electronics Workbench Цель исследования: Моделирование работы датчика Холла в среде Electronics Workbench и виртуальные измерения с его помощью магнитной индукции. Задание на...
13288. Моделирование работы пироэлектрического датчика в среде Electronics Workbench 367 KB
  Лабораторная работа №4 Моделирование работы пироэлектрического датчика в среде Electronics Workbench Цель исследования: Моделирование работы пироэлектрического датчика в среде Electronics Workbench и виртуальные измерения внешнего теплового потока заданного периодической пос