Добавил:
Берегите себя и своих близких. По всем вопросам - пишите в мой вк, помогу чем смогу. Всем УЗС привет! Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

C++ программы НОВИКОВ / Панюкова Путеводитель по языку С++ Глава 14 Дополнительно

.pdf
Скачиваний:
55
Добавлен:
25.11.2016
Размер:
1.23 Mб
Скачать

177

где a,b,c – действительные числа. Значения a, b, c, Хнач, Хкон, dX вводятся с клавиатуры.

4. Гуси и кролики. У гусей и кроликов 2n лап. Сколько может быть гусей и кроликов (вывести все возможные сочетания)?

Простейшие операции с массивами

5. В одномерном массиве из N вещественных элементов, вычислить:

количество элементов массива, больших С;

произведение элементов массива, расположенных после максимального по модулю элемента.

Преобразовать массив таким образом, чтобы сначала располагались все отрицательные элементы, а потом – все положительные (элементы, равные нулю, считать положительными).

Двумерные массивы

6. Дана целочисленная прямоугольная матрица. Определить номер первого из столбцов, содержащих хотя бы один нулевой элемент.

Характеристикой строки целочисленной матрицы назовем сумму ее отрицательных четных элементов. Переставляя строки заданной матрицы, расположить их в соответствии с убыванием характеристик.

Прикладные математические задачи

7. Найти 20 первых троек пифагоровых чисел, т.е. целых k, l, m таких, что .

Вариант 16

Линейные алгоритмы

1. Цена за молоко. Животновод в начале каждой зимы повышает отпускную цену на молоко на p%, а каждым летом – снижает на столько же процентов. Изменится ли цена на молоко и если да, то в какую сторону и на сколько через n лет? (Значения цены литра молока, p и n ввести с клавиатуры).

Разветвляющиеся алгоритмы

2. Треугольник задан длинами своих сторон. Определить, является ли он тупоугольным, прямоугольным или остроугольным.

Циклические вычислительные процессы

3. Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Хнач до Хкон с шагом dX, функция определяется следующим образом:

178

F=

где – действительные числа. Значения a, b, c, Хнач, Хкон, dX вводятся с клавиатуры.

4. Для заданных значений и nx вычислить выражение s=sin x+sin sin x +…+ sin sin …sin x

n раз

Простейшие операции с массивами

5. В одномерном массиве из N вещественных элементов, вычислить:

количество отрицательных элементов массива;

сумму модулей элементов массива, расположенных после минимального по модулю элемента.

Заменить все отрицательные элементы массива их квадратами и упорядочить элементы массива по возрастанию.

Двумерные массивы

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

Найти номер первого из столбцов, не содержащих ни одного отрицательного элемента.

Прикладные математические задачи

7. Найти все натуральные числа, не превосходящие заданного n и делящиеся на каждую из своих цифр (в десятичной системе счисления).

Вариант 17

Линейные алгоритмы

1. “Косой квадрат”. У квадрата АВСD на плоскости известны координаты двух точек противоположных вершин А и С. Найти координаты точек В и D. Расположение квадрата произвольно, его стороны не обязательно параллельны координатным осям.

179

Разветвляющиеся алгоритмы

2. Заданы три числа a,b,c. Определить, могут ли они быть сторонами треугольника, и если да, то определить его тип: равносторонний, равнобедренный, разносторонний.

Циклические вычислительные процессы

3. Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Хнач до Хкон с шагом dX , функция определяется следующим образом:

F=

где a,b,c – действительные числа. Значения a, b, c, Хнач, Хкон, dX вводятся с клавиатуры.

4. Для заданного ε найти наименьшее n такое, что

Вывести все члены последовательности от первого до n -го.

Простейшие операции с массивами

5. В одномерном массиве из N вещественных элементов, вычислить:

количество положительных элементов массива;

сумму элементов массива, расположенных после последнего элемента, равного нулю.

Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом все остальные.

Двумерные массивы

6. Путем перестановки элементов квадратной вещественной матрицы до-биться того, чтобы ее максимальный элемент находился в левом верхнем углу, следующий по величине – в позиции (2,2), следующий по величине – в позиции (3,3) и т.д., заполнив таким образом всю главную диагональ.

Найти номер первой из строк, не содержащих ни одного положительного элемента.

Прикладные математические задачи

7. Найти все натуральные числа, не превосходящие заданного n, десятичная запись которых есть строго возрастающая или строго убывающая последовательность цифр.

180

Вариант 18

Линейные алгоритмы

1. Квадратное уравнение. Найти корни квадратного уравнения, заданного своими коэффициентами, с положительным дискриминантом; подстановкой в уравнение убедиться в погрешности вычислений.

Разветвляющиеся алгоритмы

2. Шар и ромб. Может ли шар радиуса R пройти через ромбообразное отверстие с диагоналями P и Q?

