Использование рекурсивных вызовов в программах на языке Си. Лясин Д.Н - 14 стр.

UptoLike

Составители: 

14
10. Написать функцию которая методом деления отрезка
пополам (методом дихотомии) находит с точностью eps корень уравнения
f(x) = 0 на отрезке [a,b] ( ). Метод дихотомии
определяется следующим образом. Если f(a) и f(b) имеют разные знаки, то
между точками a и b существует корень R. Пусть средняя точка в
интервале Если f(m) = 0, то корень R=m. Если нет, то либо f(a) и
f(m) имеют разные знаки , либо f(m) и f(b) имеют разные
знаки . Если , то корень лежит в интервале В
противном случае он лежит в интервале Теперь выполним это
действие для нового интервала половины исходного интервала. Процесс
продолжается до тех пор, пока интервал не станет меньше eps.
11. Ввести последовательность чисел (окончание ввода0) и вывести их
в обратной последовательности.
12. Подсчитать сумму цифр в десятичной записи заданного числа.
Дополнительные варианты заданий.
1*. Расстояния между городами заданы матрицей (Если между городами
i,j есть прямой путь с расстоянием N, то элементы матрицы A(i,j) и A(j,i)
содержат значение N, иначе 0). Написать программу поиска минимального
пути для произвольной пары городов.
2*. Вычислить определитель матрицы, пользуясь формулой разложения
по первой строке:
где матрица B
k
получается из A вычеркиванием первой строки и k-го
столбца.
3*. Реализовать рекурсивный алгоритм построения цепочки из
имеющегося набора костей домино.
4*. Несколько человек должны перейти ночью реку через мост. По
мосту одновременно могут пройти только 2 человека, в наличии имеется
лишь один фонарик (двое переходят мост, обязательно с фонарем, затем
один должен вернуться назад с фонариком). Если заданы скорости
движения каждого человека s
i
, написать программу, которая предложит
схему прохождения всех людей через мост за наименьшее время.
5*. Задан набор слов. Построить из них любую цепочку таким образом,
чтобы символ в конце слова совпадал с символом в начале следующего.
6*. Написать процедуру печати всех перестановок из n символов.
   10. Написать функцию            которая методом деления отрезка
пополам (методом дихотомии) находит с точностью eps корень уравнения
f(x) = 0 на отрезке [a,b] (                       ). Метод дихотомии
определяется следующим образом. Если f(a) и f(b) имеют разные знаки, то

между точками a и b существует корень R. Пусть          – средняя точка в
интервале        Если f(m) = 0, то корень R=m. Если нет, то либо f(a) и
f(m) имеют разные знаки                , либо f(m) и f(b) имеют разные
знаки            . Если           , то корень лежит в интервале        В
противном случае он лежит в интервале             Теперь выполним это
действие для нового интервала – половины исходного интервала. Процесс
продолжается до тех пор, пока интервал не станет меньше eps.
  11. Ввести последовательность чисел (окончание ввода – 0) и вывести их
в обратной последовательности.
  12. Подсчитать сумму цифр в десятичной записи заданного числа.

  Дополнительные варианты заданий.

   1*. Расстояния между городами заданы матрицей (Если между городами
i,j есть прямой путь с расстоянием N, то элементы матрицы A(i,j) и A(j,i)
содержат значение N, иначе 0). Написать программу поиска минимального
пути для произвольной пары городов.
   2*. Вычислить определитель матрицы, пользуясь формулой разложения
по первой строке:


  где матрица Bk получается из A вычеркиванием первой строки и k-го
столбца.
  3*. Реализовать рекурсивный алгоритм построения цепочки из
имеющегося набора костей домино.
  4*. Несколько человек должны перейти ночью реку через мост. По
мосту одновременно могут пройти только 2 человека, в наличии имеется
лишь один фонарик (двое переходят мост, обязательно с фонарем, затем
один должен вернуться назад с фонариком). Если заданы скорости
движения каждого человека si, написать программу, которая предложит
схему прохождения всех людей через мост за наименьшее время.
   5*. Задан набор слов. Построить из них любую цепочку таким образом,
чтобы символ в конце слова совпадал с символом в начале следующего.
  6*. Написать процедуру печати всех перестановок из n символов.




                                   14