Здавалка
Главная | Обратная связь

Лабораторная работа № 1, 3 семестр. Тема: функции

Решите задачи своего варианта задания, используя подпрограммы-функции. Задача 1 решается без использования массивов в качестве параметров функций, а задача 2 – с массивами в качестве параметров функций. Протестируйте основную функцию каждой задачи, вызвав её не менее 2 раз с различными параметрами.

 

Варианты задачи 1:

1. Напишите подпрограмму, которая сравнивает два числа и возвращает результат в виде символа ‘<’ или ‘>’ или ‘=’.

2. Напишите подпрограмму, определяющую, попадает ли вещественное значение a в интервал [x1,x2].

3. Напишите подпрограмму, которая определяет, является ли введенный символ гласной буквой русского или латинского алфавита.

4. Напишите подпрограмму перевода декартовых координат точки на плоскости в полярные.

5. Напишите подпрограмму, которая по введенным координатам вершин треугольника находит его периметр и площадь.

6. Напишите подпрограмму вычисления скалярного произведения векторов на плоскости.

7. Напишите подпрограмму, печатающую первые N членов ряда Фибоначчи и проверьте ее для N=10 и N=40. Члены ряда Фибоначчи вычисляются по формулам: F0=0, F1=1, FN=FN‑1+FN‑2, N = 2, 3, …

8. Напишите подпрограмму, определяющую прибыль от вклада под p% годовых через N лет для случая простых процентов.

9. Напишите подпрограмму, определяющую прибыль от вклада под p% годовых через N лет для случая сложных процентов.

10. Напишите подпрограмму, определяющую, принадлежит ли точка с координатами (x,y) кругу радиуса r с центром в точке (a,b).

11. Напишите программу вычисления суммы , используя подпрограмму вычисления факториала.

12. Напишите программу вычисления суммы . Вычисление факториала оформите подпрограммой.

13. Напишите программу вычисления суммы . Вычисление факториала оформите подпрограммой.

14. Напишите программу вычисления суммы всех положительных чисел, факториал которых не превосходит заданного числа M. Вычисления факториала оформите подпрограммой.

15. Напишите программу вычисления интеграла , где . Вычисление оформите подпрограммой.

16. Напишите программу вычисления корня уравнения , используя итерационную формулу:

; k = 0, 1, 2, … ; . - левая часть уравнения. Вычисления прекратить, когда . Значения и вычислить, используя подпрограммы.

17. Напишите подпрограмму вычисления корней квадратного уравнения. Программа должна учитывать все возможные сочетания нулевых и ненулевых значений коэффициентов a, b, c.

18. Написать программу поиска наибольшего общего делителя (НОД) двух положительных целых чисел. Примечание: НОД ищется по алгоритму Евклида:

Пока x и y не равны 0, выполнять цикл

Если x>y, то x=остатку от деления x на y

Иначе y=остатку от деления y на x

Конец цикла

Ответ=x+y

19. Написать программу определения дня недели по введенным значениям «день», «месяц» и «год». Примечание: используйте формулу Зеллера

nday= ( [26*(m+1)/10]+d+y+[y/4]+[c/4]-2*c )%7

Здесь [] – обозначение целой части числа, % - взятие остатка от деления, D- день месяца, M – номер месяца, Y – год столетия (0-99), C – номер столетия (=20 для 21 века), dday – полученный день недели (0-Сб, 1-Вс, …, 6-Пт). Январь и февраль считаются как месяцы 13 и 14 предыдущего года.

20. Решить систему линейных уравнений:

Для решения системы воспользоваться формулами Крамера:

; , где

; ; .

21. Дано вещественное число y. Вычислить значение z по формуле:

, . Вычисление t(x) оформить функцией.

22. Даны стороны трех треугольников: (a1, b1, c1), (a2, b2, c2), (a3, b3,c3).Вычислить радиусы окружностей, вписанных в треугольники и найти минимальный радиус. Радиус окружности, вписанной в треугольник определить по формуле: , - площадь треугольника; - полупериметр треугольника.

 

