Информатика_1 / лабораторная 5 информатика / laba5
.pdfФедеральное государственное автономное образовательное учреждение высшего профессионального образования
«СИБИРСКИЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ»
«Институт Инженерной Физики и Радиоэлектроники»
Кафедра «Радиотехника»
Отчет по лабораторной работе №5 «Программирование с использованием функций. Работа с файлами.»
Вариант №7
Преподаватель |
|
|
_______________ Валиханов М.М. |
Студент |
РФ12-32Б |
051204646 |
_______________ Смирнов Л.С. |
Красноярск 2014
Задание
Вариант 7
1.Переписать программу Лабораторной работы №2 «Табулирование значений функций» с использованием пользовательской функции C++. Таблицу значений функции Y вывести не на экран монитора, а в текстовый файл «out.txt».
2.Написать программу для чтения данных из файла «out.txt» и вывода их на экран монитора. Предусмотреть проверку наличия файла.
2
Алгоритм решения задачи
На рис. 1 представлена блок-схема работы программы с выводом значений Y в текстовый файл «out.txt»
Начало
t=1;
n=1;
Min=5; Max=-5;
|
t<=10 |
|
|
|
да |
|
|
Y |
1 0.36sin 2 x |
|
|
x ln t 2 |
|
|
|
нет |
|
|
|
|
y>max |
да |
Max=y |
|
нет |
|
|
|
y<min |
да |
Min=y |
|
|
|
Выводит строку с |
Вывод результата |
|
|
«Number», «х», «у» и |
на экран |
|
нет |
перебрасывает каретку |
|
|
|
на новую строку, «у» |
|
|
|
выводиться в файл |
|
конец |
|
|
Рисунок 1 – Алгоритм работы программы 1.
3
На рис. 2 представлена блок-схема работы программы чтения данных из файла «out.txt» и вывода их на экран монитора
Начало
X[N]
нет |
Fp==NULL |
|
да |
X!=0 |
|
|
mistake |
да |
|
Вывод X На экран |
|
нет |
Конец |
Рисунок 2 – Алгоритм работы программы 2.
4
Текст программы 1
#include "stdlib.h" #include "stdio.h" #include "math.h"
#include "conio.h" void main()
{
FILE *fp; fp=fopen("C:\\out.txt","wb"); double t,n,x,y,min,max;
int a; a=4; t=1; n=1; min=5; max=-5;
for (t=1; t<=10; t+=n)
{
x=log(pow(t,2)); y=sqrt(1-0.36*(pow(sin(x),2))); if (y>max) max=y;
if (y<min) min=y; printf("Number: %.0f\t",t); printf("X:= %f\t",x); fprintf(fp,"Y:= %f\n",y);
}
printf("\nmin=%f\n",min); printf("max=%f",max); fclose(fp);
getch();
}
Результаты работы программы 1
Рисунок 3 – Результаты работы программы 1.
5
Текст программы 2
#include <stdio.h> #include <string.h> #include <stdlib.h> #include <conio.h> #include <math.h> #define N 100
void main()
{
char x[N]; FILE *fp;
fp=fopen("C:\\out.txt ","rb"); if (fp==NULL) printf("mistake"); else
{
while (fgets(x,N,fp)!=NULL) printf("%s",x);
}
fclose(fp);
getch();
}
Результаты работы программы 2
Рисунок 4 – Результаты работы программы 2.
6
Вывод
В результате проведенной данной работы знакомимся с пользовательской функцией, а также получаем навыки создания и работы с файлами.
7