Есть ошибка, но где? И как это решить красивше?
var Mdisc,iProc,PvD,SumPvA:Real;
{iProc- Процентная ставка или ставка вознаграждения}
Per,nPer:Integer;{nPer - Количество периодов начисления - целое число}
begin
readln(iProc);{Ввод процентной ставки}
readln(Per); {Ввод количества периодов вложения}
nPer:=(Per-1);
Mdisc:=(1+(iProc/100));
WriteLn(' ');
for nPer:=1 to (nPer) do begin;
PvD:= (exp(ln( Mdisc) * (nPer)));
if nPer =1 then SumPvA:=1;
SumPvA:=(SumPvA+PvD);
WriteLn(1/SumPva:25:7,' SumPvA');
end;
Readln;
end.
/////////////////////////////////////////
0.4807692 SumPvA
0.3080335 SumPvA
0.2219208 SumPvA
0.1704565 SumPvA
///////////////////////////////////////
Это при Per=5 а, должно быть так:
1.0000000 SumPvA
0.4807692 SumPvA
0.3080335 SumPvA
0.2219208 SumPvA
0.1704565 SumPvA
//////////////////////////////////////
Наверное что - то случилось.
Не могу определить где ошибка, а она есть.
Помогите!!!!!!!!!
/NOPARSE]