Приложение к отчету.
Или инструкция для блондинок.
- общая характеристика программы;
Только здесь и сейчас (хотя можно и потом, но только здесь) вы можете прочесть о моей мега-программе, созданной для нахождения дня недели по произвольной дате. То есть пользователь вводит первую, пришедшую в его умную, хотя и необязательно, голову, дату, а моя программка показывает ему, какой это день недели.
Программа состоит из пяти модулей, объединенных в проект. А именно: управляющая программа (rgzmain), функция ввода (vvod), функция, следящая за правильностью введенной даты (errorfun), функция подсчета дня недели (rgzfunc) и, наконец, функция вывода (vyvod).
- описание входных и выходных переменных;
Вообще, в ходе создания сего гениальнейшего творения, переменных использовалось много. Поэтому, дабы не путать и без того уже запутанных моим витиеватым способом изложения и наверняка полусонных читателей, попробую разложить все по полочкам.
Итак. Разделим все переменные на несколько групп.
Первая группа будет содержать переменные, которые используются во всех (или почти во всех) модулях. Обзовем эту группу глобальными переменными.
В эту группу, мы, безусловно, включим все то, что написано в строке объявлений в управляющей программе, а именно: d, n, G, R, k. Также глобальные переменные прописываются в прототипе функции. Потому что используются не только внутри функции, но и в других модулях. Сейчас поясню что к чему.
d- это день месяца, который вводит пользователь.
n- номер этого самого месяца.
G-это год.
R- это результирующая переменная, содержит значение от 0-6.
k- счетчик. Показывает, насколько вы способны ввести корректную дату. Если он равен единице, то выдается сообщение об ошибке и программа завершается.
Больше глобальных переменных нет.
Перейдем ко второй группе переменных. Обзовем их функциональными переменными. Потому что они будут использоваться только в функциях.
Вы не увидите их в прототипе, они объявляются в теле функции. В нашем случае такие переменные есть только в двух функциях: в errorfunc и rgzfunc. Перечислим переменные:
dmax – переменная из errorfunc. Нужна для того, чтобы проверить корректность ввода дня. Определяет максимальный день в текущем месяце.
m-переменная из rgzfunc. Нужна для подсчета w, находится из номера месяца.
w- переменная из rgzfunc. О! Это такая клеевая переменная!!! При делении ее на семь, остаток- R, то есть день недели.
g- переменная из rgzfunc. Нужна для подсчета w, находится из дня месяца.
P- переменная из rgzfunc. Нужна для подсчета w, находится из номера года.
C - переменная из rgzfunc. Число столетий, прошедших к заданной дате.
Y- переменная из rgzfunc. Номер года в текущем столетии.
- инструкция пользователю;
Программа настолько банальна и проста в использовании, что я попробую максимально подробно расписать алгоритм ее использования.
Сначала включаем пилот или втыкаем все провода, идущие от компьютера, в розетку.
Потом нажимаем на большую кнопку на коробке такой большой, она обычно либо черная, либо белая… Там еще подставка для кофе выезжает, когда на кнопку жмешь. Ну это, системный блок называется. Потом под экраном жмем самую большую кнопку, она обычно в правом нижнем углу. Ждем пока все включится.
Думаю, что не ошибусь, если предложу два способа.
Находим на моей флешке (или на том носителе, куда вы себе эту программу скинули) папку под названием «РГЗятина».
Открываем папку. Осматриваем содержимое в поиске RGZ.exe. Если поиск увенчался успехом, то тыкаем два раза на файл мышью (ну это штучка такая с несколькими кнопочками, когда ее двигаешь, по экрану стрелочка бегать начинает), с целью запустить программу.
Если же, какой-то умный или просто скупой на память программист или пользователь оставит вам только файлы с расширением .cpp, то поступаем следующим образом. Кликаем 2 раза мышкой на ярлычок с надписью far или farmanager. Там находим нужную директорию (РГЗятина) в левом или правом окне far’a. в командной строке «bc.exe»и жмем «enter». Если вы сидите в IV корпусе в 121 аудитории, то у вас откроется окно редактора с++.
Предположим, что если вы не там, то сами знаете, как открыть тот или иной редактор с++. Так вот. Там находим вкладку project и нажимаем open projekt. Ищем в папке РГЗятина проект RGZ. Если его нет, то пишем имя проекта. Потом в той же вкладке жмем add item. И выбираем все вышеуказанные файлы (rgzmain.cpp, rgzfunc.cpp, errorfun.cpp, vvod.cpp, vyvod.cpp)
Потом во вкладке «compile» жмем “build all”. Чтобы убедиться, что нет ошибок. Потом жмем <ctrl>+F9. И в случае, если вы умеете читать по-русски, начинайте юзать программу. Чтобы закрыть редактор жмем <Alt>+X.
В противном случае вы либо совсем блондинка, либо вам не нужна моя неграмотная писулька и в обоих случаях вам стоит закрыть окно текстового редактора и к данному документу применить <shift>+<delete>.
- тестовые примеры.
Итак. Сейчас я вам докажу, что моя программа не только работает, но и при этом работает правильно.
Для начала я приведу полный текст программы.
Главная программа:
Функция ввода:
Функция контроля корректности ввода:
Функция вычисления дня недели:
Функция вывода:
А теперь, как вы уже могли догадаться, я приведу тестовый пример работы программы.
Их будет 5.
29 февраля 2007(такой даты нет, => программа должна вывести сообщение об ошибке)
1 января 2008 (вторник)
8 марта 2008 (суббота)
13 октября 2008 (понедельник)
31 декабря 2008 (среда)
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.