CSCB324

Задачи 2023

Задача 5: Фибоначи20
Обобщена редица на Фибоначи дефинираме по следния начин:
 F(n) = a*F(n - 1) + b*F(n - 2)
 за n > 2,  при зададени F(1) = F(2) = 1.
 Да се напише програма за проверка дали дадено число е елемент от такава редица и ако е елемент, да се намери индексът му в редицата.

Вход
 От стандартния вход се четат последователно числата a, b, броят на числата за проверка и самите числа. Входът съдържа по-малко от 100 примери, всеки задаващ различна обобщена редица на Фибоначи.

Ограничения
0 < a, b < 100,
Броят на числата за проверка, по-малък от 10000
Числата за проверка са в интервала [0, 1000000]

Изход
За всяко проверено число на нов ред се извежда индексът му, ако числото е от съответната обобщена редица на Фибоначи или 0 - ако не е.

Примерен вход:
1 1
4
13 14 9 5
1 2
1
341


Решение:
7
0
0
5
10


Задача 6: Дроби20

Да се напише програма за пресмятане на аритметични изрази, съдържащи събиране и изваждане на прости дроби. Резултатът да се представи като несъкратима дроб.

Стандартен вход
Всеки пример се задава със суми и разлики на дроби на отделен ред (виж примера по-долу). Входът съдържа няколко примера.

Ограничения
Всички числа в израза са цели положителни числа и по-малки от 10000.

Стандартен
изход

 За всеки пример на изхода се записва резултата като несъкратимата дроб по същия начин, както зададените на входа дроби. Когато решението е цяло число, то се записва по нормалния начин.
 
Примерен вход:
1/2 + 1/3 - 1/6
10/4 - 2/4


Решение:
2/3
2