Вычисления с использованием подпрограмм



Дважды вычислить значение выражения, первый раз используя процедуру, а второй – функцию.

1. .

2. .

3. .

4. .

5. .

6. .

7. .

8. .

9. .

10. .

11. .

12. .

13. .

14. .

15. .

16. .

17. .

18. .

19. .

20. .

21. .

22. .

23. .

24. .

25. .

26. .

27. .

28. .

29. .

30. .

 

Обработка массивов с использованием подпрограмм

1. Ввести одномерные массивы ,  и . Заменить в каждом из них максимальный элемент средним арифметическим положительных элементов (если оно существует) соответствующего массива. Вывести массивы до преобразования и после (при решении реализовать процедуры ввода и вывода массивов Vvod1m (A, N, Name) и Vi vod1m (A, N, Name), а также функции IndMax (A, N): byte и  SrAPol (A, N): real – поиск индекса  максимума и поиск среднего арифметического положительных элементов (равно нулю, если положительных нет)).

2. Ввести матрицы  и . В матрицах найти максимумы, которые вывести. Преобразовать каждую матрицу, уменьшив ее положительные элементы на значение максимума другой матрицы. Исходные и преобразованные матрицы вывести на экран (при решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, M , Name), Vi vod2m (A, N, M , Name) и Zamena (A, N, M , Vichet ) – уменьшение положительных элементов матрицы на величину Vichet, а также  функцию Maximum (A, N, M ): < тип массива > – поиск максимума).

3. Ввести одномерные массивы ,  и . Определить в каждом

из них среднее арифметическое отрицательных элементов. Если среднее арифметическое отрицательных существует, то поместить его в четные ячейки соответствующего массива. Вывести массивы до преобразования и после (при решении реализовать процедуры ввода и вывода массивов Vvod1m (A, N, Name) и Vi vod1m (A, N, Name), функцию SrArOtr (A, N): real – поиск среднего арифметического отрицательных, которая равна нулю, если отрицательных нет, и процедуру ZamenaChet (A, N, Chislo ) – замена четных ячеек значением Chislo).

4. Ввести квадратные матрицы ,  и . Найти минимальное из трех чисел: , , , каждое из которых является следом соответствующей матрицы (суммой диагональных элементов). В матрицах поменять местами первую строку и побочную диагональ. Матрицы вывести до и после преобразования (при решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, Name), Vi vod2m (A, N, Name), а также функции Trace (A, N): < тип массива > – поиск следа и Min ( p , q ): < тип массива > – минимум среди двух чисел; Zamena (A, N) – замена первой строки и побочной диагонали в матрице).

5. Ввести двумерные массивы  и . Найти наибольший элемент в каждом из массивов. В каждой матрице записать в строку, содержащую этот элемент, нули, исключая сам максимальный элемент. Вывести на экран матрицы до преобразования и после (при решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, M , Name), Vi vod2m (A, N, M , Name) и ZamenaStr (A, Iz , M , Jz ) – замена нулями элементов строки Iz, кроме элемента, расположенного в столбце Jz , а также процедуру Maximum (A, N, M , Imax, Jmax) – поиск координат максимума).

6. Ввести одномерные массивы ,  и . Разделить каждый из элементов на максимальный элемент среди отрицательных элементов соответствующего массива. Массивы вывести на экран до и после преобразования (или сообщение о невозможности преобразования), (при решении реализовать процедуры ввода и вывода массивов: Vvod1m (A, N, Name) и Vi vod1m (A, N, Name), функцию MaxOtr (A, N): < тип массива > – максимум среди отрицательных, которая равна нулю, если отрицательных нет, и процедуру Delenie (A, N, Chislo ) – деление элементов массива на Chislo).

7. Ввести двумерные массивы , . Заменить в каждом массиве элементы главной диагонали на произведение положительных элементов противоположной матрицы. Матрицы вывести на экран до и после преобразования (если преобразование невозможно, то вывести соответствующее сообщение), (при решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, Name), Vi vod2m (A, N, Name), а также функцию PrPol (A, N): < тип массива > – поиск произведения положительных (равна нулю при их отсутствии) и процедуру ZamenaDiag ( A , N , Chislo ) – замена диагонали значением Chislo).

