Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шкредов О.С._НП-I_ЗВIТ_01_04_2015_correct.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
341.5 Кб
Скачать

Засоби і методика відладки програм

Відладка - етап розробки комп'ютерної програми, на якому виявляють, локалізують і усувають помилки. Щоб зрозуміти, де виникла помилка, доводиться дізнаватися поточні значення змінних, з'ясовувати, яким шляхом виконувалася програма.

Існують дві взаємодоповнюючі технології налагодження:

Використання відладчиків - програм, які включають в себе користувальницький інтерфейс для покрокового виконання програми: оператор за оператором, функція за функцією, із зупинками на деяких рядках вихідного коду або при досягненні певного умови.

Висновок поточного стану програми за допомогою розташованих у критичних точках програми операторів виводу - на екран, принтер, динамік або у файл. Висновок налагоджувальних відомостей в файл називається журналюванням.

Типовий цикл розробки, за час життя програми багато разів повторюється, виглядає приблизно так:

а)    Програмування - внесення в програму нової функціональності, виправлення помилок в наявній.

б)    Тестування (ручне або автоматизоване; програмістом, тестером або користувачем; «димове», в режимі чорного ящика або модульне ...) - виявлення факту помилки.

  в)  Відтворення помилки - з'ясування умов, за яких помилка трапляється. Це може виявитися непростим завданням при програмуванні паралельних процесів і при деяких незвичайних помилках, відомих як Гайзенбаґ.

г)    Налагодження - виявлення причини помилки.

Розділ 3.Формування навичок програмування з використанням алгоритмічної мови С++

Програмна реалізація алгоритмів лінійної структури

Лінійним називається алгоритм, в якому результат виходить шляхом одноразового виконання заданої послідовності дій при будь-яких значеннях початкових даних. Оператори програми виконуються послідовно, один за іншим, відповідно до їх розташування в програмі.

Скласти програму обчислення значення функції у =7х2 - 3х + 6 при будь-якому значенні х.

Вхідні дані:

х (будь-яке число). Дійсне число;

Вихідні дані:

y (значення функції). Дійсне число.

Алгоритм програми – лінійний (рис.3.1)

Рисунок 3.1 Блок-схема алгоритму.

Текст програми:

#include <iostream>

#include <windows.h>

#include <iomanip>

using namespace std;

void main()

{

int x,y;

cin>>x;

y=7*x*x-3*x+6;

cout<<y<<endl;

}

  1. Знайти площу кільця, внутрішній радіус якого R1, а зовнішній - R2 (R2 > R1). Значення радіусів R1 і R2 задати за допомогою генератора випадкових чисел.

Вхідні дані:

  • R1, внутрішній радіус; R2, зовнішній радіус. Дійсні числа.

Вихідні дані:

  • Площа кільця. Дійсне число.

Розробка алгоритму.

Для знаходження площі кільця необхідно:

Алгоритм:

  1. Вводимо зовнішній та внутрішній радіус кільця.

  2. Від площі більшого круга віднімаємо площу меншого круга.

  3. Виводимо площу кільця.

Текст програми :

#include <iostream>

#include <windows.h>

#include <iomanip>

using namespace std;

void main()

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

double pi=3.1415,R1,R2;

cout<<"Введіть внутрішній радіус:"<<endl;

cin>>R1;

cout<<"Введіть зовнішній радіус:"<<endl;

cin>>R2;

cout<<pi*R2*R2-pi*R1*R1<<endl;

}

Результат:

Введіть внутрішній радіус:

5

Введіть зовнішній радіус:

9

175.924

Для продолжения нажмите любую клавишу . . .

2. З тризначного числа х відняли його останню цифру. Коли результат розділили на 10, а до частного зліва приписати останню цифру числа x, то вийшло число 237. Знайти число х.

Вхідні дані:

Тризначне число. Ціле число.

Вихідні дані:

х. Ціле число.

Розробка алгоритму.

Фактично, ми розробляємо програму для перестановки цифр тризначного числа. Процес починається з розрахунку цифр заданого числа і розстановки їх в потрібному порядку.

Текст програми.

#include <iostream>

#include <windows.h>

#include <iomanip>

using namespace std;

void main()

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

int x;

cout<<"Введіть число"<<endl;

cin>>x;

cout<<(x%100%10)*100+(x/100)*10+(x/10)%10<<endl;

}

Результат:

Введіть число

237

723

Для продолжения нажмите любую клавишу . . .