Darth Emil Опубликовано 28 декабря, 2004 Жалоба Поделиться Опубликовано 28 декабря, 2004 У нас в колледже сейчас идёт практика. Каждому даётся 55 заданий, т.е. за всё время практики надо написать 55 программ. У некоторых бывает что программы совпадают. Я уже написал 24 программы. Но вот 25 меня просто стопорнула. Мы, т.е. те кому это же задание досталось, никак не можем её написать. Вот задание: Последовательнось чисел Фибоначчи образуется так: первый и второй члены последовательности равны 1, каждый следующий равен сумме двух предыдущих (1, 1, 2, 3, 5, 8, 13…). Дано натуральное число n (n>=3). Найти k-й член последовательности Фибоначчи. Получить первые n членов последовательности Фибоначчи. Для заданного n определить, верно ли, что сумма первых n членов последовательности Фибоначчи есть четное число? Мы этого Фибоначчи вообще не проходили, и не знаем даже по какой формуле эту последовательность вычислять. И вот текст программы, который мы "родили" с друзьями: Program Fibonachchi; Uses CRT; Var a,b,c,d,i,n:integer; Begin clrscr; writeln('Введите N'); readln(n); for i:=1 to n do b:=b+a; c:=c+b; writeln©; readln; end. Может кто знает как это сделать? Пожалуйста, помогите дописать программу. Ссылка на комментарий Поделиться на другие сайты Поделиться
bombeiro Опубликовано 28 декабря, 2004 Жалоба Поделиться Опубликовано 28 декабря, 2004 с массивами надо работать,иначе к-ый елемент не вычислить да и другие условия тоже Ссылка на комментарий Поделиться на другие сайты Поделиться
Kuzmich Опубликовано 28 декабря, 2004 Жалоба Поделиться Опубликовано 28 декабря, 2004 (изменено) Ну е-мое... a[1]:=1; a[2]:=1; for i:=2 to n-1 do a[i+1]:=a+a[i-1]; Вот и построил последовательность... Только красивее сделать с динамическим выделением памяти в Си... scanf("%f",&n); a=(float *)malloc(n*sizeof(float)); a[0]=1; a[1]=1; for(i=1;i<n-1;i++) a[i+1]=a+a[i-1]; Ну а вывести k-ый член и сумму посчитать сам догадаешься как... Изменено 28 декабря, 2004 пользователем Kuzmich Ссылка на комментарий Поделиться на другие сайты Поделиться
Darth Emil Опубликовано 29 декабря, 2004 Автор Жалоба Поделиться Опубликовано 29 декабря, 2004 (изменено) Kuzmich Это на каком языке?! Мы массивы не проходили, а 31 сдавать. Пожалуйста, напиши полный текст. Изменено 29 декабря, 2004 пользователем Darth Emil Ссылка на комментарий Поделиться на другие сайты Поделиться
Kuzmich Опубликовано 29 декабря, 2004 Жалоба Поделиться Опубликовано 29 декабря, 2004 var a: array [1..500] of longint; ... begin s:=0; readln(n); a[1]:=1; a[2]:=1; for i:=2 to n-1 do a[i+1]:=a+a[i-1]; readln(k); writeln(a[k]); readln(q); {Колличество первых членов} for i:=1 to q do s:=s+a; if s mod 2=0 then Writeln("Верно"); end. Уж мог бы и в интернете почитать про массивы и числа Фибоначчи... Ссылка на комментарий Поделиться на другие сайты Поделиться
Darth Emil Опубликовано 29 декабря, 2004 Автор Жалоба Поделиться Опубликовано 29 декабря, 2004 Kuzmich Спасибо! С меня бутылка Так окуда же я знал что мне такое зададут? А этого Фибоначчи я не знаю. Мы это не проходили. Ссылка на комментарий Поделиться на другие сайты Поделиться
D_e_m_a Опубликовано 30 декабря, 2004 Жалоба Поделиться Опубликовано 30 декабря, 2004 Добрый Кузьмич... но я все же считаю что неправильно... надо было подтолкнуть парня к решению, задачка то не сложная, да ему было бы интереснеЕ. Может я и не прав. Добавлено : [mergetime]1104392104[/mergetime] кстати если постановка задачи определяется так же и тем что они массивы не проходили, то решение будет немного другое, без массивов. Хотя вариант не так красив как с используемый с массивами, и уж точно некрасив в сравнением с динамическим выделением памяти. Кстати это можно сделать и на Паскале. Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 30 декабря, 2004 Жалоба Поделиться Опубликовано 30 декабря, 2004 А этого Фибоначчи я не знаю. Мы это не проходили.Все нормально, просто не надо теряться при незнакомом слове. Фибоначчи проходить вовсе не надо. Слово "Фибоначчи" в условии - только из уважения к изобретателю ряда, а как он строится, в условии описано. Если выкинуть в условии слово "Фибоначчи", ничего не изменится. Ссылка на комментарий Поделиться на другие сайты Поделиться
bombeiro Опубликовано 30 декабря, 2004 Жалоба Поделиться Опубликовано 30 декабря, 2004 Добрый Кузьмич... но я все же считаю что неправильно... надо было подтолкнуть парня к решению, задачка то не сложная, да ему было бы интереснеЕ а д-е-м-а то прав кстати если постановка задачи определяется так же и тем что они массивы не проходили и тут препод сразу поймёт ,что программка то левая Ссылка на комментарий Поделиться на другие сайты Поделиться
Darth Emil Опубликовано 30 декабря, 2004 Автор Жалоба Поделиться Опубликовано 30 декабря, 2004 Спору нет, мне самому надо было прогу дописать, но... Говорю же меня Фибоначчи в тупик поставил. Я знал что надо через массив(лично я его до колледжа проходил) но не знал как именно. Не думайте что я мало соображаю, просто запарился я с этой практикой - мозги не варят теперь :sm(100): Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения