1. Выполните ваш алгоритм binary search
2. Настройте тестирование функции binary_search на обработку элементов произвольного типа. Затем протестируйте ее на последовательности элементов типа string и чисел с плавающей точкой.
3. Повторите упражнение 1 с вариантом функции binary_search, который получает в качестве аргумента критерий сравнения. Создайте список новых возможностей для появления ошибок, возникающих из-за дополнительного аргумента.
4. Изобретите формат для тестовых данных, чтобы можно было один раз задать последовательность и выполнить для нее несколько тестов.
Также вам может показаться, что такая тема как http://www.itrack.ru/ никак не связана и даже не тематична с программированием. Хотя, может быть и связана.
В любом случае все-таки зайдите на сайт itrack.ru
Тема разработка сайта на заказ там представлена весьма широко.
5. Добавьте новый тест в набор тестов для функции binary_search и попытайтесь перехватить (маловероятную) ошибку при модификации последовательности.
6. Слегка модифицируйте калькулятор, предусмотрев ввод из файла и вывод в файл (или используя возможности операционной системы для перенаправления ввода-вывода). Затем изобретите для него исчерпывающий набор тестов.
7. Протестируйте простой текстовый редактор .
модульный тест охват теста постусловие предположения предусловие
проектирование с учетом
тестирования
регрессия
связка тестов системный тест состояние тестирование
тестирование методом прозрачного ящика тестирование методом черного ящика
8. Добавьте текстовый интерфейс к библиотеке графического пользовательского интерфейса. Например, строка Circle(Point(0,1),15) должна генерировать вызов Circle(Point(0,1),15). Используйте этот текстовый интерфейс для создания “детского рисунка”: плоский домик с крышей, два окна и дверь.
9. Добавьте формат текстового вывода к библиотеке графического интерфейса. Например, при выполнении вызова Circle(Point(0,1),15) в поток вывода должна выводиться строка Circle(Point(0,1),15).
10. Используя текстовый интерфейс из упр. 9, напишите более качественный тест для библиотеки графического пользовательского интерфейса.
11. Оцените время выполнения суммирования в примере из раздела 26.6, где m — квадратная матрица с размерами 100, 10 000, 1 000 000 и 10 000 000. Используйте случайные значения из диапазона [-10:10). Перепишите процедуру вычисления величины v, используя более эффективный (не O(n2)) алгоритм, и сравните продолжительность его выполнения.
12. Напишите программу, генерирующую случайные числа с плавающей точкой, и отсортируйте их с помощью функции std::sort(). Измерьте время, затраченное на сортировку 500 тысяч чисел типа double и 5 миллионов чисел типа double.
13. Повторите эксперимент из предыдущего упражнения, но со случайными строками, длина которых лежит в интервале [0:100).
14. Повторите предыдущее упражнение, но на этот раз используйте контейнер map, а не vector, чтобы сортировать его не требовалось.
Послесловие
Как программисты мы мечтаем о прекрасных программах, которые бы просто работали и желательно с первой же попытки. Реальность иная: трудно сразу написать правильную программу и предотвратить внесение в нее ошибок по мере того, как вы (и ваши коллеги) станете ее улучшать. Тестирование, включая проектирование с учетом тестирования, — это главный способ, гарантирующий, что система в итоге действительно будет работать. Живя в высокотехнологичном мире, мы должны в конце рабочего дня с благодарностью вспомнить о тестировщиках (о которых часто забывают).
Язык программирования С
“С — это язык программирования со строгим контролем типов и слабой проверкой”.
Деннис Ритчи (Dennis Ritchie)
Данная статья представляет собой краткий обзор языка программирования С и его стандартной библиотеки с точки зрения человека, знающего язык С++. В ней перечислены свойства языка С++, которых нет в языке C, и приведены примеры того, как программистам на языке С обойтись без них. Рассмотрены различия между языками C и C++, а также вопросы их одновременного использования. Приведены примеры ввода-вывода, список операций, управление памятью, а также иллюстрации операций над строками.
Опубликовал katy
April 28 2015 13:35:34 ·
0 Комментариев ·
3530 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.