Сначала решу математически. Если положили R $ под x% годовых, то через год стало R1 = R*(1 + x/100) = R + R*x/100 $. Теперь забрали W $, стало R1 - W = R - W + R*x/100 Еще через год стало R2 = (R-W+R*x/100)*(1+x/100) = R-W+2R*x/100-W*x/100+R*x^2/10000 $ И по условию это равно W $. x^2*R/10000 + x*(2R - W)/100 + (R - 2W) = 0 Умножаем все на 10000 R*x^2 + 100*(2R - W)*x + 10000*(R - 2W) = 0 И решаем квадратное уравнение D = 10000*(2R-W)^2 - 40000*(R^2-2RW) = = 10000*(4R^2-4RW+W^2) - 10000*(4R^2 - 8RW) = 10000*(4RW + W^2) - не подходит - подходит 1. Начало 2. Ввод R и W 3. X = (-100*(2*R - W) + 100*Sqrt(4*R*W + W*W) ) / R 4. Вывод X 5. Конец
Объяснение:
// Example program
#include <iostream>
#include <string>
int main()
{
int k[30];
for(int i = 0; i < 30; i ++) //заполняем случайными числами
k[i] = rand();
int min_sum = 999999999;
int num1, num2;
for(int i = 0; i < (30 - 1); i ++) //цикл поиска, i меняется от начала
//до предпоследнего элемента, чтобы не выйти
//за пределы при обращении к i + 1 элементу
{
int sum = k[i] + k[i+1];//очередная сумма
if(sum < min_sum) //сравниваем ее с текущим минимумом
{//если она меньше, то
min_sum = sum;//обновляем текущую сумму
num1 = i; num2 = i + 1;//обновляем номер
}
}
//на выходе из цикла в min_sum и num1 и num2 имеем самые минимальные номера
std::cout << "min_sum = " << min_sum << " nomer1 = " << num1 <<" nomer2 = " << num2;
}
Если положили R $ под x% годовых, то через год стало
R1 = R*(1 + x/100) = R + R*x/100 $.
Теперь забрали W $, стало
R1 - W = R - W + R*x/100
Еще через год стало
R2 = (R-W+R*x/100)*(1+x/100) = R-W+2R*x/100-W*x/100+R*x^2/10000 $
И по условию это равно W $.
x^2*R/10000 + x*(2R - W)/100 + (R - 2W) = 0
Умножаем все на 10000
R*x^2 + 100*(2R - W)*x + 10000*(R - 2W) = 0
И решаем квадратное уравнение
D = 10000*(2R-W)^2 - 40000*(R^2-2RW) =
= 10000*(4R^2-4RW+W^2) - 10000*(4R^2 - 8RW) = 10000*(4RW + W^2)
- не подходит
- подходит
1. Начало
2. Ввод R и W
3. X = (-100*(2*R - W) + 100*Sqrt(4*R*W + W*W) ) / R
4. Вывод X
5. Конец