| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Object Pascal: кроссплатформенные технологии > задача на Паскале |
| Автор: Aleche 4.11.2004, 21:45 |
| Привет!!!!!Необходима помощь опытных программистов!!! Нужна программа.Задача следущая: Пусть дано натуральное число k.Напечатайте k-ю цифру последовательности 1123581321 ...,в которой выписаны подряд числа Фибоначчи.Фика втом,что использовать можно только простейшие операторы(нельзя применять массивы,функции...) |
| Автор: Zero 4.11.2004, 22:52 | ||
| Aleche, ничего проще я просто не видел... Пиши вот так:
|
| Автор: maxim1000 5.11.2004, 11:55 | ||
этот код выдаст k-тое число последовательности, а не k-ю цифру
|
| Автор: Zero 5.11.2004, 21:14 |
| Действительно, maxim1000, я что-то непредусмотрел, осталось узнать у автора, сможет ли он разобратся в твоём коде... |
| Автор: maxim1000 5.11.2004, 23:51 | ||
так все просто хотя я сам не люблю разбираться в чужом коде, поэтому немного облегчу эту задачу: функция Degree возвращает количество цифр в числе k считает цифры последовательности (точнее сколько осталось до нужной цифры) проверка (k<deg) означает, что искомая цифра принадлежит текущему числу если нет - пропускаем текущее число (сдвигаемся на deg цифр) и берем следующее число когда в конце концов доходим до нужного числа, начинаем вытаскивать из него нужную цифру цифры числа определяются так: берется остаток от деления на 10, потом число делится на 10 и опять только в этом случае числа получаются в порядке младший-старший а в указанной последовательности порядок другой, для этого и делается "разворот" k:=deg-1-k |
| Автор: Zero 5.11.2004, 23:58 | ||
Ну мне то просто, только он ещё такое написал:
Возможно он только начал изучать паскаль, и скорее всего ещё не проходил использования подпрограмм, поэтому, давай лучше подождём что он ответит... |
| Автор: maxim1000 6.11.2004, 00:32 |
| тут использование функции непринципиально, скорее для понятности можно просто вставить ее код в основную |
| Автор: Aleche 6.11.2004, 16:45 |
| Спасибо,ребята!Я действительно только начала изучать Паскаль. |
| Автор: VingradFan 22.5.2007, 22:05 |
| Всем привет. У меня аналогичная задача, с той лиш разницей, что нужно написать первые к чисел ряда фибоначчи с помощью процедуры и ее рекурсивного вызова. Только не надо кидать мне код, так не интересно...лучше намекните непрозрачно, как это организовать Заранее спасибо. |