• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

  • Приглашаем на KubanCTF

    Старт соревнований 14 сентября в 10:00 по москве

    Ссылка на регистрацию в соревнованиях Kuban CTF: kubanctf.ru

    Кодебай является технологическим партнером мероприятия

Ошибка В Коде

  • Автор темы snake0202
  • Дата начала
S

snake0202

Код:
var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
r:array[1..40] of real;
R,D,U,k,p:real;
j ,n:integer;

begin
D:= StrToFloat(Edit1.Text);
p:= StrToFloat(Edit2.Text);
n:= StrToInt(Edit3.Text);
k:=p/100;
U:= D*(Power((1+k),n)*k)/(Power((1+k),n)-1);
Memo1.Lines.Add('Ежегодная выплата составляет: '+FloatToStr(U));
for j := 1 to n do
begin
r[j]:=D*k;
Memo1.Lines.Add('Величина процентного займа в год :'+FloatToStr(r[j]));
end;
R:=U-r[j];
Memo1.Lines.Add('Bыплaтa основного долга в год : '+FloatToStr(R));
D:=D -R;
Memo1.Lines.Add('Остаток основного долга в год : '+FloatToStr(D));
end;
end.
 
G

gpatron

в каком месте ошибка?
что за ошибка?

хотя.. скорее всего понял где
если у Вас в поле Edit3 будет введено значение больше 40 - будет ошибка в теле цикла (выход за пределы масива)
да и в других местах не очень хорошо написано...

и еще одно ... у Вас R объявлена 2 раза как массив и как вещественное число
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!