Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Сборник Задач_Абрамян.doc
Скачиваний:
9
Добавлен:
01.04.2025
Размер:
1 Мб
Скачать
☆

Замечания о формулировках заданий

При формулировке заданий не используются понятия и имена, специфи-

ческие для конкретного языка программирования, за исключением обозначе-

ния нулевого указателя NIL, которое используется в заданиях группы Dynamic

(«Динамические структуры данных»). Отметим, что группа Dynamic не вклю-

чена в набор заданий для языков Visual Basic и С#.

Если о типе исходных или результирующих числовых данных в задании

ничего не сказано, то предполагаются вещественные данные. Исключение

составляет группа заданий Dynamic, в которой все числовые данные считаются

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

При обработке наборов вещественных чисел следует предполагать, что

все элементы набора являются различными (таким образом, любой набор

вещественных чисел содержит единственный минимальный и единственный

максимальный элемент). В наборах целых чисел могут присутствовать одина-

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

минимальных и максимальных элементов. Аналогичные предположения спра-

ведливы для числовых массивов, а также для файлов, содержащих числовые

данные.

Если в задании не указан максимальный размер исходных массивов, то

его можно считать равным 10 для одномерных и 10 × 10 для двумерных

массивов.

При описании элементов одномерных и двумерных массивов использует-

ся понятие порядкового номера элемента, причем начальный элемент масси-

ва A размера N всегда имеет порядковый номер 1 и обозначается в формули-

ровках заданий как A1, а конечный элемент этого же массива имеет порядковый

номер N и обозначается как AN . Аналогично, начальный элемент двумерно-

6

М. Э. Абрамян. Электронный задачник Programming Taskbook 4.5

го массива B обозначается как B1,1. Кроме того, понятие порядкового номера

применяется к строкам и столбцам двумерных массивов (матриц): начальная

строка и начальный столбец матрицы размера M × N имеют порядковый но-

мер 1, конечная строка — номер M, а конечный столбец — номер N. Подобный

подход не зависит от выбора языка программирования и соответствует тради-

ционно используемой в математике нумерации элементов векторов и матриц.

Максимальный размер исходных файлов не указывается, поэтому при ре-

шении заданий на файлы не следует использовать вспомогательные массивы,

содержащие все элементы исходных файлов, однако допускается использова-

ние вспомогательных файлов. Все исходные файлы считаются существующи-

ми, за исключением специально оговоренных случаев, в которых существова-

ние исходных файлов требуется проверять в ходе выполнения задания.

Ввод и вывод данных, оператор присваивания

Все входные и выходные данные в заданиях этой группы являются веще-

ственными числами.

Begin1◦. Дана сторона квадрата a. Найти его периметр P = 4·a.

Begin2◦. Дана сторона квадрата a. Найти его площадь S = a2.

Begin3◦. Даны стороны прямоугольника a и b. Найти его площадь S = a·b и

периметр P = 2·(a + b).

Begin4◦. Дан диаметр окружности d. Найти ее длину L = π·d. В качестве

значения π использовать 3.14.

Begin5◦. Дана длина ребра куба a. Найти объем куба V = a3 и площадь его

поверхности S = 6·a2.

Begin6◦. Даны длины ребер a, b, c прямоугольного параллелепипеда. Найти

его объем V = a·b·c и площадь поверхности S = 2·(a·b + b·c + a·c).

Begin7◦. Найти длину окружности L и площадь круга S заданного радиуса R:

L = 2·π·R,

S = π·R2.

В качестве значения π использовать 3.14.

Begin8◦. Даны два числа a и b. Найти их среднее арифметическое: (a + b)/2.

р

ческое, то есть квадратный корень из их произведения: a·b.

◦

частное их квадратов.

Begin9◦. Даны два неотрицательных числа a и b. Найти их с√еднее геометри-

Begin10 . Даны два ненулевых числа. Найти сумму, разность, произведение и

Ввод и вывод данных, оператор присваивания

7

Begin11◦. Даны два ненулевых числа. Найти сумму, разность, произведение и

частное их модулей.

Begin12◦. Даны катеты прямоугольного треугольника a и b. Найти его гипо-

тенузу c и периметр P: √

c =

a2 + b2,

P = a + b + c.

◦

Найти площади этих кругов S 1 и S 2, а также площадь S 3 кольца, внешний

радиус которого равен R1, а внутренний радиус равен R2:

S 1 = π·(R1)2,

S 2 = π·(R2)2,

S 3 = S 1 − S 2.

В качестве значения π использовать 3.14.

Begin14◦. Дана длина L окружности. Найти ее радиус R и площадь S круга,

ограниченного этой окружностью, учитывая, что L = 2·π·R,

S = π·R2. В

качестве значения π использовать 3.14.

Begin15◦. Дана площадь S круга. Найти его диаметр D и длину L окружности,

ограничивающей этот круг, учитывая, что L = 2·π·R,

S = π·R2. В качестве

значения π использовать 3.14.

Begin16◦. Найти расстояние между двумя точками с заданными координата-

ми x1 и x2 на числовой оси: |x2 − x1|.

Begin17◦. Даны три точки A, B, C на числовой оси. Найти длины отрезков AC

и BC и их сумму.

Begin18◦. Даны три точки A, B, C на числовой оси. Точка C расположена

между точками A и B. Найти произведение длин отрезков AC и BC.

Begin19◦. Даны координаты двух противоположных вершин прямоугольника:

(x1, y1), (x2, y2). Стороны прямоугольника параллельны осям координат.

