Приклад
У текстовому файлі розмістити дані про радіуси 12 кіл. За допомогою формул обрахувати довжину та площі кіл. У новий файл записати такі дані: радіус, довжина та площа кола.
Розв’язання.
Таблиця символічних імен
Математичне ім’я | Ім’я у програмі | Смислове значення | Змінна | |
Тип | Значення | |||
RadIn | RadIn | Файл для читання даних | ifstream | Файлові дані |
NewFile | NewFile | Файл для введення результата | ofstream | Результат |
i | i | Параметр циклу | int | Змінне значення |
r | r | Радіус | double | Занесене у файл |
l | l | Довжина | double | Результат |
s | s | Площа | double | Результат |
n | n | Порядковий номер кола | double | Результат |
Текст програми мовою С++
для компіляторів Visual C++
# include <iostream.h>
# include <ostream.h>
# include <fstream.h>
# include <iomanip.h>
void main()
{
double r,l,s,n;
fstream Radin("radius.txt",ios::out); // складаємо
// файл для запису "radius.txt"
if (!Radin) // перевірка чи вдалося скласти файл
{ cout <<"Error file Radin"<<endl;
exit(1);
}
for (int i= 0; i<4; i++)
{
cout<<"Vvedite radius"<<i+1<<" kruga";
cin>>r; // Уведення даних про радіуси
Radin<<i+1<<" "<<r<<endl; // переписуємо дані у файл "radius.txt"
}
Radin.close; // закриваємо файл "radius.txt"
ifstream Radout("radius.txt",ios::in); // відкриваємо
// файл для читання з "radius.txt"
if (!Radout) // перевірка чи вдалося відкрити файл
{ cout <<"Error file Radout"<<endl;
exit(1);
}
fstream NewFile ("newfile.txt",ios::out); // складаємо
// файл для запису "newfile.txt "
if (!NewFile) // перевірка чи вдалося скласти файл
{ cout <<"Error file NewFile"<<endl;
exit(1);
}
cout<<"Nomer\tRadius\tDlina\tPloshad"<<endl;
for(i=0;i<4;i++)
{
Radout>>n>>r; // зчитуємо дані з файлу "radius.txt"
l=2*3.14*r; // підраховуємо довжину кола
s=3.14*r*r; // підраховуємо площу кола
// вивід даних на екран:
cout<<setiosflags(ios::fixed|ios::showpoint)<<
setprecision(2)<<n<<'\t'<<r<<'\t'<<l<<'\t'<<s<<endl;
// запис даних у файл "newfile.txt ":
NewFile<<setiosflags(ios::fixed|ios::showpoint)<< setprecision(2)<<n<<'\t'<<r<<'\t'<<l<<'\t'<<s<<endl;
}
Radout.close; // закриваємо файл "radius.txt"
NewFile.close; // закриваємо файл "newfile.txt "
}
5. Варіанти завдань
Кожен студент вибирає варіант завдання за номером у списку групи.
Завдання. Скласти схему алгоритму, таблицю символічних імен і програму для обробки текстового файла відповідно до заданого варіанта.
1. У текстовому файлі - дані про довжини сторін 20 прямокутних паралелепіпедів. Обчислити об’єми цих паралелепіпедів. Результати розрахунку записати у файл як таблицю, що містить стовпці: довжину першої, другої та третьої сторін паралелепіпеда, об’єм паралелепіпеда. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора.
2. У текстовому файлі - дані про довжини сторін 15 прямокутників. Обчислити периметри і площі цих прямокутників. Результати розрахунку записати у файл як таблицю, що містить стовпці: довжину першої та другої сторін прямокутника, периметр та площу прямокутника. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора.
3. У текстовому файлі - дані про радіуси 12 кіл. Обчислити довжину кіл і площу кругів, обмежених цими колами. Результати розрахунку записати у файл як таблицю, що містить стовпці: радіус і довжину кола, площу круга. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора. Указівка: ,
.
4. У текстовому файлі - дані про радіуси основ і висоти 12 циліндрів. Обчислити об’єм і площу бічної поверхні цих циліндрів. Результати розрахунку записати у файл як таблицю, що містить стовпці: радіус основи, висоту, об’єм та площу бічної поверхні циліндра. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора. Указівка: ,
.
5. У текстовому файлі - дані про радіуси основ і висоти 15 конусів. Обчислити об’єм і площу бічної поверхні цих конусів. Результати розрахунку записати у файл як таблицю, що містить стовпці: радіус основи, висоту, об’єм та площу бічної поверхні конуса. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора. Указівка: ,
.
6. У текстовому файлі - дані про катети 18 прямокутних трикутників. Обчислити гіпотенузи і площі цих трикутників. Результати розрахунку записати у файл як таблицю, що містить стовпці: перший та другий катети трикутника, а також гіпотенузу та площу трикутника. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора.
7. У текстовому файлі - дані про довжини трьох сторін 14 трикутників. Обчислити площі і периметри цих трикутників. Результати розрахунку записати у файл як таблицю, що містить стовпці: довжину, другої та третьої сторін трикутника, площу та периметр трикутника. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора.
8. У текстовому файлі - дані про довжини основ і висоти 19 трапецій. Обчислити площі цих трапецій. Результати розрахунку записати у файл як таблицю, що містить стовпці: довжину нижньої та верхньої основи трапеції, висоту та площу трапеції. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора.
9. У текстовому файлі - дані про довжини сторін 15 рівносторонніх трикутників. Обчислити площі і периметри цих трикутників. Результати розрахунку записати у файл як таблицю, що містить стовпці: довжину сторони, периметр та площу трикутника. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора.
10. У текстовому файлі - дані про кількість сторін, довжини сторін і радіуси вписаних кіл для 14 правильних багатокутників. Обчислити площі і периметри цих багатокутників. Результати розрахунку записати у файл як таблицю, що містить стовпці: кількість сторін, довжину сторони, периметр та площу багатокутника, а також радіус вписаного у багатокутник кола. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора. Указівка: .
11. У текстовому файлі - дані про довжини сторін і кути між ними для 18 паралелограмів. Обчислити площі і периметри цих паралелограмів. Результати розрахунку записати у файл як таблицю, що містить стовпці: довжину першої та другої сторін паралелограма, кут між сторонами, периметр та площу паралелограма. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора.
12. У текстовому файлі - дані про довжини сторін і кутів між ними для 18 паралелограмів. Вибрати паралелограми, що є прямокутниками, і записати у файл таблицю, що містить таку інформацію: довжину першої та другої сторін прямокутника, периметр та площу прямокутника. Записати відповідні заголовки для стовців. Файл із вихідними даними сформувати за допомогою текстового редактора.
13. У текстовому файлі - дані про кількість сторін, довжини сторін і радіуси вписаних кіл для 14 правильних багагокутників. Вибрати багатокутники з парною кількістю сторін і записати у файл таблицю, що містить таку інформацію: кількість сторін багатокутника, довжину його сторони, радіус вписаного в нього кола, периметр та площу багатокутника. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за
допомогою текстового редактора. Указівка: .
14. У текстовому файлі - дані про довжини сторін 15 рівносторонніх трикутників. Вибрати трикутники зі стороною, більшою одиниці і меншою трьох, і записати у файл таблицю, що містить таку інформацію: довжину сторони трикутника, периметр та площу трикутника. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора.
15. У текстовому файлі - дані про довжини основ і висоти 19 трапецій. Вибрати трапеції з висотою, меншою верхньої основи, і записати у файл таблицю, що містить таку інформацію: довжину нижньої та верхньої основ трапеції, висоту та площу трапеції. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора.
16. У текстовому файлі - дані про довжини трьох сторін 14 трикутників. Вибрати рівносторонні трикутники і записати у файл таблицю, що містить таку інформацію: довжину сторони трикутника, площу та периметр трикутника. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора.
17. У текстовому файлі - дані про катети 18 прямокутних трикутників. Вибрати рівнобічні трикутники і записати у файл таблицю, що містить таку інформацію: катет, гіпотенузу, та площу трикутника. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора.
18. У текстовому файлі - дані про радіуси основ і висоти 15 конусів. Вибрати конуси, радіус основи яких більше висоти, і записати у файл таблицю, що містить таку інформацію: радіус основи, висоту, об’єм конуса та площу його бічної поверхні. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора. Указівка: ,
.
19. У текстовому файлі - дані про радіуси основ і висоти 12 циліндрів. Вибрати циліндри, радіус основи яких дорівнє висоті, та записати у файл таблицю, що містить таку інформацію: радіус основи, висоту, об’єм циліндра та площу його бічної поверхні. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора. Указівка: ,
.
20. У текстовому файлі - дані про радіуси 12 кіл. Вибрати кола, довжина яких більше семи, але менше 10, і записати у файл таблицю, що містить таку інформацію: радіус і довжину кола та площу круга. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора. Указівка: ,
. У текстовому файлі - дані про довжини сторін 15 прямокутників. Вибрати прямокутники, що є квадратами, і записати у файл таблицю, що містить таку інформацію: довжину сторони, периметр та площу квадрата. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора.
21. У текстовому файлі - дані про довжини сторін 20 прямокутних паралелепіпедів. Вибрати паралелепіпеди, що є кубами, і записати у файл таблицю, що містить таку інформацію: довжину сторони та об’єм куба. Записати відповідні заголовки для стовпців. Файл із вихідними даними сформувати за допомогою текстового редактора.
22. У текстовий файл записані масиви А(2х2), B(2х2), С(3х3) і D(3х3). Обчислити ,
де det – визначник ;
Tr – слід матриці (Tr(A) = ).
Обчислення визначника і сліду матриці оформити за допомогою функцій.
23. У текстовий файл записані матриці А(5х3), B(2х6) ,С(4х4) і D(3х5). Дописати в цей файл кількість додатних і від’ємних елементів масивів. Для виведення масивів та обчислення кількості зазначених елементів застосувати функції.
24. У текстовий файл записані матриці А(4х4), В(3х3) і С(5х5). Додати до діагональних елементів кожної з них значення мінімального за модулем ненульового елемента масиву. Отримані в такий спосіб матриці вивести в інший текстовий файл. Для введення, виведення і додавання до діагональних елементів числа застосувати функції, а також використати функцію при визначенні зазначеного мінімального елемента.
______________________________________________________________________________