Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

лабки / 310-і-БОЙКО_20

.docx
Скачиваний:
1
Добавлен:
27.01.2024
Размер:
602.18 Кб
Скачать

Виконав Бойко Є.А.

Група 310

Варіант 3

Лабораторна робота 20

СЕРІАЛІЗАЦІЯ СТАНДАРТНИХ ОБ’ЄКТІВ ПІД ЧАС РОБОТИ З ФАЙЛАМИ

Постановка завдання

Створити однодокументну Windows-програму на C++ ISO/ANSI із

використанням бібліотеки MFC. Передбачити запуск із меню Файл діалогового режиму, читання з діалогового вікна вхідних даних для табуляції функції, запуск процесу табуляції, виведення результатів у вікно списку, а також у файл при виборі пункту меню Файл/Сохранить або Файл /Сохранить как... і подальше прочитання з диска Файл /Открыть.

Код

void Dlg::OnBnClickedButton1()

{

CString s1;

double x,xn,dx,xk,y;

medit1.GetWindowTextA(s1);

xn=atof(s1);

medit2.GetWindowTextA(s1);

dx=atof(s1);

medit3.GetWindowTextA(s1);

xk=atof(s1);

s1.Format("Результати:");

for(x=xn;x<=xk;x+=dx){

if(x>0){

y=log(x);

s1.Format(" x=%lf y=%lf",x,y);

mlist1.AddString(s1);

}

else

{

s1.Format("Немає результату при x=%lf",x);

mlist1.AddString(s1);}

str+=s1;}}

void Cser_dia_tabulView::OnFileShowdialog(){

Dlg dlg1;

int rezult=(int)dlg1.DoModal();

if(rezult==IDOK){

Cser_dia_tabulDoc*pDoc=GetDocument();

ASSERT_VALID(pDoc);

if(!pDoc)

return;

pDoc->m_stroka=dlg1.str;

Invalidate();}}

void Cser_dia_tabulView::OnDraw(CDC*/*pDC*/){

Cser_dia_tabulDoc* pDoc = GetDocument();

ASSERT_VALID(pDoc);

if (!pDoc)

return;}

Void Cser_dia_tabulView::OnDraw(CDC*pDC/*pDC*/){

Cser_dia_tabulDoc* pDoc = GetDocument();

ASSERT_VALID(pDoc);

if (!pDoc)

return;

pDC->TextOutA(0,0,pDoc->m_stroka);}

void Cser_dia_tabulDoc::Serialize(CArchive&ar){

if (ar.IsStoring()){

ar<<m_stroka; }

else{

ar>>m_stroka;}}

BOOL Cser_dia_tabulDoc::OnNewDocument(){

if (!CDocument::OnNewDocument())

return FALSE;

m_stroka="";

UpdateAllViews(NULL);

return TRUE;}

Блок-схеми:

Скріншот программи:

Висновки: на лабораторній я закріпив свої навички з дисципліни ООП, та покращив свої вміння в цій сфері роботи.

Соседние файлы в папке лабки