М.Э. Абрамян - Programming Taskbook (1157415), страница 10
Текст из файла (страница 10)
С помощью этой функции найти периметрытреугольников ABC, ABD, ACD, если даны координаты точек A, B, C, D.Proc58. Используя функции Leng и Perim из заданий Proc56 и Proc57, описатьфункцию Area(xA , yA , xB , yB , xC , yC ) вещественного типа, находящуюплощадь треугольника ABC по формуле√S ABC = p·(p−|AB|)·(p−|AC|)·(p−|BC|),где p — полупериметр. С помощью этой функции найти площади треугольников ABC, ABD, ACD, если даны координаты точек A, B, C, D.Proc59.
Используя функции Leng и Area из заданий Proc56 и Proc58, описатьфункцию Dist(xP , yP , xA , yA , xB , yB ) вещественного типа, находящуюрасстояние D(P, AB) от точки P до прямой AB по формулеD(P, AB) = 2·S P AB /|AB|,где S P AB — площадь треугольника PAB. С помощью этой функции найтирасстояния от точки P до прямых AB, AC, BC, если даны координатыточек P, A, B, C.Proc60. Используя функцию Dist из задания Proc59, описать процедуруHeights(xA , yA , xB , yB , xC , yC , hA , hB , hC ), находящую высоты hA , hB , hC треугольника ABC (выходные параметры), проведенные соответственно извершин A, B, C (их координаты являются входными параметрами).
С помощью этой процедуры найти высоты треугольников ABC, ABD, ACD,если даны координаты точек A, B, C, D.46М. Э. Абрамян. Электронный задачник Programming Taskbook 4.6Минимумы и максимумыДля решения заданий из данной группы следует использовать «однопроходные» алгоритмы, позволяющие получить требуемый результат после однократного просмотра набора исходных данных. Однопроходные алгоритмыобладают важным преимуществом: для них не требуется хранить в памятиодновременно весь набор данных, поэтому при программной реализации этихалгоритмов можно не использовать массивы.Во всех заданиях данной группы предполагается, что исходный набор содержит ненулевое количество элементов (в частности, число N всегда большенуля).Minmax1◦ .
Дано целое число N и набор из N чисел. Найти минимальный имаксимальный из элементов данного набора и вывести их в указанномпорядке.Minmax2. Дано целое число N и набор из N прямоугольников, заданных своими сторонами — парами чисел (a, b). Найти минимальную площадь прямоугольника из данного набора.Minmax3. Дано целое число N и набор из N прямоугольников, заданных своими сторонами — парами чисел (a, b). Найти максимальный периметрпрямоугольника из данного набора.Minmax4◦ . Дано целое число N и набор из N чисел. Найти номер минимального элемента из данного набора.Minmax5.
Дано целое число N и набор из N пар чисел (m, v) — данные о массе m и объеме v деталей, изготовленных из различных материалов. Вывести номер детали, изготовленной из материала максимальной плотности, атакже величину этой максимальной плотности. Плотность P вычисляетсяпо формулеP = m/v.◦Minmax6 . Дано целое число N и набор из N целых чисел. Найти номерапервого минимального и последнего максимального элемента из данногонабора и вывести их в указанном порядке.Minmax7.
Дано целое число N и набор из N целых чисел. Найти номерапервого максимального и последнего минимального элемента из данногонабора и вывести их в указанном порядке.Minmax8. Дано целое число N и набор из N целых чисел. Найти номера первого и последнего минимального элемента из данного набора и вывестиМинимумы и максимумы47их в указанном порядке.Minmax9.
Дано целое число N и набор из N целых чисел. Найти номера первого и последнего максимального элемента из данного набора и вывестиих в указанном порядке.Minmax10. Дано целое число N и набор из N целых чисел. Найти номер первого экстремального (то есть минимального или максимального) элементаиз данного набора.Minmax11. Дано целое число N и набор из N целых чисел. Найти номерпоследнего экстремального (то есть минимального или максимального)элемента из данного набора.Minmax12◦ . Дано целое число N и набор из N чисел. Найти минимальноеположительное число из данного набора. Если положительные числа внаборе отсутствуют, то вывести 0.Minmax13.
Дано целое число N и набор из N целых чисел. Найти номер первого максимального нечетного числа из данного набора. Если нечетныечисла в наборе отсутствуют, то вывести 0.Minmax14. Дано число B (> 0) и набор из десяти чисел. Вывести минимальныйиз тех элементов набора, которые больше B, а также его номер. Есличисел, больших B, в наборе нет, то дважды вывести 0Minmax15. Даны числа B, C (0 < B < C) и набор из десяти чисел. Вывестимаксимальный из элементов набора, содержащихся в интервале (B, C),и его номер. Если требуемые числа в наборе отсутствуют, то дваждывывести 0.Minmax16. Дано целое число N и набор из N целых чисел. Найти количествоэлементов, расположенных перед первым минимальным элементом.Minmax17. Дано целое число N и набор из N целых чисел.
Найти количествоэлементов, расположенных после последнего максимального элемента.Minmax18. Дано целое число N и набор из N целых чисел. Найти количествоэлементов, содержащихся между первым и последним максимальным элементом. Если в наборе имеется единственный максимальный элемент, товывести 0.Minmax19◦ . Дано целое число N и набор из N целых чисел. Найти количествоминимальных элементов из данного набора.Minmax20. Дано целое число N и набор из N целых чисел.
Найти общее количество экстремальных (то есть минимальных и максимальных) элементовиз данного набора.48М. Э. Абрамян. Электронный задачник Programming Taskbook 4.6Minmax21. Дано целое число N (> 2) и набор из N чисел — значений некоторойвеличины, полученных в N опытах. Найти среднее значение этой величины. При вычислении среднего значения не учитывать минимальное имаксимальное из имеющихся в наборе значений.Minmax22◦ .
Дано целое число N (> 2) и набор из N чисел. Найти два наименьших элемента из данного набора и вывести эти элементы в порядкевозрастания их значений.Minmax23. Дано целое число N (> 3) и набор из N чисел. Найти три наибольших элемента из данного набора и вывести эти элементы в порядкеубывания их значений.Minmax24. Дано целое число N (> 1) и набор из N чисел.
Найти максимальнуюсумму двух соседних чисел из данного набора.Minmax25. Дано целое число N (> 1) и набор из N чисел. Найти номерадвух соседних чисел из данного набора, произведение которых являетсяминимальным, и вывести вначале меньший, а затем больший номер.Minmax26. Дано целое число N и набор из N целых чисел. Найти максимальное количество четных чисел в наборе, идущих подряд.
Если четныечисла в наборе отсутствуют, то вывести 0.Minmax27. Дано целое число N и набор из N целых чисел, содержащий тольконули и единицы. Найти номер элемента, с которого начинается самаядлинная последовательность одинаковых чисел, и количество элементовв этой последовательности. Если таких последовательностей несколько,то вывести номер первой из них.Minmax28. Дано целое число N и набор из N целых чисел, содержащий только нули и единицы. Найти номер элемента, с которого начинается самаядлинная последовательность единиц, и количество элементов в этой последовательности. Если таких последовательностей несколько, то вывестиномер последней из них.
Если единицы в исходном наборе отсутствуют,то дважды вывести 0.Minmax29. Дано целое число N и набор из N целых чисел. Найти максимальное количество подряд идущих минимальных элементов из данногонабора.Minmax30. Дано целое число N и набор из N целых чисел. Найти минимальноеколичество подряд идущих максимальных элементов из данного набора.Одномерные массивы49Одномерные массивыУсловие вида «дан массив размера N» означает, что вначале дается фактический размер массива (целое число N), а затем приводятся все его элементы.
Если в задании явно не указывается, какие значения может приниматьразмер исходного массива, то предполагается, что размер может изменяться впределах от 2 до 10. Индекс начального элемента массива считается равным 1.Если в задании, связанном с созданием (преобразованием) массива, неописан результирующий набор данных, то предполагается, что этим наборомявляется созданный (преобразованный) массив, и необходимо вывести все егоэлементы в порядке возрастания их индексов.Формирование массива и вывод его элементовВ заданиях на формирование массива предполагается, что размер результирующего массива не превосходит 10.Array1.
Дано целое число N (> 0). Сформировать и вывести целочисленныймассив размера N, содержащий N первых положительных нечетных чисел:1, 3, 5, . . . .Array2. Дано целое число N (> 0). Сформировать и вывести целочисленныймассив размера N, содержащий степени двойки от первой до N-й: 2, 4,8, 16, . . .
.Array3. Дано целое число N (> 1), а также первый член A и разность D арифметической прогрессии. Сформировать и вывести массив размера N, содержащий N первых членов данной прогрессии:A, A + D, A + 2·D, A + 3·D, . . . .◦Array4 . Дано целое число N (> 1), а также первый член A и знаменатель Dгеометрической прогрессии.
Сформировать и вывести массив размера N,содержащий N первых членов данной прогрессии:A, A·D, A·D2 , A·D3 , . . . .Array5. Дано целое число N (> 2). Сформировать и вывести целочисленныймассив размера N, содержащий N первых элементов последовательностичисел Фибоначчи F K :F 1 = 1,F 2 = 1,F K = F K−2 + F K−1 , K = 3, 4, .
. . .Array6. Даны целые числа N (> 2), A и B. Сформировать и вывести целочисленный массив размера N, первый элемент которого равен A, второй50М. Э. Абрамян. Электронный задачник Programming Taskbook 4.6равен B, а каждый последующий элемент равен сумме всех предыдущих.Array7◦ . Дан массив размера N. Вывести его элементы в обратном порядке.Array8. Дан целочисленный массив размера N.
Вывести все содержащиеся вданном массиве нечетные числа в порядке возрастания их индексов, атакже их количество K.Array9. Дан целочисленный массив размера N. Вывести все содержащиеся вданном массиве четные числа в порядке убывания их индексов, а такжеих количество K.Array10. Дан целочисленный массив размера N. Вывести вначале все содержащиеся в данном массиве четные числа в порядке возрастания их индексов,а затем — все нечетные числа в порядке убывания их индексов.Array11.