Программирование. Принципы и практика использования C++ Исправленное издание
Шрифт:
7. Что такое константное выражение?
8. Что такое литерал?
9. Что такое символическая константа и зачем она нужна?
10. Что такое “магическая” константа? Приведите примеры.
11. Назовите операторы, которые можно применять как к целым числам, так и к числам с плавающей точкой.
12. Какие операторы можно применять только к целым числам, но не к числам с плавающей точкой?
13. Какие операторы можно применять к строкам?
14. Когда оператор
15. Какие проблемы порождает использование оператора
16. Объясните, каково предназначение каждой части заголовка цикла
17. Когда используется оператор
18. Как вывести числовой код символа?
19. Опишите смысл выражения
20. Когда часть программы следует оформить в виде функции? Назовите причины.
21. Какие операции можно выполнить над объектом типа
22. Какие операции можно выполнить над объектом типа
23. Чему равен индекс третьего элемента вектора?
24. Напишите цикл
25. Что делает выражение
26. Что делает с вектором функция
27. Что делают функции-члены вектора
28. Чем объясняется полезность и популярность типа
29. Как упорядочить элементы вектора?
Термины
Упражнения
1. Выполните задание ПОПРОБУЙТЕ, если еще не сделали этого раньше.
2. Допустим, мы определяем медиану последовательности как “число, относительно которого ровно половина элементов меньше, а другая половина — больше”. Исправьте программу из раздела 4.6.2 так, чтобы она всегда выводила медиану. Подсказка: медиана не обязана быть элементом последовательности.
3. Считайте последовательности чисел типа
4. Напишите программу, угадывающую число. Пользователь должен задумать число от 1 до 100, а программа должна задавать вопросы, чтобы выяснить, какое число он задумал (например, “Задуманное число меньше 50”). Ваша программа должна уметь идентифицировать число после не более семи попыток. Подсказка: используйте операторы
5. Напишите программу, выполняющие самые простые функции калькулятора. Ваш калькулятор должен выполнять четыре основных арифметических операции — сложение, вычитание, умножение и деление. Программа должна предлагать пользователю ввести три аргумента: два значения типа
6. Создайте вектор, хранящий десять строковых значений "
7. Модифицируйте мини-калькулятор, описанный в упр. 5, так, чтобы он принимал на вход цифры, записанные в числовом или строковом формате.
8. Легенда гласит, что некий царь захотел поблагодарить изобретателя шахмат и предложил ему попросить любую награду. Изобретатель попросил положить на первую клетку одно зерно риса, на вторую — 2, на третью — 4 и т.д., удваивая количество зерен на каждой из 64 клеток. На первый взгляд это желание выглядит вполне скромным, но на самом деле в царстве не было такого количества риса! Напишите программу, вычисляющую, сколько клеток надо заполнить, чтобы изобретатель получил хотя бы 1000 зерен риса, хотя бы 1 000 000 зерен риса и хотя бы 1 000 000 000 зерен риса. Вам, разумеется, понадобится цикл и, вероятно, переменная типа
9. Попробуйте вычислить число зерен риса, запрошенных изобретателем шахмат в упр. 8. Оказывается, что это число настолько велико, что для его хранения не подходит ни тип
10. Напишите программу для игры “Камень, бумага, ножницы”. Если вы не знаете правил этой игры, попробуйте выяснить их у друзей или с помощью поисковой машины Google. Такие исследования — обычное занятие программистов. Для решения поставленной задачи используйте инструкцию
11. Напишите программу, находящую все простые числа от 1 до 100. Для этого можно написать функцию, проверяющую, является ли число простым (т.е. делится ли оно на простое число, не превосходящее данное), используя вектор простых чисел, записанный в возрастающем порядке (например, если вектор называется