8. Ввести двумерные массивы , . Переписать элементы строки матрицы, содержащей минимальный элемент, соответственно в одномерные массивы  и . Обе матрицы и массивы вывести на экран (при решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, M , Name), Vi vod2m (A, N, M , Name), Vi vod1m (A, N, Name), а также функцию IndMin (A, N, M ): byte – индекс строки,  содержащей  минимум, и процедуру FormFromStr ( A , B , M , Str ) – перепись из A в B строки Str).

9. Ввести одномерные массивы , . Определить новый вектор-массив  как: , где знак «*» означает, что все компоненты этого вектора получены из исходного путем его деления на максимальную компоненту (производится нормировка), (при решении реализовать процедуры ввода и вывода массивов: Vvod1m (A, N, Name) и Vi vod1m (A, N, Name), функцию MaxOtr (A, N): < тип массива > – максимум массива, процедуру Delenie (A, N, Chislo ) – деление элементов массива на значение Chislo, процедуру Form (A1, A 2, A 3, N) – формирование третьего массива из пары исходных).

10.  Ввести двумерные массивы , . Если максимальный элемент массива  больше максимального элемента массива , то заменить им все отрицательные элементы обеих матриц. В противном  случае – все положительные элементы. Массивы до и после преобразования вывести на экран (при решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, M , Name), Vi vod2m (A, N, M , Name), а также функцию Maximum (A, N, M ): < тип массива > – максимум массива и процедуры ZamenaPol ( A , N , M , Chislo ), ZamenaOtr ( A , N , M , Chislo ) – замена соответственно положительных и отрицательных элементов значением Chislo).

11.  Ввести двумерные массивы , . Переписать элементы столбцов обеих матриц, содержащих максимальные элементы в своих матрицах, в одномерный массив . Обе матрицы и массив  вывести на экран (при решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, M , Name), Vi vod2m (A, N, M , Name), Vi vod1m (A, N, Name), а также функцию IndMin (A, N, M ): byte – индекс столбца, содержащего минимум, и процедуру Form ( A 1 , A 2, B , N 1, N 2, Stlb 1, Str 2) – перепись из A 1, A 2 в одномерный массив B столбцов Stlb 1, Stlb 2).

12.  Ввести двумерные массивы , , . Заменить в них элементы побочной диагонали на произведение положительных и кратных трем элементов соответствующей матрицы. Исходные и преобразованные матрицы вывести на экран (или сообщение о невозможности преобразования), (при решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, Name), Vi vod2m (A, N, Name), функцию PrKr 3 Pol (A, N): integer – поиск произведения положительных и кратных трем (если произведение не существует, то функция равна нулю), процедуру ZamenaDiag ( A , N , Chislo ) – замена побочной диагонали значением Chislo).

13.  Ввести двумерные массивы , . В этих массивах найти минимальные элементы. Преобразовать каждую матрицу, увеличив ее отрицательные элементы на значение минимального по модулю элемента другой матрицы. Исходные и преобразованные матрицы вывести на экран (при решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, M , Name), Vi vod2m (A, N, M , Name), а также функцию MinimumMod (A, N, M ): < тип матрицы > – поиск минимального по модулю элемента, процедуру ZamenaOtr ( A , N , M , Chislo ) – увеличение элементов матрицы на значение Chislo).

14.  Ввести двумерные массивы , , . В каждом массиве найти среднее арифметическое положительных элементов. Преобразовать каждый из массивов по правилу: деление элементов 1-го столбца на сумму положительных элементов 1-й строки, элементы 2-го столбца на сумму положительных элементов 2-й строки и т. д. (при решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, Name), Vi vod2m (A, N, Name), а также процедуру Modification (A, N) – деление столбцов на суммы строк и функцию SrAPol (A, N): real – поиск среднего арифметического положительных элементов (равно нулю, если положительных нет)).

15.  Ввести двумерные массивы , . Получить массив , элементы которого вычисляются по формуле  и  по формуле . Вывести все вышеупомянутые массивы вместе со значением соответствующего максимума среди элементов главной диагонали (при решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, Name), Vi vod2m (A, N, Name), а также процедуру Summ (A, Ax , Ay , N ) – суммирование матриц Ax, Ay с сохранением результата в A и функцию поиска максимума среди элементов главной диагонали – MaxDiag (A, N): < тип массива >).

