Вопрос 3. Отладка и тестирование. — КиберПедия 

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...

Вопрос 3. Отладка и тестирование.

2017-10-21 268
Вопрос 3. Отладка и тестирование. 0.00 из 5.00 0 оценок
Заказать работу

– Понятие о тестировании программы.

– Методы тестирования. Наборы тестов.

– Пример тестирования программы.

– Отладка программы.

Вопрос 4. Напишите программу нахождения в целочисленном массиве произведения всех ненулевых элементов.

Решение:

Напишем программу на языке программирования С++:

#include <iostream> //подключаем библиотеки

void main() //главная функция

{ int mas[10]; //объявляем массив из 10 элементов

int p=1; //инициализируем переменную

int i; //объявляем счетчик

for (i=0; i<10; i++) //цикл от 0 до 9

{

cout<<”Введите элемент массива”<<endl; //выводим текст

cin>>mas[i]; //ввод с клавиатуры

if (mas[i]!=0) // проверяем условие если элемент не 0

p=p*i //если истинно считаем произведение

}

cout<< “произведение равно”<<p<<endl; // выводим результат

}

 

Вопрос 5. Разработайте программу с использованием наследования классов:

Классы: ‚

графический объект;

цилиндр (найти объем);

шар (найти объем).

Используя виртуальные функции, не зная, с объектом какого класса вы работаете, выведите на экран его название и площадь.

Решение:

#include <iostream> //подключаем библиотеки

#include <math>

Class GrafObj //описываем базовый класс

{public:

virtual float volume (float *radius) { }// виртуальная функция вычисления объема

GrafObj (float *radius) {}// конструктор класса

 

// производный класс цилиндр

class Cilinder: GrafObj

{public:

float volume (float *radius, float *height)

{return height*3.1415*radius* radius }//переопределили объем

Cilinder (float *radius, float *height) {Cilinder:: height =height}// конструктор класса

private:

float height; // новое поле высота

};

 

// производный класс шар

class Globe: GrafObj

{public:

float volume (float *radius)

{return 4/3*3.1415*pow(radius,3)

}//переопределили объем

Globe(float *radius) {}// конструктор

};

 

void main()

{clrscr();

Globe x(3); // объект шар

cout<<x.volume<<endl; // выводим объем

Cilinder y(3,5); // объект цилиндр

cout<<y.volume<<endl; // выводим объем

}

 

ВОПРОСЫ САМОПРОВЕРКИ

1. Структурированные типы данных: массивы, строки, структуры. Описание и применение. Структуры данных: стеки, очереди, деревья.

2. Основные принципы ООП. Раскройте их характеристики. Перегрузка операций, конструкторы класса.

3. Одиночное и множественное наследование, полиморфизм. Виртуальные функции и друзья класса.

4. Сделайте обзор стандартных контейнеров: вектор, список, очередь и др. Итераторы, алгоритмы.

5. Что такое исключительные ситуации? Как обработать исключительные ситуации?

ПРИМЕРНАЯ ТЕМАТИКА ЭКЗАМЕНАЦИОННЫХ ВОПРОСОВ ПО ДИСЦИПЛИНЕ ОП.05 ОСНОВЫ ПРОГРАММИРОВАНИЯ

1. Обзор языков программирования. Области применения языков программирования.

2. Современные технологии программирования. Структурное программирование.

3. Жизненный цикл программы.

4. Программный продукт и его характеристики.

5. Основные этапы решения задач на компьютере.

6. Лексические основы языка С++.

7. Структура программы. Идентификаторы.

8. Типы данных. Скалярные типы данных. Объявление переменных.

9. Виды выражений. Правила формирования и вычисления выражений.

10. Преобразование типов.

11. Операторы общего назначения. Оператор присваивания. Ввод и вывод данных.

12. Битовые операции.

13. Простой и составной оператор.

14. Условный оператор.

15. Оператор выбора.

16. Цикл с предусловием. Цикл с постусловием.

17. Цикл с параметром. Вложенные циклы. Досрочный выход их цикла.

18. Стили программирования. Культура программного кода

19. Подпрограммы. Преимущества использования подпрограмм. Структура подпрограммы. Вызов подпрограммы. Стандартные функции.

20. Написание пользовательских функций.

21. Формальные и фактические параметры. Механизм передачи параметров.

22. Перегрузка функций. Функции с переменным числом параметров.

23. Рекурсивные функции.

24. Стандартные потоки ввода-вывода. Форматы вывода.

25. Файловый ввод-вывод.

26. Массивы, определение массивов. Способы заполнения массивов.

27. Обработка массивов.

28. Символы и строки. Обработка строк.

29. Структуры и объединения. Понятие класса.

30. Ссылки и указатели.

31. Связь строк и указателей.

32. Структуры данных: стек и очередь.

33. Структуры данных: двоичные деревья

34. Модульное программирование. Понятие модуля. Разбиение программы на модули. Включение модулей в программу.

35. Принципы ООП. Определение классов и их методов.

36. Управление доступом к членам класса

37. Конструкторы и деструкторы. Автоматическая генерация конструкторов и деструкторов. Порядок вызова

38. Друзья классов.

39. Статический полиморфизм. Перегрузка операций.

40. Виды отношений между классами. Одиночное наследование.

41. Динамический полиморфизм. Механизм виртуальных функций.

42. Множественное наследование.

43. Стандартная библиотека шаблонов STL.

44. Контейнеры. Обзор контейнеров. Итераторы.

45. Алгоритмы в контейнерах. Достоинства и недостатки STL-подхода.

46. Понятие исключительной ситуации. Обработка исключений.

 


Поделиться с друзьями:

Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...

Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...

Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.013 с.