Const n=5;m=10; var b:array[1..n,1..m]of integer; i,j,k,buf,l:integer; begin for i:=1 to n do begin writeln; for j:=1 to m do begin b[i,j]:=random(50); write(b[i,j]:4); end; end; writeln; for j:=1 to m do begin k:=0; for i:=1 to n-1 do if b[i,j]<b[i+1,j]then k:=k+1; if k=n-1 then buf:=buf+1; end; k:=0; for l:=2 to m do if l mod 2=0 then for i:=1 to n-1 do for j:=i+1 to n do if b[i,l]>b[j,l]then begin k:=b[i,l]; b[i,l]:=b[j,l]; b[j,l]:=k; end; writeln('увеличилось ',m div 2-buf); for i:=1 to n do begin writeln; for j:=1 to m do write(b[i,j]:4); end; end.
Рассмотрим простейшую схему кредитования (и самую невыгодную для заёмщика), когда за каждый год отдается фиксированный процент p от первоначальной суммы кредита k без учета того, что часть кредита уже погашена за предыдущие годы. В этом случае ежегодная сумма процентов по кредиту составит Sk=k×p%/100%. За n лет будет отдано n×Sk. И еще нужно вернуть саму сумму кредита k. Итого нужно вернуть k+n×Sk. Доход за это время составит n×r и получаем неравенство n×r ≥ n×Sk+k n×(r-Sk) ≥ k → n ≥ k/(r-Sk) с округлением до целых в большую сторону.
// PascalABC.NET 3.3, сборка 1583 от 25.11.2017 // Внимание! Если программа не работает, обновите версию!
begin var (k,p):=ReadReal2('Сумма кредита и процент годовых:'); var r:=ReadReal('Предполагаемый годовой доход:'); var Sk:=k*p/100; if r<=Sk then Writeln('Рассчитаться за кредит невозможно') else Writeln('Количество лет на погашение кредита: ',Floor(k/(r-Sk))) end.
Пример Сумма кредита и процент годовых:10 0000 16 Предполагаемый годовой доход: 24000 Количество лет на погашение кредита: 12
n=5;m=10;
var
b:array[1..n,1..m]of integer;
i,j,k,buf,l:integer;
begin
for i:=1 to n do
begin
writeln;
for j:=1 to m do
begin
b[i,j]:=random(50);
write(b[i,j]:4);
end;
end;
writeln;
for j:=1 to m do
begin
k:=0;
for i:=1 to n-1 do
if b[i,j]<b[i+1,j]then
k:=k+1;
if k=n-1 then
buf:=buf+1;
end;
k:=0;
for l:=2 to m do
if l mod 2=0 then
for i:=1 to n-1 do
for j:=i+1 to n do
if b[i,l]>b[j,l]then
begin
k:=b[i,l];
b[i,l]:=b[j,l];
b[j,l]:=k;
end;
writeln('увеличилось ',m div 2-buf);
for i:=1 to n do
begin
writeln;
for j:=1 to m do
write(b[i,j]:4);
end;
end.
В этом случае ежегодная сумма процентов по кредиту составит Sk=k×p%/100%.
За n лет будет отдано n×Sk. И еще нужно вернуть саму сумму кредита k.
Итого нужно вернуть k+n×Sk.
Доход за это время составит n×r и получаем неравенство
n×r ≥ n×Sk+k
n×(r-Sk) ≥ k → n ≥ k/(r-Sk) с округлением до целых в большую сторону.
// PascalABC.NET 3.3, сборка 1583 от 25.11.2017
// Внимание! Если программа не работает, обновите версию!
begin
var (k,p):=ReadReal2('Сумма кредита и процент годовых:');
var r:=ReadReal('Предполагаемый годовой доход:');
var Sk:=k*p/100;
if r<=Sk then Writeln('Рассчитаться за кредит невозможно')
else Writeln('Количество лет на погашение кредита: ',Floor(k/(r-Sk)))
end.
Пример
Сумма кредита и процент годовых:10 0000 16
Предполагаемый годовой доход: 24000
Количество лет на погашение кредита: 12