172 Глава 2
int x, у;
cout « "Введите два целых числа в диапазоне 1-20:"; cin » x » у;
for (int i = 1; i <= у; i++) { for (int j = 1; j <= x; j++)
cout « endl; }
return 0; }
Напишите программу, которая находит наименьшее из нескольких целых. Полагайте, что первое прочитанное число задает количество последующих вводимых чисел.
Напишите программу, которая считает и печатает произведение не четных целых от 1 до 15.
В теории вероятностей часто изпользуется функция факториал. Факториал положительного целого n (n!) равен произведению по ложительных целых от 1 до n. Напишите программу вычисления факториалов целых чисел от 1 до 5. Напечатайте разультаты в фор мате с табуляцией. Какие трудности могут препятствовать вам по считать факториал 20?
Модифицируйте программу расчета сложного процента в разделе 2.13 (рис. 2.21) так, чтобы расчет повторялся для ставок 5%, 6%, 7% , 8% , 9% и 10% . Используйте цикл for для варьирования ставки.
Напишите программу, которая печатает следующие трафареты один под другим. Используйте цикл for для генерации трафаретов. Все звездочки (*) должны печататься одним оператором вида cout « '*'; (в результате звездочки будут печататься рядами). Подсказка: два последних трафарета требуют, чтобы каждая строка начиналась с соответствующего числа пробелов. Задача повышенной сложности: объедините ваши коды для решения четырех отдельных задач в единую программу, которая печатала бы все четыре трафарета рядом с помощью вложенных циклов for.
(А) (В) (С) (D)
* ********** ********** *
** ********* ********* **
*** ******** ******** ***
**** ******* ******* ****
***** ****** ****** *****
****** ***** ***** ******
******* **** **** *******
******** *** *** ********
********* ** ** *********
********** * * **********
2.48. Одно из интересных приложений компьютеров — рисование диа грамм и гистограмм. Напишите программу, которая читает пять чисел (каждое между 1 и 30). Для каждого просчитанного числа ваша программа должна напечатать строку, содержащую соответ-
Управляющие структуры 173
ствующее число смежных звездочек. Например, если ваша программа прочла число 7, она должна напечатать *******.
2.49. Торговый дом продает пять различных продуктов, розничная цена которых: продукт 1 — $2.98, продукт 2 — $4.50, продукт 3 — $9.98, продукт 4 — $4.49 и продукт 5 — $6.87. Напишите про грамму, которая читает последовательность пар чисел, означающих:
номер продукта;
количество, проданное за день.
Ваша программа должна использовать оператор switch, который помогает определить розничную цену каждого продукта. Программа должна рассчитать и вывести на экран общую розничную стоимость всех проданных за неделю продуктов.
Модифицируйте программу на рис. 2.22 так, чтобы она рассчиты вала среднюю для класса оценку. Считайте, что вес оценки 'A' — 4 пункта, оценки 'B' — 3 пункта и т.д.
Модифицируйте программу рис. 2.21 так, чтобы она использовала только целые для расчета сложного процента. (Подсказка: выразите все денежные суммы как целое число центов. Затем «разбейте» ре зультат на две составляющие — доллары и центы, используя опе рации деления и вычисления остатка. Вставьте точку между дол ларами и центами.)
2.52.Положим, что i = 1, j = 2, k = 3 и m = 2. Что напечатает каждый из приведенных операторов? Необходимы ли скобки в каждом случае?
cout « (i == 1) « endl;
cout « (j == 3) « endl;
cout « (i >= 1 && j < 4) « endl;
cout « (m <= 99 && k < m} « endl;
cout « (j >= i || k == m) « endl;
cout « (k + m < j || 3 - j >= k) « endl;
cout « (!m) « endl;
h) cout « ( ! (j - m) ) « endl; i) cout « ( !(r > m) ) « endl;
Напишите программу, которая печатает таблицу двоичных, восьме ричных и шестнадцатиричных эквивалентов десятичных чисел в диапазоне от 1 до 256. Если вы плохо знакомы с этими системами счисления, прочтите сначала приложение Г.
Рассчитайте значение n на основании бесконечного ряда
. 4 4 4 4 4 Л = 4-3 + 5-7 + 9-^+-
Напечатайте таблицу, которая покажет, как значение n аппроксимируется одним членом этого ряда, двумя членами, тремя и т.д. Сколько членов ряда потребовалось для получения значения 3.14? 3.141? 3.1415? 3.14159?
- 116 Глава 2
- 2.13. Основы повторения, управляемого счетчиком
- 2.14. Структура повторения for (цикл)
- 120 Глава 2
- 122 Глава 2
- 2.15. Пример использования структуры for
- 124 Глава 2
- 126 Глава 2
- 2.16. Структура множественного выбора switch
- Глава 2
- 130 Глава 2
- 132 Глава 2
- 2.17. Структура повторения do/while
- 134 Глава 2
- 2.18. Операторы break и continue
- Глава 2
- 2.19. Логические операции
- 138 Глава 2
- Глава 2
- 2.21. Заключение по структурному программированию
- IfcrpyKTypa (единственный выбор)
- Глава 2
- Глава 2
- 148 Глава 2
- Глава 2
- Глава 2
- Глава 2
- 156 Глава 2
- 158 Глава 2
- 160 Глава 2
- 2.1. А) следование, выбор и повторение, b) if/else. С) управляемым счет чиком или определенным заранее, d) Метку, сигнал, флаг или лож ный сигнал.
- 162 Глава 2
- 164 Глава 2
- 166 Глава 2
- 168 Глава 2
- 170 Глава 2
- 172 Глава 2
- 174 Глава 2
- 176 Глава 2
- 178 Глава 3
- Глава 3
- 3.3. Математические библиотечные функции
- 3.4. Функции
- Глава 3
- 3.5 Определения функций
- 184 Глава 3
- 186 ГлаваЗ
- 3.6. Прототипы функций
- 188 Глава 3
- 3.7. Заголовочные файлы
- 3.8. Генерация случайных чисел
- Глава 3
- 192 Глава 3
- 194 Глава 3
- 3.9. Пример: азартная игра
- Глава 3
- 198 Глава 3
- 3.10. Классы памяти
- 200 Глава 3
- 3.11. Правила, определяющие область действия
- 202 Глава 3
- 204 Глава 3
- 3.12 Рекурсия
- Глава 3
- 6) Значения, возвращаемые после каждого рекурсивного вызова
- 3.13. Пример использования рекурсии: последовательность чисел Фибоначчи
- Глава 3
- 3.14. Рекурсии или итерации
- 212 Глава 3
- Глава 3
- Глава 4
- Глава 5
- Глава 6
- 3.15. Функции с пустыми списками параметров
- 214 Глава 3
- 3.16. Встраиваемые функции