You are on page 1of 9

Міністерство освіти і науки України

Тернопільський національний технічний університет ім. І. Пулюя

Кафедра інформатики і математичного моделювання

ЗВІТ
про виконання лабораторної роботи №11
з дисципліни «Програмування»
на тему: «Робота з текстовими файлами»

Виконала:
Студентка групи СН-12
Назар Р.В.
Прийняв:
Хоміцький Б. В.

Тернопіль 2023
Тема: Робота з текстовими файлами.
Мета роботи: Оволодіти практичними навичками розробки та програмування
обчислювального процесу з організацією збереження результатів у текстових
файлах. Засвоїти застосування стандартних функцій роботи з файлами.

Варіант №7
Завдання
Модифікувати раніше створені програми лабораторних робіт №5 (передбачити
вивід результатів на екран та в текстовий файл, який згодом переглянути,
наприклад, програмою Блокнот) та №9 (передбачити ввід елементів
двохвимірного масиву із попередньо створеного текстового файлу і вивід її на
екран)
Програма 1
Завдання 1
Скласти три схеми алгоритму та три програми на C++ обчислення значення
функції на проміжку від xp до xk з кроком h, застосовуючи команду циклу з
передумовою, команду циклу з післяумовою та команду циклу з визначеною
кількістю повторень for. Вивід результатів передбачити в виді таблиці з
заголовками колонок "аргумент", "функція".

№ функція a b xp xk h
п/п
7 0.43 0.88 2 8 0.5
Код програми
//Лабораторна робота №11 Назар Роксолана СН-12
#include <fstream>
#include <math.h>
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
ofstream F_for_vyv("D:\\lab11\\rez.txt");
double x, y, a, h, b, xk, xp;

cout << "a= "; cin >> a;


cout << "b= "; cin >> b;
cout << "xp= "; cin >> xp;
cout << "xk= "; cin >> xk;
cout << "h= "; cin >> h;

x = xp;
cout << "Argument" << "\t" << "Function" << endl;
cout << setiosflags(ios::scientific);
while (x <= xk + h / 2)
{
y = exp(x) * (log10(pow(x, 2) + b)) * asin(b) /
tan(3 * x) + pow(x * a, 1. / 3);

cout << x << "\t" << "\t" << y << endl;


F_for_vyv << x << "\t" << "\t" << y << endl;
x += h;
}
F_for_vyv.close();
return 0;
}

Результат
Програма 2
Завдання 2
Скласти схему алгоритму та програму на С++ обчислення значення змінної F з
використанням функцій користувача обчислення елементів масиву xi (таблиця
1). Вхідні дані з таблиці 3 вибирати згідно даних варіанту, що заданий в таблиці
2. Дані ввести з клавіатури чи через опис типізованих констант. Вивід
результатів передбачити на екран
Таблиця 1

Таблиця 2
Кількість рядків n Кількість Початковий Початковий
cтовпців m номер рядка номер стовпця
3 8 1 2
Таблиця 3

Код програми

// Лабораторна робота №11 варіант 7 група СН-12 Назар


Р.В.
#include <fstream>
#include <iostream>
#include <math.h>
using namespace std;
const float a = 0.98, c = 1.1;
const int n = 3, m = 8;
void fx(double b[n][m], double* x)
{
int i, j;
for (i = 0; i < n; i++)
{
*(x + i) = 0;
for (j = 0; j < m; j++)
*(x + i) += (sqrt(b[i][j]) + c * b[i][j]) +
a;
}
}

double ff(double b[n][m])


{
double x[n], ch = 0, f;
int i;
fx(b, x);
for (i = 0; i < n; i++)
{
ch += pow(x[i], 2) + a * x[i];

}
f = ch;
return f;
}

int main()
{
ifstream F_for_vv("D:\\Lab11\\dani.txt");
double b[n][m];
int i, j;
for (i = 0; i < n; i++)
for (j = 0; j < m; j++)
F_for_vv >> b[i][j];
for (i = 0; i < n; i++)
{
for (j = 0; j < m; j++)
cout << b[i][j] << " ";
cout << endl;
}

cout << "F=" << ff(b) << endl;


F_for_vv.close();
return 0;
}

Результат
Висновок: Я оволоділа практичними навичками розробки та програмування
обчислювального процесу з організацією збереження результатів у текстових
файлах. Засвоїла застосування стандартних функцій роботи з файлами.

You might also like