Национальный Исследовательский Ядерный Университет
«Московский Инженерно-Физический Институт»
Факультет автоматики электроники
Кафедра электроники
Отчет
По лабораторной работе № 1 «Квадраты целых чисел»
курса «Информатика» студента группы А1-05
Ахундова З.С.
Москва 2010
2
Содержание
-
Формулировка задачи………………………………………………….….......3
-
Представление данных и ограничения…………………………………........4
-
Описание функций программы………………………………………………5
-
Иерархическая схема………………………………………………….5
-
Прототипы функций………………………………………………......6
-
-
Алгоритм решения задачи………………………………………………........7
-
Тестовые наборы данных и реакции……………………………….…….....12
-
Исходный текст программы………………………………………………...14
-
Описание тестирования программы………………………………………..20
-
Анализ работы по решению задачи…………………………………….......26
3
-
Формулировка задачи
Написать программу для вывода чисел и их квадратов в заданном диапозоне. При этом к программе предъявляются следующие требования:
-
При запуске программы на экран выводится заголовок вида: «Вывод квадратов целых чисел» и запрос вида:
«Начальное число = »
на ввод целого числа.
-
После ввода пользователем числа выводится запрос вида:
«Количество чисел = »
на ввод целых чисел.
-
После ввода пользователем целого числа на экран выводится строка (строки) чисел вида:
«Число = xxx его квадрат = yyyy».
-
После вывода результата программа выдает на экране запрос типа:
«Повторить [Y/N]? »
-
При вводе пользователем «Y» или «y», программа повторяет все действия вновь, начиная с вывода заголовка.
-
При нажатии кнопки «N» или «n» программа выводит сообщение вида: «Работа завершена ! »
и завершает свою работу.
Дополнительные требования:
-
Предусмотреть разумную реакцию программы на любую входную информацию.
-
Предусмотреть легкость генераций двух версий программы: с диалогом на русском и английском языках.
-
Программа должна быть реализована в многофайловом варианте с использованием файла проекта.
4
-
Представление данных и ограничения
Таблица 2.1. Данные и ограничения
Имя константы или переменной |
Вид |
Тип |
Глобальная или локальная |
Область допустимых значений |
Особые ситуации и реакции на них |
MINNUM |
Константа |
Int |
Глобальная |
-181 |
Минимальное обрабатываеме число. MINNUM >= -sqrt(32767) |
MAXNUM |
Константа |
Int |
Глобальная |
181 |
Максимальное обрабатываемое число. MAXNUM <= sqrt (32767) |
MINLINES |
Константа |
Int |
Глобальная |
1 |
Минимальное количество обрабатываемых чисел. На экране должна быть выведена 1 строка результата. |
MAXLINES |
Константа |
Int |
Глобальная |
18 |
Максимальное количество обрабатываемых чисел, т.к. количество строк сообщений не должно превышать количества строк на экране = 25 |
Maxnum |
Выходная переменная |
Long |
Глобальная |
От MINLINES до MAXLINES |
Количество чисел, вводимых пользователем. Выход за ОДЗ не возможен. |
Begnum |
Входная переменная |
Int |
Глобальная |
От MINNUM до MAXNUM |
Начальное число, вводимое пользователем. Выход за ОДЗ не возможен. |
c |
Промежуточная переменная |
Int |
YesNo |
От -32768 до 32767 |
Буфер введенного символа. Выход за ОДЗ не возможен. |
i |
Промежуточная переменная |
Int |
Calc |
От 0 до MAXNUM |
Счетчик количества обрабатываемых чисел. Выход за ОДЗ не возможен |
K |
Промежуточная переменная |
Int |
Calc |
От MINNUM до MAXNUM |
Текущее обрабатываемое число. Выход за ОДЗ не возможен. |
N |
Промежуточная переменная |
Int |
GetNum |
От -32768 до 32767 |
Буфер введенного числа. Выход за ОДЗ не возможен. |
5