Між фракціями
Змагання:
Вам потрібно буде створити код, який займає принаймні 3 входи; 2 цілих числа та "представлення дробу" - який би тип не відповідав вашій мові для представлення приростів дробу), тобто. Якщо ви виберете рядок, вхід буде "1/4" або ви можете вибрати 2 додаткові цілі входи, або кортеж або w / e.
Введення може бути де завгодно розумним (STDIN, аргументи функції, з файлу тощо), і так може виводити (STDOUT, значення повернення функції, у файл тощо)
Правила:
- Вхідна "частка" завжди буде дійсною часткою, меншою за 1; приклад "1/4"
- Друге вхідне ціле число завжди матиме більше значення, ніж перше ціле число. IE, перше вхідне ціле число завжди матиме нижче значення, ніж друге.
- Цілі числа можуть бути від’ємними.
- Виведені дроби повинні бути максимально зменшені (спрощені)
Коду потрібно буде виводити кожен "крок дробу" між двома числами з кроком вхідного дробу.
Код повинен бути програмою або функцією, як зазначено тут
Приклад 1:
Вхід: -2,3,"1/2"
Вихід:
-2
-3/2
-1
-1/2
0
1/2
1
3/2
2
5/2
3
Приклад 2:
Вхід: 1,2,"2/3"
Вихід:
1
5/3
2
або
1
4/3
2
Примітка. Підрахунок може починатися в будь-якому напрямку (дякую @Mego)
Це код-гольф , тому найкоротша відповідь у байтах виграє.