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

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Помогите решить задачки циклом Repeat

Автор: Гость_Андрей 1.02.2005 1:42

1. Произведение N первых нечётных чисел равно p. Cколько сомножителей взято?
2. Определить 40-е число Фибоначчи.
Поиск первого числа Фибоначчи, большего m(m+1);
Вычисление суммы всех чисел Фибоначчи, которые не превослодять 1000.

Автор: klem4 1.02.2005 1:57

Цитата
1. Произведение N первых нечётных чисел равно p. Cколько сомножителей взято?


есть произведение N членов, то кол-во сомножителей разьве не N ??? huh.gif

Автор: Гость_Андрей 1.02.2005 1:59

Ты напутал.Н - это количество умноженных друг на друга нечётных. А сомножетелей может быть как больше так и меньше.

Автор: Гость_Андрей 1.02.2005 2:02

Мы то Н не знаем изначально.

Автор: volvo 1.02.2005 2:04

Гость_Андрей
А пример, где число сомножителей не равно N можно? Желательно, и тот где сомножителей больше, и тот, где меньше...

Автор: Гость_Андрей 1.02.2005 2:06

К сожалению число сомножителей должно равняться Н.sad.gif

Автор: volvo 1.02.2005 2:07

Цитата
есть произведение N членов, то кол-во сомножителей разьве не N

Не это ли было сказано выше?

Автор: Гость_Андрей 1.02.2005 2:08

прошу прощения, не так прочитал. Да, он прав !!!

Автор: Altair 1.02.2005 2:17

перенесенно в "задачи".

Автор: trminator 2.02.2005 23:24

Цитата
1. Произведение N первых нечётных чисел равно p. Cколько сомножителей взято?

Чтобы понятнее: дано произведение N первых нечетных чисел. Вопрос: чему равно N?
Код

program proizv;
var p : integer; {Дано}
   n : integer; {Найти}
   cur, cur_p : integer; {в cur - текущий множитель (нечетное число), в cur_p - текущее произведение}
begin
   readLn(p);
   cur := 1; cur_p := 1; n := 0;
   repeat
       cur_p := cur_p * cur;
       inc(n);
       cur := cur + 2;
   until cur_p >= p;
   writeLn(n)
end.

А чтобы не было совсем халявы smile.gif тут не предусмотрен вариант, что ответа нет (введу я, например, 16, а мне выдаст - 3). Допиши сам smile.gif

Автор: Юляшка 3.02.2005 12:08

Цитата(Гость_Андрей @ 31.01.05 21:42)
2. Определить 40-е число Фибоначчи.



Код
program fibonaacci;
uses wincrt;
var f0,f1,fn:longint;
   n,i:word;
begin
readln(n);
f0:=0; f1:=1;
write (f0:10,f1:10);
for i:=3 to n do
begin
fn:=f0+f1;
f0:=f1; f1:=fn;
write (fn:10);
end;
end.

Выводит числа Фибоначчи с 1ого до n-ого
если модернизировать,то будет считать все что нужно smile.gif

Автор: Altair 3.02.2005 12:35

Цитата
если модернизировать,то будет считать все что нужно

А именно вот так:
Код
uses wincrt;
var f0,f1,fn:longint;
   n,i:word;
begin
n:=40;
f0:=0; f1:=1;
for i:=3 to n do
begin
fn:=f0+f1;
f0:=f1; f1:=fn;
end;
write (fn:10);
end.

Код для BWP или TPW, для запуска в BP или TP, замените Wincrt на crt ... smile.gif

Автор: Юляшка 3.02.2005 13:12

Ну да. я это и имела в виду! :no:

Автор: -Андрей_* 7.02.2005 2:13

Спасибо ребята большое!

Автор: Анатолий 8.02.2005 2:37

Уважаемые, дайте плз линк для скачивания паскаля под виндовс !!! Система ХП. Всё было неплохо но внезапно при запуске дос - приложений винда пишет: C:\windows.000\system32\autoexec.nt. The system file is not suitable for running MS-DOS and Microsoft applications. Choose `Close` to terminate the application. Фар не помогает. Что делать ? Выручайте ! Без паскаля умру =)

Автор: volvo 8.02.2005 2:49

Анатолий
Смотрите здесь, этот вопрос поднимался:
http://forum.pascal.net.ru/index.php?showtopic=2814&view=findpost&p=24680
В следующий раз попробуйте воспользоваться поиском... ;)