В 9 классе школы началось плотное изучение квадратных уравнений. Дело это, конечно, несложное, но достаточно затратное по времени. Тогда я, только начинавший свой путь в программировании, решил, что мне нужна программа, которая это будет делать за меня. Так и появился мой первый графический проект "калькулятор девятиклассника".
Среда разработки и язык программирования
Мне приглянулся язык C# и среда разработки VS Community. По моему мнению данная IDE это must have, а C# хорошо подходит для создания desktop приложений под Windows (так как я пользуюсь этой OC). Для создания графического приложения я использовал библеотеку WinForms.
В будущем C# станет мои основным языком программирования.
Дизайн и функции
Калькулятор выглядит следующим образом
Как видите достаточно незамысловато, но снабжен всем необходимым для работы. Кроме стандартных возможностей он имеет функции:
- Расчет деления по модулю и целочисленного деления (Mod и Cel)
- Расчет факториала числа (n!)
- Возведение в степень и взятие обратного числа (x^n, 1/x)
При нажатии на стрелочку открываются еще функции
- Тригонометрические функции
- Константа pi
- Округление (Rnd)
- Представление числа в двоичной системе (Bin), мне как программисту достаточно нужная функция
И это еще не все. В выпадающем меню есть небольшие мини-приложения, одной из которых является программа для решения квадратных уравнений
Дополнительные возможности
Как можете наблюдать, есть несколько пунктов:
- Преобразователь
Как в современных калькуляторах конвертер из одной единицы измерения в другую (реализованы объем и длина)
- Уравнения
То о чем я говорил.
- Есть программа, решающая квадратные уравнения:
Достаточно вписать коэффициенты и нажать кнопку "найти корни". Очистить все поля можно кнопкой "C", а если корни получаются странными (иррациональными), можно просто нажать "D" - так мы узнаем дискриминант. И наконец, если уравнение решений не имеет в области действительных чисел, она найдет решения в комплексных числах.
- А есть программа, находящая уравнение прямой по двум заданным точкам:
- Ну и расстояние между двумя точками
Время разработки и применение
В целом разработка во время учебы в школе заняла где-то неделю-две, что не очень то и долго, учитывая занятость и прочие обстоятельства. Впрочем, моя программа сэкономила мне много больше времени, чем было на нее затрачено. Так, например, я делал домашнее задания по алгебре с этой программой и это экономило мое время на вычисление однотипных и уже достаточно скучных уравнений, которые я уже умел решать.
"Главный" файл с кодом занял все 373 строки и, учитывая специфику языка, а тем более мой на тот момент "костыльный код" - это немного.
Нагрузки на ПК
Делая такие проекты, говорить об этом смешно, но тем не менее загрузки на ЦП почти нет, а потребление оперативной памяти в среднем 6МБ.