Помощь - Поиск - Пользователи - Календарь
Полная версия: Задание последовательности
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Fenrisulven
Условие задачи: задается действительное число a. Среди чисел вида 1;1+1/2;1+1/2+1/3;1+1/2+1/3+1/4;... и т.д. найти первое, большее, чем a.

Насколько я понимю, такая последовательность чисел задается по формуле tn=tn-1+1/k , где k - порядковый номер, n и n-1 - индексы

как все это написать в паскале? Я только начинаю его изучать, и понятия не имею как ему объяснить, чего я от него хочу. Если есть какие-л идеи, буду рад!


вот то, что я сам сделал, но не думаю, что это похоже на правду

program Project2;

{$APPTYPE CONSOLE}

uses
SysUtils;

const n=1;
var a,p:extended;
k:integer;

begin
writeln('Type a');
readln (a);
k:=0;

while not (p>a) do
begin
inc(k);
********** <-- это та самая формула, о которой я спрашивал
end;

writeln ('First=',p);
readln;


{ TODO -oUser -cConsole Main : Insert code here }
end.
volvo
p := 0;

while not (p>a) do
begin
inc(k);
p := p + 1/k;
end;

Ты про это ?
Fenrisulven
не знаю, я вот и спрашиваю) Если так, то хорошо. Но прогамма не выдает ответа, после ввода числа ничего не происходит
volvo
У меня отработало.

Число какое вводишь? Я проверю у себя...
Fenrisulven
параметр a? да любое ввожу и ничего не происходит, только возрастает загруженность процессора))
volvo
Цитата
Type a
3
First= 3.0198773448773449E+0000

Type a
10
First = 1.0000043008275808E+0001

Type a
10
First = 1.0000043008275808E+0001

Type a
9
First = 9.0002080629311404E+0000
Что я делаю не так?
Fenrisulven
Вод блин.... не знаю. у меня ны выдает ничего.


В любом случае, спасибо за помощь!
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.