Форум Фотогалерея Деловой мир Мелитополя
Мелитополь
Мелитопольский форум
 
 RSS  FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Маленькое развлечение

 
Начать новую тему   Ответить на тему    Список форумов Мелитополь -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
VX

Горожанин


Пол: Пол: Оно
Зарегистрирован: 03.10.2005
Сообщения: 139

Репутация: 12.1
голосов: 1

СообщениеДобавлено: Пн Июн 11, 2007 19:40 pm    Заголовок сообщения: Маленькое развлечение Ответить с цитатой

На форуме много человек которые так или иначе связаны с програмированием. Предлагаю по очереди придумывать задчи и писать под них программы (задания должны быть маленькими).

Для начала предлагаю написать программу для нахождения решения Sudoku.


Кто не знает предлагаю прочесть
http://melitopol.com.ua/forum/viewtopic.php?t=4946
Вернуться к началу
Посмотреть профиль Отправить личное сообщение [ скрыт ]
$T@$!N$@N

Активист


Пол: Пол: Он
Зарегистрирован: 16.10.2005
Сообщения: 629

Репутация: 87.4
голосов: 2

СообщениеДобавлено: Пн Июн 11, 2007 21:23 pm    Заголовок сообщения: Ответить с цитатой

Лучше скажите как на компе просчитать последовательность Фибоначи до бесконечности и не заклинит ли комп? Программ типа паскаля нет =)

последовательность такая: 0 1 1 2 3 5 8 13 21 и т.д.
кароче к последующему числу прибавить предыдущее.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение  
Serg_HD

Активист


Пол: Пол: Он
Зарегистрирован: 22.12.2004
Сообщения: 999
Откуда: Киев
Репутация: 251.6
голосов: 13

СообщениеДобавлено: Пн Июн 11, 2007 21:50 pm    Заголовок сообщения: Ответить с цитатой

На 1С так:
Код:

Перем фибоначчи;
    перем числов экспорт;
   
Функция фиб(номер)
    Если (номер=0) или (номер=1) тогда
      ф=1;
      возврат ф;
    иначе
      ф=фиб(номер-2)+фиб(номер-1);
      возврат ф;
    КонецЕсли;         
КонецФункции   

числов=0;
ном=1;
фибоначчи=1;       

Обычная рекурсия, комп хорошо виснет уже на сороковнике.
Вообще ряд Фибоначчи состоит из последовательности чисел, в которой каждый очередной элемент вычисляется по двум предыдущим значениям: F=Fn-1+Fn-2 (а то вдруг кто-то недопонял из предыдущего поста).
Вернуться к началу
Посмотреть профиль Отправить личное сообщение   AIM Address
VX

Горожанин


Пол: Пол: Оно
Зарегистрирован: 03.10.2005
Сообщения: 139

Репутация: 12.1
голосов: 1

СообщениеДобавлено: Пн Июн 11, 2007 22:40 pm    Заголовок сообщения: Ответить с цитатой

Насчет кода я с Серегой соглашусь, но можешь попробывать через формулу.
Для ряда Фибоначи есть обычная функция. Непомню ее точно, но можешь поискать в нете.

Вобще этот ряд оч интересный.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение [ скрыт ]
Serg_HD

Активист


Пол: Пол: Он
Зарегистрирован: 22.12.2004
Сообщения: 999
Откуда: Киев
Репутация: 251.6
голосов: 13

СообщениеДобавлено: Пн Июн 11, 2007 22:45 pm    Заголовок сообщения: Ответить с цитатой

Про функцию я такую тоже где-то слыхал, но он не сказал что за язык, поэтому я и привёл пример из своей практики
Вернуться к началу
Посмотреть профиль Отправить личное сообщение   AIM Address
Thomas
В настоящее время запрещен

Бывалый


Пол: Пол: Он
Зарегистрирован: 29.03.2006
Сообщения: 3169
Откуда: /dev/null
Репутация: 138.5
голосов: 31

СообщениеДобавлено: Вт Июн 12, 2007 08:59 am    Заголовок сообщения: Ответить с цитатой

$T@$!N$@N писал(а):
Лучше скажите как на компе просчитать последовательность Фибоначи до бесконечности

написать - 10 строчек ИМХО
Вернуться к началу
Посмотреть профиль Отправить личное сообщение [ скрыт ] Посетить сайт автора
VX

Горожанин


Пол: Пол: Оно
Зарегистрирован: 03.10.2005
Сообщения: 139

Репутация: 12.1
голосов: 1

СообщениеДобавлено: Вт Июн 12, 2007 13:53 pm    Заголовок сообщения: Ответить с цитатой

На паскале так:

function Fib(x:Integer):Integer;
begin
if x=0 then Fib:=0
else if x=1 then Fib:=1
else Fib:=Fib(x-1)+Fib(x-2);
end;

Выдает ряд чисел

0 1 2 3 4 5 7 8...
0 1 1 2 3 5 8 13...
Вернуться к началу
Посмотреть профиль Отправить личное сообщение [ скрыт ]
Varvar

Писатель


Пол: Пол: Он
Зарегистрирован: 02.11.2006
Сообщения: 400

Репутация: 51.9
голосов: 8

СообщениеДобавлено: Вт Июн 12, 2007 15:27 pm    Заголовок сообщения: Ответить с цитатой

VX писал(а):
На паскале так:

function Fib(x:Integer):Integer;
begin
if x=0 then Fib:=0
else if x=1 then Fib:=1
else Fib:=Fib(x-1)+Fib(x-2);
end;

Выдает ряд чисел

0 1 2 3 4 5 7 8...
0 1 1 2 3 5 8 13...

Как ни странно но данная функция ничего не выдает. Eh?
Не обращайте внимания, просто настроение хорошее.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение [ скрыт ]
Nakilon

Бомж


Пол: Пол: Оно
Зарегистрирован: 09.05.2007
Сообщения: 4

Репутация: 1.3

СообщениеДобавлено: Вс Июн 17, 2007 19:02 pm    Заголовок сообщения: Ответить с цитатой

Вот вы извращенцы... рекурсия... :D
Ну уж извиняйте, - ещё сильней упростить не смог:
Код:
int Fib (int x) {
  int t, s=0, p=1;
  while (--x>0)
    t=s, s+=p, p=t;
  return s;
; }
Вернуться к началу
Посмотреть профиль Отправить личное сообщение  
x-mode

Прохожий


Пол: Пол: Он
Зарегистрирован: 06.10.2007
Сообщения: 37

Репутация: 1.2
голосов: 1

СообщениеДобавлено: Сб Окт 06, 2007 18:23 pm    Заголовок сообщения: Ответить с цитатой

тут Си и ПАскаль - отдыхают, Питон - Бог программирования:
код не виснет никогда

это функция на питоне

def fib(n):
a, b = 0, 1
while b < n:
print b, a, b = b, a+b

самый протой код Smile
Вернуться к началу
Посмотреть профиль Отправить личное сообщение  
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Мелитополь -> Программирование Часовой пояс: GMT + 2
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB

Р: 523895

База отдыха «Белый парус» пгт Кирилловка Азовское море.

Рейтинг Мелитопольских сайтов на Melitopol.org Hosting by VivaNET