- •1. Формулировка задачи
- •2. Представление данных и ограничения
- •3. Описание функций программы
- •3.1. Иерархическая схема
- •3.2. Прототипы функций
- •4. Алгоритм решения задачи
- •5. Тестовые наборы данных и реакции
- •6. Исходный текст программы
- •7. Описание тестирования программы
- •Анализ работы по решению задачи
НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ ЯДЕРНЫЙ УНИВЕРСИТЕТ
«МИФИ»
Факультет автоматики и электроники
Кафедра электроники
ОТЧЕТ
ПО ЛАБОРАТОРНОЙ РАБОТЕ № 1 “КВАДРАТЫ ЦЕЛЫХ ЧИСЕЛ”
КУРСА “ОСНОВЫ ИНФОРМАТИКИ”
СТ. ГР. А1-05 БЕЛОВОЙ М.П.
Москва 2011
Содержание
1. |
Формулировка задачи |
3 |
2. |
Представление данных и ограничения |
4 |
3. |
Описание функций программы |
5 |
3.1. |
Иерархическая схема |
5 |
3.2. |
Прототипы функций |
6 |
4. |
Алгоритм решения задачи |
8 |
5. |
Тестовые наборы данных и реакции |
13 |
6. |
Исходный текст программы |
14 |
7. |
Описание тестирования программы |
21 |
8. |
Анализ работы по решению задачи |
27 |
1. Формулировка задачи
Написать программу вывода чисел и их квадратов в заданном диапазоне. При этом нужно учитывать следующее:
При запуске прграммы на экран выводится заголовок:
«Вывод квадратов целых чисел»
и на седующей строке запрос:
«Начальное число = «
на ввод целого числа.
После ввода целого числа и нажатия «Enter» выводится следующий запрос:
«Количество чисел = «
и ввод целого числа.
После ввода целого числа и нажатия «Enter» выводятся строки (строка) типа:
«Число = XXX, его квадрат = YYYYYY»
И строка с запросом:
«Повторить [Y/N]? «
При вводе «Y» программа повторяет все действия, начиная с вывода заголовка, при вводе «y» выводит сообщение:
«Работа закончена!»
и завершает программу.
Дополнительные требования к программе:
-
Разумную реакцию программы на любую входную информацию.
-
Легкость генераций двух версий программы: с диалогом на русском и английском языках.
-
Реализация в виде многофайлового проекта.
2. Представление данных и ограничения
Таблица 2.1. Данные и ограничения
Имя константы или переменной |
Вид |
Тип |
Глобальная или локальная в функции |
Область допустимых значений |
Особые ситуации и реакции на них |
MINNUM |
константа |
int |
глобальная |
-181 |
Минимальное обрабатываемое число. MINNUM>=-sqrt(32767) |
MAXNUM |
константа |
int |
глобальная |
181 |
Максимальное обрабатываемое число. MAXNUM>=sqrt(32767) |
MINLINES |
константа |
int |
глобальная |
1 |
Минимальное количество обрабатываемых чисел. На экране должна быть выведена 1 строка результата |
MAXLINES |
константа |
int |
глобальная |
23 |
Максимальное количество обрабатываемых чисел. Общее количество строк результатов не должно превышать количества строк на экране с учетом служебных сообщений |
Begnum |
входная переменная |
int |
глобальная |
от MINNUM до MAXNUM |
Начальное число, вводимое пользователем. Выход за ОДЗ невозможен |
Maxnum |
выходная переменная |
int |
глобальная |
от MINLINES до MAXLINES |
Количество чисел, вводимое пользователем. Выход за ОДЗ невозможен |
c |
промежуточная переменная |
int |
YesNo |
от -32768 до 32767 |
Буфер введенного числа. Выход за ОДЗ невозможен |
i |
промежуточная переменная |
int |
Calc |
от 0 до MAXNUM |
Счетчик количества обрабатываемых чисел. Выход за ОДЗ невозможен |
k |
промежуточная переменная |
int |
Calc |
от MINNUM до MAXNUM |
Текущее обрабатываемое число. Выход за ОДЗ невозможен |
n |
промежуточная переменная |
int |
GetNum |
от -32768 до 32767 |
Буфер введенного числа. Выход за ОДЗ невозможен |