Циклические вычислительные процессы

3. Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Хнач до Хкон с шагом dX , функция определяется следующим образом:

F=

где a,b,c – действительные числа. Значения a, b, c, Хнач, Хкон, dX вводятся с клавиатуры.

4. Числа последовательно поступают с устройства ввода. Все числа хранить в памяти нет необходимости; после ввода каждого числа нужно вычислить и напечатать среднее значение всех введенных чисел:

.

Простейшие операции с массивами

5. В одномерном массиве из N вещественных элементов, вычислить:

количество элементов массива, меньших С;

сумму целых частей элементов массива, расположенных после последнего отрицательного элемента.

Преобразовать массив таким образом, чтобы сначала располагались все элементы, отличающиеся от максимального, не более чем на 20%, а потом – все остальные.

Двумерные массивы

6. Дана целочисленная прямоугольная матрица. Определить:

количество строк, содержащих хотя бы один нулевой элемент;

номер столбца, в которой находится самая длинная серия одинаковых элементов.

181

Прикладные математические задачи

7. Каждое из заданных натуральных чисел заменить числом, получающемся при записи его десятичных цифр в обратном порядке.

Вариант 19

Линейные алгоритмы

1.Такси. В такси одновременно сели три пассажира. Когда вышел первый пассажир, на счетчике было рублей; когда вышел второй – рублей. Сколько должен заплатить каждый пассажир, если по окончанию поездки счетчик показал рублей? Плата за посадку составляет рублей.

Тестирование: общая сумма оплаты пассажирами должна совпадать с показанием счетчика по окончании поездки. Рассмотрим крайние ситуации. По справедливости, если все три пассажира вышли одновременно, они должны заплатить по (+ )/3 руб. Если же первый и второй передумали ехать, они платят по /3 руб, а оставшаяся сумма ложится на счет третьего пассажира.

Разветвляющиеся алгоритмы

2. Четырехугольник ABCD задан координатами своих вершин на плоскости: A( , ), B(,), C( , ), D(,). Проверить является он выпуклым.

Замечание. Есть несколько способов проверки выпуклости: анализ линейных неравенств, задаваемых сторонами; разбиение четырехугольника на треугольники со сравнением сумм их площадей и другие.

Циклические вычислительные процессы

3. Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Хнач до Хкон с шагом dX, функция определяется следующим образом:

F=

где a, b, c – действительные числа. Значения a, b, c, Хнач, Хкон, dX вводятся с клавиатуры.

4. Точки внутри эллипса. Для заданных a и b найти все точки с целочисленными координатами, находящиеся внутри эллипса /+/≤1. Полезно вывести найденные координаты точек в форме

эллипса.

182

Простейшие операции с массивами

5. В одномерном массиве из N вещественных элементов, вычислить:

сумму отрицательных элементов массива;

произведение элементов массива, расположенных между максимальным и минимальным элементами.

Упорядочить элементы массива по возрастанию.

Двумерные массивы

6. Дана целочисленная прямоугольная матрица. Определить:

количество строк, не содержащих ни одного нулевого элемента;

максимальное из чисел, встречающихся в заданной матрице более одного раза.

Прикладные математические задачи

7. Возвести заданное вещественное число α в целую степень k, не пользуясь операцией возведения в степень и не производя (k-1) умножений и многократного сложения (так как k велико).

Рекомендация. Сокращение числа умножений может быть достигнуто применением “индийского алгоритма” – по рекуррентной формуле:

=

Вариант 20

Линейные алгоритмы

1. Среднегодовая производительность труда. За первый год производительность труда на предприятии возросла на %, за второй и третий – соответственно на и %. Найти среднегодовой прирост производительности (в процентах).

Тестирование, алгоритмизация: если ежегодный прирост постоянен, то и среднегодовой прирост p такой же: p= ==. Общий прирост за 3 года в общем случае составит:

Тот же результат можно получить при среднегодовом приросте p:

183

Остается найти величину p.

Разветвляющиеся алгоритмы

2. Четырехугольник ABCD задан координатами своих вершин на плоскости: A( , ), B(,), C( , ), D(,). Определить тип четырехугольника: прямоугольник, параллелограмм, трапеция, произвольный четырехугольник. Учесть погрешность вычислений.

Замечание. Для устранения дополнительных источников погрешности рекомендуется аппарат векторной алгебры: коллинеарность, равенство и ортогональность векторов – сторон четырехугольника..

Циклические вычислительные процессы

3. Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Хнач до Хкон с шагом dX, функция определяется следующим образом:

F=

где a, b, c – действительные числа. Значения a, b, c, Хнач, Хкон, dX вводятся с клавиатуры.

4. Площади прямоугольников. Прямоугольник на плоскости axb; cyd задается четырьмя числами (его габаритами): a,b,c,d. Последовательно вводятся габариты n прямоугольников. В процессе ввода находить площадь их пересечения, не запоминая самих габаритов.

