СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Графический интерфейс с использованием списков, комбинированных полей. Решение задач, использующих изучаемые элементы графического интерфейса, массивы и структуры данных.

Категория: Информатика

Нажмите, чтобы узнать подробности

Графический интерфейс с использованием списков, комбинированных полей. Решение задач, использующих изучаемые элементы графического интерфейса, массивы и структуры данных.

Просмотр содержимого документа
«Графический интерфейс с использованием списков, комбинированных полей. Решение задач, использующих изучаемые элементы графического интерфейса, массивы и структуры данных.»


«БЕЛГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ»

(НИУ «БелГУ»)



Институт инженерных технологий и естественных наук



Кафедра прикладной информатики и информационных технологий




Отчет по лабораторной работе №4

Тема работы: Графический интерфейс с использованием списков, комбинированных полей. Решение задач, использующих изучаемые элементы графического интерфейса, массивы и структуры данных.






студента очного отделения

3 курса 07001504 группы

Марко С. Тангуила


Проверил:

Старший преподаватель

Зайцева Наталья Олеговна













БЕЛГОРОД, 2018

Цель работы

Научиться пользоваться списками и комбинированными полями, а также использовать структуры и массивы языка VC++. Получить практические навыки по использованию различных элементов графического интерфейса и операторов языка VC++.


Создание MFC приложения


В гараже имеется 4 различных автомобиля (ВАЗ, Газель, ГАЗ-66, Мерседес), каждый автомобиль имеет свой расход топлива на 100 км пути, а также свою стоимость топлива.

На рисунке 1 предоставлен результат создания MFC приложения с помощью Microsoft Visual Studio.



Рисунок 1 – MFC диалоговое приложение.


На рисунках 2-5 предоставлены результаты работы кнопок.


Рисунок 2 – Добавление записей.


Рисунок 3 – Удаление записей.



Рисунок 4 – Параметры для всех.


Рисунок 5 – Оптимальный вариант.



struct Garage

{

float Litres;

float Price;

float Way;

int Tonnage;

int Weight;

};

Garage car[10];

float Result1;

int NumCars;


BOOL Claba41Dlg::OnInitDialog()

{

CDialogEx::OnInitDialog();


Garage.AddString(L"ВАЗ");

Garage.AddString(L"Газель");

Garage.AddString(L"ГАЗ-66");

Garage.AddString(L"Мерседес");



NumCars = 4;

Garage.SetCurSel(0);

Result.SetCurSel(0);

Lit = car[0].Litres;

Price = car[0].Price;

ras = car[0].Way;

gruz= car[0].Tonnage;

ves_gruz = car[0].Weight;

kol = 2;

UpdateData(0);

Result1 = (ras / 100)*Lit*Price*kol;

CString s;

s.Format(L"%0.2f",Result1);

Result.AddString(s);

Result.AddString(L"?");

Result.AddString(L"?");

Result.AddString(L"?");


void Claba41Dlg::OnLbnSelchangeList2()

{

int x = Garage.GetCurSel();

Lit = car[x].Litres;

Price = car[x].Price;

ras = car[x].Way;

gruz = car[x].Tonnage;

ves_gruz = car[x].Weight;

float z;

if (gruz 0)

{

kol = int(ves_gruz / gruz);

z = float(ves_gruz) / float(gruz);

if (kol

}

else kol = 1;

Result1 = (ras / 100)*Lit*Price*kol;

CString s;

s.Format(L"%0.2f", Result1);

Result.DeleteString(x);

Result.InsertString(x, s);

Result.SetCurSel(x);

UpdateData(0);

}


void Claba41Dlg::OnBnClickedButton1()

{

UpdateData(1);

if (Add != "" && NumCars

{

Garage.AddString(Add);

car[NumCars].Litres=Lit;

car[NumCars].Price = Price;

car[NumCars].Way = ras;

car[NumCars].Tonnage = gruz;

car[NumCars].Weight = ves_gruz;

float z;

if (gruz 0)

{

kol= int(ves_gruz / gruz);

z = float(ves_gruz) / float(gruz);

if (kol

}

else kol = 1;

Result1 = (ras / 100)*Lit*Price*kol;

CString s;

s.Format(L"%0.2f", Result1);

Result.AddString(s);

Garage.SetCurSel(NumCars);

Result.SetCurSel(NumCars);

NumCars++;

}


}



void Claba41Dlg::OnBnClickedButton2()

{

int x = Garage.GetCurSel();

for (int i = 0; i = car[i];

if (NumCars 0) NumCars--;

for (int i = 0; i

if (i = Mas[i];

else car[i] = Mas[i + 1];

Garage.DeleteString(x);

Result.DeleteString(x);

if (NumCars 0)

{

Garage.SetCurSel(NumCars - 1);

Result.SetCurSel(NumCars - 1);

Claba41Dlg::OnLbnSelchangeList2();

};


}



void Claba41Dlg::OnBnClickedOk()

{

int x =Garage.GetCurSel();

UpdateData(1);

car[x].Litres = Lit;

car[x].Price = Price; car[x].Tonnage = gruz;

if (Ways == 0) car[x].Way = ras; else

for (int i = 0; i if (Weights == 0) car[x].Weight = ves_gruz;

else

for (int i = 0; i


for (int i = 0; i

{

Garage.SetCurSel(i);

Claba41Dlg::OnLbnSelchangeList2();

UpdateData(0);

}

Garage.SetCurSel(x);

Claba41Dlg::OnLbnSelchangeList2();

}


void Claba41Dlg::OnBnClickedButton3()

{

for (int i = 0; i

{

Garage.SetCurSel(i);

//Claba41Dlg::OnLbnSelchangeList2();

UpdateData(0);

}

if (NumCars 0)

{

CString st;

CString st2;

Result.GetText(0, st);

Result1 = _wtof(st);

int j = 0;

float n;

for (int i = 0; i

{

Result.GetText(i, st);

n = _wtof(st);

if (n

{

Result1 = n;

j = i;

}

}

st2.Format(L"%0.2f", Result1);

Garage.GetText(j, st);

st =L"Оптимальный вариант - автомобиль " + st +"=" + st2;

AfxMessageBox(st);


Скачать

Рекомендуем курсы ПК и ППК для учителей

Вебинар для учителей

Свидетельство об участии БЕСПЛАТНО!