Задача Паскаль не могу прийти к иному(верному решению)
Решал, решал и "дорешался"...(целый день занимался решением задач)
Чтобы ввести в курс дела - Собственно сама задача:
Даны числа от 1 до N. Вычислять: S=1/1+1/2+1/3 ..... + 1/N, вплоть до слагаемого, меньшего заданного E(E<1).
Моё решение:(Часто приводит к ошибкам в процессе исполнения программы и я скорее прихожу к выводу что я неправильно понял задачу)
program page42number4;
label met;
var
N, k: integer;
E, t: real;
begin
Writeln('Write N - integer');
Readln(N);
met: Writeln('Write E - real (E<1)');
Readln(E);
if (E > 1) and (E <> 1) then goto met;
k := 2;t := 0;
while (k < N) do
begin
if t < E then
begin
t := 1 / k + t;
k := k + 2;
end;
end;
Writeln('T=', t,'', 'E=', e);
end.
P.S.Прошу помочь мне разобраться в своих ошибках.
Кстати по составленной мною блок-схеме все правильно должно быть, хотя опять же не факт что блок-схему верно составил
Источник: Stack Overflow на русском