"Заем". Арифметические выражения, возведение в степень

Алгоритм решения задачи: 

Месячная выплата m по займу в s рублей на n лет под процент p вычисляется по формуле:
m = (s * r * (1 + r)n) / (12 * ((1 + r)n – 1)), где r = p / 100.

Программа, вычисляющая значение m (месячную выплату) по известным s (сумме займа), p (проценту) и n (количеству лет), может выглядеть так:

Программа на языке Паскаль: 

var
    m, s, p, n, r, a: real;
 
begin
    write('Величина заема : ');
    readln(s);
    write('Процент: ');
    readln(p);
    write('Количество лет: ');
    readln(n);
 
    r := p / 100;
    a := exp(ln(1 + r) * n);
    m := (s * r * a) / (12 * (a - 1));
    m := trunc(100 * m + 0.5) / 100;
 
    writeln;
 
    writeln('Месячная выплата: ', m:5:2);
    writeln('Прибыль банка: ', m * 12 * n - s:5:2);
 
readln
end.

Примечания: 

Выражение exp(ln(1 + r) * n) вычисляет (1 + r)n.
Выражение trunc(100 * m + 0.5) / 100 выполняет округление до копейки.

Комментарии

Написать программу пересчета

Написать программу пересчета расстояния из верст в километры (1 верста равняется 1066.8 м). Ниже представлен рекомендуемый вид экрана во время работы программы (числа, которые вводит пользователь, выделены полужирным шрифтом).
****
Пересчет расстояния из верст в километры
Введите расстояние в верстах и нажмите : 100

100 верст(а\ы) – это 106.68 км.

Дайте какую нибудь задачу на

Дайте какую нибудь задачу на массовость 4 уровня!

Определить стоимость покупки:

Определить стоимость покупки: 3 кг сахара по x руб. за 1 кг, 5 кг муки по y руб. за 1 кг и 1 кг риса по z руб

Помогите, кому нетрудно.

Задание:
Написать программу, которая выводит квадрат первых 30 нечетных чисел.

Самая короткая версия =)

var i:byte;
Begin
for i:=1 to 60 do if odd(i) then writeln(sqr(i));
End.

решение

var
num, count: integer;
ans: longint;
 
begin
  count := 0;//count хранит количество нечетных чисел, добавленных к ответу
  num := 1; // хранит нечетное число
  ans := 0; //ans необходимо для хранения суммы нечетных чисел
  while (count < 30) do  //ограничение на количество нечентых чисел
  begin
    ans := ans + num;     //добавление к ответу очередного нечетного числа
    num := num + 2;         //получение следующего нечетного числа
    inc(count);         // увеличение счетчика нечетных чисел
  end;
 
  writeln(ans*ans);     //по заданию возводим сумму первых 30 нечетных чисел в квадрат и выводим
 
end.

это не правильное решение

var
   a,b: integer;
   c: longint;
begin
   a:=0;
   b:=1;
   c:=0;
   while (a<30) do
   begin
        c:=b;
        b:=b+2;
        inc(a);
   writeln (c*c);
   end;
 
end.

Решение

Огромное спасибо!
Я вам очень признателен.

вот правильно

var
   a,b: integer;
   c: longint;
begin
   a:=0;
   b:=1;
   c:=0;
   while (a<30) do
   begin
        c:=b;
        b:=b+2;
        inc(a);
   writeln (c*c);
   end;
 
end.

Это тоже не правильно

var
   a,b: integer;
   c: longint;
begin
   a:=0;
   b:=1;
   c:=0;
   while (a<60) do {т.к. первые 30 нечетных чисел окончиваються 59}
   begin
        c:=b;
        b:=b+2;
        inc(a);
   writeln (c*c);
   end;
end.

Это правильно, но можно короче

var
  b,c: integer;
begin
    c:=1;
    for b:=1 to 30 do
         begin
         writeln(sqr(c));
          c:=c+2;
          end;
end.

Можно еще короче

var i:byte;
Begin
for i:=1 to 60 do
 if odd(i) then writeln(sqr(i));
End.

=)

Типизированные файлы

создать типизированый файл "catalog.dat," содержащие сведения о книгах: автор, название, год издания, "раздел." а) найти раздел, в котором больше всего "книг." б) по заданному разделу занести в отдельный файл сведения о всех его "книгах." в) удалить из файла сведения о книгах, год издания которых меньше "заданного." г) обеспечить просмотр файла в табличном "виде."

Помогите решить

1.Начальный вклад в банк составил а рублей. Через сколько лет он станет больше b рублей? Каждый год вклад увеличивается на 3%.

Решение

Var a,b:real; s:integer;
Begin
 writeln('Введите a и b :');
 readln(a,b);
 repeat
  a:=a+a*0.03;
  s:=s+1;
 until a>b ;
 writeln(s);
end; 

Пожалуйста Помогите решить 2 задачи.

Город А находится в Y километрах от города B. С какой скоростью надо двигаться, чтобы достигнуть города за t часов?

Даны 2 числа a и b. Большее из этих чисел увеличьте в 4 раза, а меньшее – в 2 раза.

вот перваяprogram

вот первая

program skorost;
var y, t, v : real;
begin
    write('rasstoyanie=');
    readln(y);
    write ('zatrachennoe vremya=');
    readln(t);
    v:=y/t;
    write('neobhodimaya skorost=',v);
readln;
end.

а вот вторая задача

program Chisla;
var a,b: integer;
begin
    write('a=');
    readln(a);
    write('b=');
    readln(b);
    if a>b then a:=a*4 else a:=a*2;
    if b>a then b:=b*4 else b:=b*2;
    writeln ('a=',a);
    writeln ('b=',b);
readln;
end.

Задачи

Спасибо большое!

Это простые задачи. В каком

Это простые задачи. В каком вы классе?

Помогите пожалуйста решить задачи

Разветвляющийся процесс

Треугольник задан 3 сторонами. Определить вид этого треугольника (равнобедренный,равносторонний,разносторонний).

Циклический процесс при обработке одномерного массива

Для массива чисел А1, А2,.....Аn. найти сумму отрицательных чисел.

Задача про треугольник. Если

Задача про треугольник. Если не нужно выяснять существование треугольника, то надо убрать внешнюю конструкцию if-else.