Простейшие операции с массивами

5. В одномерном массиве, состоящем из N вещественных элементов, вычислить:

сумму положительных элементов массива;

произведение элементов массива, расположенных между максимальным по модулю и минимальным по модулю элементами.

Упорядочить элементы массива по возрастанию.

Двумерные массивы

6. Дана целочисленная прямоугольная матрица. Определить количество столбцов, не содержащих ни одного нулевого элемента. Характеристикой строки целочисленной матрицы назовем сумму ее положительных четных элементов. Переставляя строки заданной матрицы, расположить их в соответствии с ростом характеристик.

184

Прикладные математические задачи

7. В массивах K(n) и L(n) заданы соответственно числители и знаменатели рациональных чисел вида =, i=1,2,…,n. Найти наибольшее из этих чисел, не пользуясь операцией деления.

Вариант 21

Линейные алгоритмы

1. Экстремальные точки маятника. Заданы координаты точки подвески математического маятника A(,,). и координаты одной из точек наивысшего подъема B(,,). Найти координаты самой низкой точки траектории и другой наивысшей точки подъема.

Разветвляющиеся алгоритмы

2. Треугольник и круги. Лежит ли заданный на плоскости треугольник ABC в области пересечения заданных кругов:

+ ; + ?

Циклические вычислительные процессы

3. Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Хнач до Хкон с шагом dX, функция определяется следующим образом:

F=

где a, b, c – действительные числа. Значения a, b, c, Хнач, Хкон, dX вводятся с клавиатуры.

4. Время обслуживания. Для каждого посетителя парикмахерской (с одним мастером) известны следующие величины: t – момент его прихода и τ - продолжительность его обслуживания. Сколько клиентов обслужит мастер за смену продолжительностью T? Сколько рабочего времени он потратит на обслуживание?

Простейшие операции с массивами

5. В одномерном массиве, состоящем из N вещественных элементов, вычислить:

произведение элементов массива с четными номерами;

сумму элементов массива, расположенных между первым и последним нулевыми элементами.

185

Преобразовать массив таким образом, чтобы сначала располагались все положительные элементы, а потом – все отрицательные (элементы, равные нулю, считать положительными).

Двумерные массивы

6. Дана целочисленная прямоугольная матрица. Определить:

количество столбцов, содержащих хотя бы один нулевой элемент;

номер строки, в которой находится самая длинная серия одинаковых элементов.

Прикладные математические задачи

7. Перевести заданное число в систему римского счета.

Указание. Римские цифры обозначаются следующими латинскими

буквами:

 

 

 

1

I

500

D

5

V

1000

M

10

X

5000

V

50

L

10000

X

100

C

Вариант 22

Линейные алгоритмы

1. Длина высоты. Треугольник ABC задан длинами своих сторон. Найти длину высоты, опущенной из вершины A.

Экстремальные тесты: суммы двух сторон равна третьей ; одна из сторон равна нулю.

Разветвляющиеся алгоритмы

2. Задача жестянщика. Можно ли из круглой заготовки радиуса r вырезать две прямоугольные пластинки с размерами a×b и c×d?

Циклические вычислительные процессы

3. Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Хнач до Хкон с шагом dX, функция определяется следующим образом:

F=

где a, b, c – действительные числа. Значения a, b, c, Хнач, Хкон, dX вводятся с клавиатуры.

186

4. Сравнить скорость сходимости (число слагаемых для достижения заданной точности ε) следующих разложений числа π:

π=4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

;

 

 

 

 

 

 

 

 

 

 

 

 

π=3+4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

π=

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

Простейшие операции с массивами

5. В одномерном массиве, состоящем из N вещественных элементов, вычислить:

сумму элементов массива с нечетными номерами;

сумму элементов массива, расположенных между первым и последним отрицательными элементами.

Сжать массив, удалив из него все элементы, модуль которых не превышает 1. Освободившиеся в конце массива элементы заполнить нулями.

Двумерные массивы

6. Дана целочисленная прямоугольная матрица. Определить:

произведение элементов в тех строках, которые не содержат отрицательных элементов;

максимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы.

Прикладные математические задачи

7. Найти минимальное натуральное m такое, что: m=+=+ (k,l,i,j различные натуральные числа).

Вариант 23

Линейные алгоритмы

1. Задача жестянщика. Из круга радиусом r вырезан прямоугольник, большая сторона которого равна a. Найти максимальный радиус круга, который можно вырезать из полученного прямоугольника?

Экстремальные тесты: a=2r; a=r .

Разветвляющиеся алгоритмы

2. Две окружности. Проверить, лежит ли окружность += целиком внутри окружности += или наоборот?

Соседние файлы в папке C++ программы НОВИКОВ