Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
zabuka
1 / 1 / 0
Регистрация: 16.12.2010
Сообщений: 38
#1

Циклы - C++

01.02.2011, 09:44. Просмотров 1276. Ответов 13
Метки нет (Все метки)

Добрый день!
Хочу попросить помощи в решении следующей задачи:
Условие 1:
Напишите программу, рассчитывающую сумму денег, которую вы получите при вложении начальной суммы с фиксированной процентной ставкой дохода через определенное количество лет. Пользователь должен вводить с клавиатуры начальный вклад, число лет и процентную ставку.
Пример: в конце первого года вы получите: 3000+(3000*0,055) = 3165 долларов.
В конце следующего года вы получите 3165+(3165*0,055) = 3339,08 и так далее.

Условие 2:
Модифицируйте программу, описанную в условии 1, так, чтобы вместо вычисления текущей суммы на вашем счете она вычисляла, сколько лет потребуется для того, чтобы при заданной процентной ставке и величине начального вклада сумма на вашем счете достигала запрашиваемого вами значения.

Я смог решить задачу с первым условием, но никак не могу построить алгоритм для решения второго условия. Иду по следующему пути:
х - стартовая сумма
у - сумма накоплений на счете по прошествии i лет
r - процентная ставка
Предполагаю, что нужно создать цикл для следующей формулы:

у <= x + (x * (r/100), при i = 1, 2, 3 ... n

Подскажите, пожалуйста, решение.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.02.2011, 09:44
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Циклы (C++):

Заменить в коде циклы for на циклы while - C++
int i, j, n; bool a; cin &gt;&gt; i &gt;&gt; n; for (i; i&lt;n; i++) { a = true; for (j = 2; j &lt;= i / 2; j++) if ((i%j) == 0) a =...

Циклы do и while - C++
Приветсвую всех. Прошу помощи в решении двух задач: 1.Составить программу для определения, является ли натуральное число k степенью...

Циклы - C++
1)Используя перебор значений найти все числа из диапазона от n до m, которые при возведении в квадрат дают палиндром 2)В соревнованиях...

Циклы - C++
Дан номер телевизионного канала(от 1 до 5). Вывести на экран наиболее популярные программы заданного канала.

циклы - C++
вывести на экран все целые числа из диапазона от А до Б, кратные трем (А&lt;=B)

циклы - C++
помогите вывести таблицу 4 3 2 1 0 3 2 1 0 2 1 0 1 0 0

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
NiRamz
211 / 211 / 16
Регистрация: 26.12.2010
Сообщений: 691
01.02.2011, 10:33 #2
1.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
int main()
{
    double sum,procent;
    int kol_let;
    std::cin >> sum;
    std::cin >> procent;
    std::cin >> kol_let;
 
    for(int i=0; i<kol_let;i++){
        sum = sum + ((sum/100)*procent);
    }
 
    std::cout << sum << std::endl;
 
    system("pause");
}
0
zabuka
1 / 1 / 0
Регистрация: 16.12.2010
Сообщений: 38
01.02.2011, 10:34  [ТС] #3
Спасибо, но это решение первого условия. Со вторым проблема
0
NiRamz
211 / 211 / 16
Регистрация: 26.12.2010
Сообщений: 691
01.02.2011, 10:36 #4
2.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
 
int main()
{
    double sum,procent,zaprash;
    int kol_let=0;
    std::cin >> sum;
    std::cin >> procent;
    //std::cin >> kol_let;
    std::cin >> zaprash;
    do
    {
        sum = sum + ((sum/100)*procent);
        kol_let++;
    }
    while(sum < zaprash);
    std::cout << kol_let << std::endl;
 
    system("pause");
}
1
zabuka
1 / 1 / 0
Регистрация: 16.12.2010
Сообщений: 38
01.02.2011, 10:51  [ТС] #5
Цитата Сообщение от NiRamz Посмотреть сообщение
2.
C++
1
2
3
4
5
6
do
{
sum = sum + ((sum/100)*procent);
kol_let++;
}
while(sum < zaprash);
Не работает цикл, пытался аналогично решить.
0
NiRamz
211 / 211 / 16
Регистрация: 26.12.2010
Сообщений: 691
01.02.2011, 10:55 #6
почему не работает? точнее что конкретно в нем не работает то
0
zabuka
1 / 1 / 0
Регистрация: 16.12.2010
Сообщений: 38
01.02.2011, 11:04  [ТС] #7
Цитата Сообщение от NiRamz Посмотреть сообщение
почему не работает? точнее что конкретно в нем не работает то
Вывод конечного результата. Запрос первоначальной суммы - ввод, запрос процента - ввод, запрос желаемой суммы - ввод. Перевод на новую строку и все.
0
NiRamz
211 / 211 / 16
Регистрация: 26.12.2010
Сообщений: 691
01.02.2011, 11:23 #8
вот результат..
0
Миниатюры
Циклы  
zabuka
1 / 1 / 0
Регистрация: 16.12.2010
Сообщений: 38
01.02.2011, 11:34  [ТС] #9
Цитата Сообщение от NiRamz Посмотреть сообщение
вот результат..
Подскажите, тогда, пожалуйста, в чем отличие:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
using namespace std;
 
