Рекурсивная функция в VDM
Как бы я определить рекурсивную функцию, чтобы найти наибольшую степень двух меньше, чем входное число в VDM?
Функция выглядит следующим образом:
наибольшее: N -> N
Все, что у меня есть, это:
самый большой (n) =
если n=1, то 0
иначе, если n=2, то 1
еще... самый большой (...)
1 ответ
Это было бы что-то вроде "еще один плюс наибольшая половина этого числа". Но так как это выглядит подозрительно как упражнение, я позволю вам проработать мелкие детали.