16.  Ввести двумерные массивы , , . Получить массив  по формуле  и  по формуле . Все вышеупомянутые массивы вывести (при решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, M , Name), Vi vod2m (A, N, M , Name), а также процедуру Sozd (A, Ax , Ay , Az , N , M ) – создание матрицы A на основе Ax , Ay , Az и функцию Max ( p , q ): < тип массива > – максимум среди пары элементов).

17.  Ввести двумерные массивы , , . Для этих матриц найти  – минимум среди минимальных элементов и  – минимум среди максимальных элементов, которым заменить нулевые элементы в каждом массиве. Вывести массивы до и после замены (при решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, M , Name), Vi vod2m (A, N, M , Name), а также функции Min 2 mass (A, N , M ): < тип массива > и Max 2 mass (A, N , M ): < тип массива > – поиск минимума и максимума в матрицах и функцию Min ( p , q ): < тип массива > – минимум среди пары элементов, ZamenaZero ( A , N , M , Chislo ) – замена нулевых элементов значением Chislo).

18.  Ввести квадратные двумерные массивы ,  и . Вывести эти матрицы. Найти , где  – произведение диагональных элементов (главной и побочной) и , где  – максимумы вышеупомянутых матриц. Значением  заменить нулевые элементы в каждой из матриц (при решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, Name), Vi vod2m (A, N, Name), а также функции SumDiag (A, N ): < тип массива > – сумма диагональных элементов и Maximum (A, N ): < тип массива > – поиск максимума в матрице, а также процедуру замены нулевых элементов значением Chislo: ZamenaZero ( A , N , M , Chislo )).

19.   Ввести квадратные двумерные массивы  и . Вывести эти матрицы. В матрицах вычислить и отпечатать средние арифметические элементов, расположенных под главной диагональю, которыми заменить элементы побочной диагонали противоположной матрицы (п ри решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, Name), Vi vod2m (A, N, Name), а также функция SrArDiag (A, N ): real – среднее арифметическое поддиагональных элементов и ZamenaPoboch (A, N , Chislo ) – замена побочных элементов на значение Chislo).

20.  Для заданных четырех матриц , ,  и  найти и напечатать длины векторов  и , где  – суммы положительных элементов соответствующих матриц. Следует напомнить, что длина вектора вычисляется как квадратный корень из суммы квадратов координат (п ри решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, Name), Vi vod2m (A, N, Name), а также функции SummPol (A, N ): < тип массива > – сумма положительных элементов и Dlina ( p , q , r ): real – длина вектора с координатами p,q,r).

21.  Ввести три матрицы , , . Вычислить и отпечатать значение функции , если  вводится с клавиатуры,  – следы матриц , ,  (следом матрицы называется сумма элементов главной диагонали). Значением  заменить нулевые элементы выше главной диагонали в каждой из матриц. Матрицы вывести до и после преобразования (п ри решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, Name), Vi vod2m (A, N, Name), а также функцию Sled (A, N ): < тип массива > – след и процедуру Zamena (A, N, Chislo ) – замена нулевых элементов выше главной диагонали на Chislo).

22.  Ввести три массива , , . Найти и вывести на экран  – минимальное из трех чисел:  (количества положительных чисел для каждого из массивов).  Значением  заменить нулевые элементы в каждом из массивов. Массивы вывести до и после преобразования (п ри решении реализовать процедуры ввода и вывода массивов: Vvod1m (A, N, Name), Vi vod1m (A, N, Name), а также функцию KolPol (A, N ): byte – количество положительных и процедуру Zamena (A, N, Chislo ) – замена нулевых элементов значением Chislo).