int main()
{
    int sumMon, necesSum;
    float perRate;
    int yearQuan = 0;
    cout << "Insert your sum: ";
    cin >> sumMon;
    cout << "Insert rate: ";
    cin >> perRate;
    cout << "Insert necessary sum for you: ";
    cin >> necesSum;
    do
    {
        sumMon = sumMon + (sumMon / 100 * perRate);
        yearQuan++;
    } while(sumMon <= necesSum);
    cout << yearQuan;
    return 0;
}
0
NiRamz
211 / 211 / 16
Регистрация: 26.12.2010
Сообщений: 691
01.02.2011, 11:41 #10
в условии цикла while
0
zabuka
1 / 1 / 0
Регистрация: 16.12.2010
Сообщений: 38
01.02.2011, 12:08  [ТС] #11
Цитата Сообщение от NiRamz Посмотреть сообщение
в условии цикла while
знак "=" не играет значения.

Добавлено через 25 минут
Вот это код рабочий:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
using namespace std;
 
int main()
{
    double sumMon, necesSum, perRate;
    int yearQuan = 0;
    cout << "Insert your sum: ";
    cin >> sumMon;
    cout << "Insert rate: ";
    cin >> perRate;
    cout << "Insert necessary sum for you: ";
    cin >> necesSum;
    do
    {
        sumMon = sumMon + (perRate / 100 * sumMon);
        yearQuan++;
    }
    while(sumMon < necesSum);
    cout << yearQuan;
    return 0;
}
Проблемы были:
1. В типе переменных.
2. В формуле пересчета суммы на процент.

Хотя не понял почему это является проблемами.
1
NiRamz
211 / 211 / 16
Регистрация: 26.12.2010
Сообщений: 691
01.02.2011, 12:28 #12
Цитата Сообщение от zabuka Посмотреть сообщение
знак "=" не играет значения
попробуйте мой вариант с "=" и без него. увидете что влияет.
Цитата Сообщение от zabuka Посмотреть сообщение
Вот это код рабочий:
опять же, из условия убрали "="))
0
zabuka
1 / 1 / 0
Регистрация: 16.12.2010
Сообщений: 38
01.02.2011, 13:13  [ТС] #13
Цитата Сообщение от NiRamz Посмотреть сообщение
попробуйте мой вариант с "=" и без него. увидете что влияет.

опять же, из условия убрали "="))
Пробывал, результат тоже самый ))
и мой переписанный под Ваш алгоритм код и с "=" и без него работает. Компиляторы?
0
AmiGOmen
1 / 1 / 0
Регистрация: 06.08.2011
Сообщений: 8
22.08.2011, 22:56 #14
Цитата Сообщение от zabuka Посмотреть сообщение
знак "=" не играет значения.

Добавлено через 25 минут
Вот это код рабочий:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
using namespace std;
 
int main()
{
    double sumMon, necesSum, perRate;
    int yearQuan = 0;
    cout << "Insert your sum: ";
    cin >> sumMon;
    cout << "Insert rate: ";
    cin >> perRate;
    cout << "Insert necessary sum for you: ";
    cin >> necesSum;
    do
    {
        sumMon = sumMon + (perRate / 100 * sumMon);
        yearQuan++;
    }
    while(sumMon < necesSum);
    cout << yearQuan;
    return 0;
}
Проблемы были:
1. В типе переменных.
2. В формуле пересчета суммы на процент.

Хотя не понял почему это является проблемами.
Тоже столкнулся, смена типа переменных помогла, а я мучился все думал в чем проблема)))
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.08.2011, 22:56
Привет! Вот еще темы с ответами:

циклы - C++
с точностью е=0.001

Циклы в Cи - C++
Всем привет, в общим столкнулся с проблемой, мне необходимо пробежаться по одной и той же строчке содержащею цифры например 1,2,3,4,5... ...

Циклы - C++
Как написать программу, в которой нужно сложить значения получаемые в цикле? z=sin(\sum_{3}^{10}(a*k+c)) a,c известны

Циклы - C++
Прошу помочь с решением задачек, заранее благодарен ;) 1. Дана последовательность из n целых чисел. Найти сумму минимального и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
22.08.2011, 22:56
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru