Исходное задание на курсовую работу
Приложение для вычисления освещенности хоккейного поля. Прямоугольное хоккейное поле размера a*b освещено n рядами ламп, по m ламп в ряду, расположенных на высоте h от поверхности льда. Расстояние между рядами ламп равно а/(n-1), расстояние между лампами в ряду – b/(m-1). Определить освещенность хоккейного поля в точке, расстояния от которой до бортов соответственно a1, b1 (a1≤a, b1≤b).
Описание принципа работы приложения:
При запуске приложения пользователю предложено ввести данные задачи:Ширина хоккейного поля; - Длина хоккейного поля;- Количество рядов ламп освещения;- Количество ламп в ряду; - Высота ламп;- Координаты x и y.На все значения накладываются определенные ограничения с целью получения корректного решения. После введения исходных данных нужно нажать кнопку «рассчитать», после чего задача визуализируется на форме. В данном приложении пользователь может создать другой проект с новыми данными, не выходя из приложения. Данные просто нужно ввести заново или изменить некоторые значения. Пользователь может сохранить данные проекта, для этого нужно нажать Файл->Сохранить. Если у пользователя возникли проблемы с работой с приложением, он может обратиться за помощью к Справке. Справка содержит в себе краткое описание работы приложения, а так же информацию о том, кто разработал данное приложение.
Содержание пояснительной записки
- Общее описание разработки
- Описание принципа работы приложения в текстовой форме
- Структура приложения
- Таблица свойств объектов и таблица идентификаторов
- Функциональное описание
- Описание работы программы на примерах с представление экранных форм8
- Заключение
- Приложение
Фрагмент программного кода
double a, b, h, a1, b1, E; static int X,Y; static SolidBrush^ sb1 = gcnew SolidBrush(Color::Red); static SolidBrush^ sb2 = gcnew SolidBrush(Color::Blue); //определили переменные и объекты для создания графики private:System::Boolean validnostA(){ if (txtA->Text==""){MessageBox::Show("Введите число!");return false;}//если введено не число - то сообщение об ошибке else {//если введено число a=Convert::ToDouble(this->txtA->Text);//присваиваем значение и конвертируем if ((a<=0)||(a>400))//проверка условия ввода {MessageBox::Show("Введите число от 0 до 400!"); txtA->Text=""; return false;} else { txtB->Focus();return true;}} } private:System::Boolean validnostB(){ if (txtB->Text==""){MessageBox::Show( "Введитечисло!");return false;}//проверка условия на ввод числа else {//если введено число b=Convert::ToDouble(this->txtB->Text);//присваиваемзначениеиконвертируем if ((b<=0)||(b>250)){MessageBox::Show("Введите число от 0 до 250!");//если число не в диапазоне txtB->Text=""; return false;} else { if(b>a){MessageBox::Show("Ширина не должна быть больше длины!");txtB->Text="";}//проверка условия на ширину и длину else{return true;}}} } private:System::Boolean validnostN(){ if (txtN->Text==""){MessageBox::Show("Введитечисло!");return false;}//проверка условия на ввод числа else {//если введено число n=Convert::ToDouble(this->txtN->Text); if ((n<=0)||(n>=10)){MessageBox::Show( "Введите число от 0 до 10!");//проверка условия на ввод числа-если число не в диапазоне txtN->Text=""; return false;} else{ return true;}} }
Содержание архива
- исходный код на C++ для WinForms Visual Studio
klausms