Найти периметр и площадь данного прямоугольника.

Begin20◦. Найти расстояние между двумя точками с заданными координатами

(x1, y1) и (x2, y2) на плоскости. Расстояние вычисляется по формуле

(x2 − x1)2 + (y2 − y1)2.

Begin21◦. Даны координаты трех вершин треугольника: (x1, y1), (x2, y2), (x3, y3).

Найти его периметр и площадь, используя формулу для расстояния меж-

ду двумя точками на плоскости (см. задание Begin20). Для нахождения

площади треугольника со сторонами a, b, c использовать формулу Герона:

S = p·(p − a)·(p − b)·(p − c),

где p = (a + b + c)/2 — полупериметр.

Begin22◦. Поменять местами содержимое переменных A и B и вывести новые

значения A и B.

√

Begin13 . Даны два круга с общим центром и радиусами R1 и R2 (R1 > R2).

8

М. Э. Абрамян. Электронный задачник Programming Taskbook 4.5

Begin23◦. Даны переменные A, B, C. Изменить их значения, переместив содер-

жимое A в B, B — в C, C — в A, и вывести новые значения переменных A,

B, C.

Begin24◦. Даны переменные A, B, C. Изменить их значения, переместив содер-

жимое A в C, C — в B, B — в A, и вывести новые значения переменных A,

B, C.

Begin25◦. Найти значение функции y = 3x6 − 6x2 − 7 при данном значении x.

Begin26◦. Найти значение функции y = 4(x−3)6 − 7(x−3)3 + 2 при данном

значении x.

Begin27◦. Дано число A. Вычислить A8, используя вспомогательную перемен-

ную и три операции умножения. Для этого последовательно находить A2,

A4, A8. Вывести все найденные степени числа A.

Begin28◦. Дано число A. Вычислить A15, используя две вспомогательные пере-

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

A2, A3, A5, A10, A15. Вывести все найденные степени числа A.

Begin29◦. Дано значение угла α в градусах (0 < α < 360). Определить значение

этого же угла в радианах, учитывая, что 180◦ = π радианов. В качестве

значения π использовать 3.14.

Begin30◦. Дано значение угла α в радианах (0 < α < 2·π). Определить значение

этого же угла в градусах, учитывая, что 180◦ = π радианов. В качестве

значения π использовать 3.14.

Begin31◦. Дано значение температуры T в градусах Фаренгейта. Определить

значение этой же температуры в градусах Цельсия. Температура по Цель-

сию T C и температура по Фаренгейту T F связаны следующим соотноше-

нием:

T C = (T F − 32)·5/9.

Begin32◦. Дано значение температуры T в градусах Цельсия. Определить зна-

чение этой же температуры в градусах Фаренгейта. Температура по Цель-

сию T C и температура по Фаренгейту T F связаны следующим соотноше-

нием:

T C = (T F − 32)·5/9.

Begin33◦. Известно, что X кг конфет стоит A рублей. Определить, сколько

стоит 1 кг и Y кг этих же конфет.

Begin34◦. Известно, что X кг шоколадных конфет стоит A рублей, а Y кг ири-

сок стоит B рублей. Определить, сколько стоит 1 кг шоколадных конфет,

1 кг ирисок, а также во сколько раз шоколадные конфеты дороже ирисок.

Ввод и вывод данных, оператор присваивания

9

Begin35◦. Скорость лодки в стоячей воде V км/ч, скорость течения реки U км/ч

(U < V ). Время движения лодки по озеру T 1 ч, а по реке (против течения)

— T 2 ч. Определить путь S, пройденный лодкой (путь = время · скорость).

Учесть, что при движении против течения скорость лодки уменьшается

на величину скорости течения.

Begin36◦. Скорость первого автомобиля V 1 км/ч, второго — V 2 км/ч, расстоя-

ние между ними S км. Определить расстояние между ними через T часов,

если автомобили удаляются друг от друга. Данное расстояние равно сум-

ме начального расстояния и общего пути, проделанного автомобилями;

общий путь = время · суммарная скорость.

Begin37◦. Скорость первого автомобиля V 1 км/ч, второго — V 2 км/ч, расстоя-

ние между ними S км. Определить расстояние между ними через T часов,

если автомобили первоначально движутся навстречу друг другу. Данное

расстояние равно модулю разности начального расстояния и общего пути,

проделанного автомобилями; общий путь = время · суммарная скорость.

Begin38◦. Решить линейное уравнение A·x + B = 0, заданное своими коэффи-

циентами A и B (коэффициент A не равен 0).

Begin39◦. Найти корни квадратного уравнения A·x2 + B·x + C = 0, задан-

ного своими коэффициентами A, B, C (коэффициент A не равен 0), ес-

ли известно, что дискриминант уравнения положителен. Вывести внача-

ле меньший, а затем больший из найденных корней. Корни квадратного

уравнения находятся по формуле

x1, 2 = (−B ±

√

D)/(2·A),

где D — дискриминант, равный B2 − 4·A·C.

Begin40◦. Найти решение системы линейных уравнений вида

A1·x + B1·y = C 1,

A2·x + B2·y = C 2,

заданной своими коэффициентами A1, B1, C 1, A2, B2, C 2, если известно,

что данная система имеет единственное решение. Воспользоваться фор-

мулами

x = (C 1·B2 − C 2·B1)/D,

y = (A1·C 2 − A2·C 1)/D,

где D = A1·B2 − A2·B1.

10

М. Э. Абрамян. Электронный задачник Programming Taskbook 4.5