23.  Ввести одномерные массивы целых чисел , , . Определить в каждом массиве среднее арифметическое положительных элементов, кратных 5 или 3, и записать его целую часть (встроенная функция целой части: trunc ( x )) на место первого, последнего и предпоследнего элемента соответствующего массива (при условии существования среднего арифметического). Вывести массивы до преобразования и после, при невозможности вычислить среднее арифметическое вывести соответствующее сообщение (при решении реализовать процедуры ввода и вывода массивов: Vvod1m (A, N, Name), Vi vod1m (A, N, Name), а также функцию SrAkr 53 (A, N ): real – среднее арифметическое положительных, кратных пяти или трем (функция равна «–1», если оно не существует), и процедуру Zamena (A, N, Chislo ) – замена первого, последнего и предпоследнего значением Chislo).

24.  Ввести одномерные массивы , , . Найти и отпечатать максимальные по модулю отрицательные элементы в каждом из массивов. Найденными значениями заменить положительные элементы соответствующих массивов (п ри решении реализовать процедуры ввода и вывода массивов: Vvod1m (A, N, Name), Vi vod1m (A, N, Name), а также функцию MaxModOtr (A, N ): < тип массива > – максимальное по модулю отрицательное (функция равна нулю при отсутствии отрицательных) и процедуру Zamena (A, N, Chislo ) – замена положительных элементов значением Chislo).

25.  Ввести квадратные матрицы , . Обменять главную и побочные диагонали у той матрицы, у которой значение суммы ее элементов окажется больше. Матрицы вывести до и после преобразования (п ри решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, Name), Vi vod2m (A, N, Name); а также функцию Summa (A, N ): < тип массива > – сумма элементов и процедуру Obmen (A, N) – обмен диагоналей в матрице).

26.  Ввести квадратные матрицы , . Заменить первой строкой одной матрицы первую строку другой матрицы. Матрица, строка которой будет дублирована в другой матрице, определяется минимальным значением (у какой матрицы минимальный элемент меньше, та и является донором, т.е. источником). Матрицы вывести до и после преобразования вместе со значением их минимумов (п ри решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, M , Name), Vi vod2m (A, N, M , Name), а также функцию Minimum (A, N , M ): < тип массива > – минимум матрицы и процедуру Zamena (A1, A 2, M , Str ) – замена строки номер Str в матрице A1 строкой Str в матрице A 2).

27.  Ввести квадратные матрицы , . Матрицу, у которой над побочной диагональю окажется больше четных элементов, транспонировать. Матрицы вывести до и после преобразования (п ри решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, Name), Vi vod2m (A, N, Name), а также функцию ChetNadPob (A, N ): byte – количество четных над побочной диагональю и процедуру Transp (A, N) – транспонирование матрицы).

28.  Ввести матрицы , . Матрицу, у которой сумма элементов последнего столбца окажется меньше, преобразовать. Преобразование заключается в замене отрицательных элементов каждой строки суммой положительных элементов этой строки. Матрицы вывести до и после преобразования (п ри решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, M , Name), Vi vod2m (A, N, M , Name), а также функцию SumPoslStlb (A, N ): < тип матрицы > – сумма элементов последнего столбца и процедуру Modif (A, N, M ) – замена элементов в строках).

29.   Ввести матрицы , . Сформировать из матриц пару одномерных массивов  и , в которые поместить положительные элементы соответствующих матриц. В одномерных массивах найти количество четных элементов и вывести их вместе с самими массивами (п ри решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, M , Name), Vi vod2m (A, N, M , Name), Vi vod1m (A, N, Name), процедуру FormPol ( A , Na , Ma , B , Nb ) – формирование из положительных элементов двумерного массива A одномерного массива B, а также функцию KolChet (A, N ): byte – количество четных элементов в одномерном массиве).

30.   Ввести матрицы , . Сформировать из матриц пару одномерных массивов  и , в которые поместить элементы, превышающие среднее арифметическое соответствующих матриц (при решении реализовать процедуры ввода и вывода массивов: Vvod2m (A, N, M , Name), Vi vod2m (A, N, M , Name), Vi vod1m (A, N, Name), процедуру Form ( A , Na , Ma , B , Nb , Chislo ) – формирование из элементов двумерного массива A, превышающих значение Chislo, одномерного массива B, функцию SrA (A, N , M ): real – среднее арифметическое элементов двумерного массива).

 

 


Дата добавления: 2018-09-22; просмотров: 380; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!