Предлагаю вам решить ещё несколько задач. Вот они:
1)Найти и вывести на экран число, меньшее 250, которое при делении на 2 даёт в
остатке 1, при делении на 3 даёт в остатке 2, при делении на 4 — 3, на 5 — 4, на 6 — 5, но на 7 делится нацело.
2)Для заданных 4-х точек на плоскости найти пути минимального и максимального обхода их по замкнутому маршруту (под обходом понимается замкнутая ломаная линия, проходящая через каждую точку не более одного раза, кроме начальной).
Пимер координат:
x y
0 0
0 3
4 0
5 10
3) Фокусник раскладывает колоду карт (52 листа, 4 масти) по одной карте сверху на 4 кучки. Затем кучки складываются в колоду в порядке возрастания номеров (внизу первая). Данный процесс повторяется n раз, после чего в кучках оказываются карты одной масти, расположенные в возрастающем порядке : нижняя-двойка, верхняя туз (1 кучка — пики, 2 — трефы, 4- черви). Во всех действиях карты лежат рубашкой вверх. В каком порядке фокусник должен сложить карты в колоду перед показом фокуса?
Требования: Число n вводится с клавиатуры.
Ответ представить в виде 4-х строк на экране по 13 карт в строке.
Карты обозначаются: 2п — двойка пик, 10б — десятка бубен, тч — туз черви.
Я предлагаю вам решить следующие задачи, из олимпиады, предложенной на нашей школьной олимпиаде в 2000 году(средняя сложность):
1)Сумма цифр x равна y, а сумма цифр числа у равна z. Найти x если x+y+z=60.
2)Дано натуральное число c. Заменить в нём все ‘пятёрки’ на ‘единицы’.
3)Расшифруйте ребус: т р и — д в а = я р д.
4)Дано число N в десятичной системе счисления. Найти количество цифр и количество единиц в его двоичном представлении.
5)В целочисленном массиве A, содержится N элементов.Найти число повторяющееся максимальное число раз. Если этих чисел несколько, то выбрать одно из них.
Удачи…
Давайте сегодня рассмотрим алгоритмы решения некоторых задач:
Задача 1 Триангуляция (на 6 баллов)
Даны координаты вершин квадрата на плоскости. Внутри квадрата имеется n точек. Рассматриваются эти точки вместе с вершинами квадрата, причём никакие 3 из них не лежат на одной прямой. Описать алгоритм разбиения квадрата на непересекающиеся треугольники с вершинами в данных точках.
Решение:
Разбиение геометрической фигуры на элементарные треугольники называется триангуляция. Этот процесс часто применяется и в математике и в информатике, и во многих инженерных задачах. В данной задаче вершины элементарных треугольников заданы.
Проведём диагональ данного квадрата и решим отдельно задачу для двух получившихся треугольников. Объединение решений, очевидно, даст искомое решение исходной задачи.
Приведём рекурсивный алгоритм триангуляции треугольника.
Алгоритм Триангуляция:
Если точек, попавших внутрь данного треугольника нет, то добавляем данный треугольник в итоговый список.
В противном случае, выбираем точку внутри треугольника, соединяем её с вершинами треугольника и применяем алгоритм ‘Триангуляция’ к каждому из 3 образовавшихся тр-ков.
Задача 2. Числа Фибоначчи (на 6 баллов)
Что такое числа Фибоначчи, я надеюсь, нет нужды объяснять — это такая последовательность, где каждый следующий член — сумма 2-х предыдущих, а первые два члена — 1,1.
Лучше всего использовать следующий рекурсивный алгоритм функции:
Fib(n:integer):integer;
Begin
If n<3 then fib:=1
Else fib:=fib(n-1)+fib(n-2);
End;