23. В заданном наборе координат точек (xi, yi), i=1,2,…,5, найти две точки, расстояние между которыми минимально, и вывести на печать их номера. Для вычисления расстояния между двумя точками (x1,y1) и (x2,y2) по формуле

использовать функцию.

 

24. Найти решение системы уравнений

2g + b = 138

25g + 3b = 540

Решение системы уравнений вида

x + y = t1

ax + by = t2

оформить в виде подпрограммы.

25. Дано целое положительное число n (1≤n≤100). Найти сумму всех делителей этого числа. Поиск делителей числа оформить в виде подпрограммы.

 

Варианты задачи 2:

 

1. Напишите подпрограмму вычисления произведения вида , где u – заданный вектор, N – верхний предел интегрирования.

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

3. Напишите подпрограмму, определяющую центр масс множества точек на плоскости.

4. Напишите подпрограмму, преобразующую матрицу размерностью N*M в вектор соответствующей размерности. Возможно сканирование матрицы как по строкам, так и по столбцам, в зависимости от значения дополнительного параметра.

5. Напишите подпрограмму, определяющую наибольшее по модулю отклонение элементов двумерного массива от их среднего значения.

6. Напишите подпрограмму, которая по переданной матрице размерностью N*M, содержащей оценки за сессию группы студентов из N человек по M предметам, создает вектор, содержащий размеры стипендий для каждого из студентов. Стипендия в 1300 рублей начисляется отличникам, 900 рублей – хорошистам, для остальных студентов вместо размера стипендии в соответствующий элемент вектора записывается 0.

7. Напишите подпрограмму, которая по переданным координатам многоугольника, записанным в массив размерностью N*2, определяет размеры объемлющей все точки многоугольника прямоугольной области. Стороны прямоугольника при этом параллельны осям координат.

8. Напишите подпрограмму, которая по заданному числу экспериментов N формирует N целых случайных чисел из интервала [0,K] и возвращает выраженную в процентах относительную частоту каждого из чисел в общей выборке.

9. Напишите подпрограмму, определяющую, является ли квадратная матрица P симметричной относительно главной диагонали.

10. Напишите программу формирования массива A по правилу: , где , . Для вычисления и используйте подпрограммы.

11. Дана функция . Напишите программу формирования массива A, используя подпрограмму для вычисления , по правилу:

.

12. Даны две функции: , . Напишите программу формирования массива A, используя подпрограммы для вычисления и , по правилу:

.

13. Напишите программу формирования массива по формуле: , где . Вычисление оформите подпрограммой.

14. Задан массив положительных чисел Х. Напишите программу формирования массива Y по правилу: . Вычисление оформите подпрограммой.

15. Задан массив из 10 чисел Х. Напишите программу формирования массива Y по правилу: , где . Вычисление оформите подпрограммой.

16. Задан массив из 50 чисел Х. Напишите программу формирования массива Y по правилу: , где . Вычисление оформите подпрограммой.

17. Напишите подпрограмму вычисления определителя квадратной матрицы третьего порядка.

18. Найти в массиве и вывести значение наиболее часто встречающегося элемента.

19. Найти в массиве элемент, наиболее близкий к среднему арифметическому суммы его элементов.

20. Разделить массив на две части, поместив в первую элементы, большие среднего арифметического их суммы, а во вторую - меньшие (части не сортировать).

21. Сформировать массив простых чисел, не больших заданного.

22. Заданы два упорядоченных по возрастанию массива. Составить из их значений третий, также упорядоченный по возрастанию (слияние).

23. Найти в массиве наибольшее число подряд идущих одинаковых элементов (например {1,5,3,l 6,6,6,6,6,3,4,4,5,5,5} = 5).

24. Реализовать операцию объединения множеств над целочисленными массивами, считать, что в каждом из массивов нет повторяющихся значений.

25. Реализовать операцию пересечения множеств над целочисленными массивами, считать, что в каждом из массивов нет повторяющихся значений.

 





©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.