Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
DocsToProg1112.doc
Скачиваний:
6
Добавлен:
19.03.2015
Размер:
80.38 Кб
Скачать

Елементарний прикладрозробки

Сірим тлом виділено зразки текстів, які під час виконання роботи має створювати студент.

Умова задачі

Написати програму додавання двох цілих чисел.

Аналіз та уточнення умови

Щоб уточнити умову й написати постановку задачі, необхідно знайти відповіді на кілька питань.

1. Звідки програма отримує вхідні дані й куди виводить результати?Будемо вважати, що доданки задаються за допомогою клавіатури, а сума виводиться на екран монітора.

2. Який вигляд мають вхід і вихід програми?Вхід — це два числа, відокремлені пропуском. Вихід — не лише сума чисел, а всі дані, що з’являються за виконання програми. Спочатку виведемо повідомлення про те, що взагалі має робити програма. Потім виведемо запрошення до введення двох чисел. Отримавши їх, виведемо суму. Проте користувачеві потрібен деякий час, щоб сприйняти результат, тобто необхідно зупинитися й зачекати, доки користувач не вкаже, що роботу можна закінчити. Отже, після виведення суми повідомимо, що програма чекає, коли користувач вкаже на закінчення роботи. Як саме користувач має це зробити, поки що не уточнюємо.

3. Якою є множина можливих вхідних чисел?Цілі числа в комп’ютері мають скінченне зображення, тому працювати можна лише з деякою їх скінченною підмножиною, що залежить від кількості біт у зображенні. Проте зображення чисел будемо обирати пізніше, проектуючи програму, а зараз лише зауважимо, що перед уведенням програма має повідомити про допустимі вхідні дані.

Отже, сформулюємо таку постановку задачі.

Постановка задачі

Вивести повідомлення про те, що програма обчислює суму двох цілих чисел.

Вивести запрошення до введення двох чисел. У запрошенні вказати діапазон можливих чисел.

Ввести два числа.

Обчислити суму чисел і вивести її на екран.

Вивести повідомлення про те, що програма зупинилася й чекає дій користувача для продовження.

Отримати від користувача вказівку щодо продовження й закінчити роботу.

У практичних задачах, як правило, постановка задачі уточнюється й розвивається кілька разів.

Створення набору тестів для перевірки програми

Перевірити програму на всіх можливих вхідних даних практично неможливо, тому до набору тестів включають декілька «звичайних» екземплярів даних і обов’язково екземпляри, утворені граничними можливими значеннями. Наразі ці значення невідомі, але ясно, що це деяке максимальне число MAXі мінімальнеMIN. Припустимо, що у програмі використовується стандартне зображення чисел зі знаком. Через особливості цього зображення сумаMAX+MINмає дорівнювати –1. Отже, створимо такий набір тестів.

Набір тестів та очікуваних результатів

Тест (два доданки)

Очікуваний результат (сума)

1 1

2

1 0

1

MAX MAX

2MAX

MIN MIN

2MIN

MAX MIN

–1

Проектування алгоритму

У цьому елементарному прикладі всі необхідні дії з розв’язання задачі вже записано у постановці задачі. Якщо їх не уточнювати, то алгоритм просто збігається з постановкою задачі. У змістовніших задачах це, звісно, не так.

Проектування програми

Писатимемо програму мовою С++. У програмі буде лише головна функція. В алгоритмі фігурують два числа, що вводяться й додаються, та їх сума. Доданки представимо змінними цілого типу, скажімо, short. Сума чисел цілого типу може бути незображуваною в ньому, тому присвоювати її змінній цього самого типу не можна. Потрібно або зберегти суму в змінній потужнішого типу, скажімо,int, або просто вивести її, не зберігаючи (адже процесор виконує арифметичні дії з даними типуint).

Після того, як обрано тип shortдля чисел, стають відомими граничні значення діапазону можливих доданків (–32768 та 32767), тому вкажемо їх у запрошенні.

Уведемо та виведемо дані, а також повідомимо про затримку та отримаємо вказівку користувача за допомогою засобів стандартної бібліотеки iostream.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]