ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
11 июля
351700
bialix (04.09.2012 13:21 - 14:12, просмотров: 5258)
Обращаюсь к коллективному разуму. Подскажите название алгоритма (ссылки) для вычисления последовательности дробей. Задача: делаю пилообразный сигнал на ШИМ. Закон изменения ширины импульса: к предыдущему каждые M шагов прибавляем/вычитаем значение N. Для настроек на компе хочу дать пользователю возможность играться с углом наклона вместо игры с двумя значениями N и M. Собственно требования к алгоритму: нужно найти последовательность дробей N/M где N и M целые числа от 1 до 255. Понятно, что минимальное значение 1/255, а максимальное пусть будет 1/1. Идти с шагом 1/255 можно, но тогда у нас выпадают числа типа 1/2 или 1/7, а их тоже хочется иметь. Равномерность шагания мне не важна, но хотелось бы пройти все возможные сочетания по нарастающей/убывающей. Решением в лоб будет наверное просто сделать массив из 65 тыс. значений и затем отсортировать их, попутно удаляя дубликаты. И наверное будет ОК, но захотелось узнать может есть какой-то элегантный алгоритм на эту тему. Не могу только понять по каким ключевым словам гуглить? UPD: алгоритм будет работать на компьютере. Интерес мой вызван стремлением расширить кругозор.