1. Распространённая задача: Дано четырехзначное число (к примеру 5678), вывести на экран в обратном порядке цифры из которых это число состоит. То есть мы должны увидеть на экране 8765. Подсказка: чтобы взять из числа отдельные цифры, надо применять деление по модулю на 10.
Показать код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <iostream>
usingnamespacestd;
intmain()
{
setlocale(LC_ALL,"rus");
intmainNumber=5678;
cout<<"Дано целое число: "<<mainNumber<<endl;
cout<<"Число наизнанку: ";
// остаток от деления четырехзначного числа 5678 на 10
cout<<mainNumber%10;// 5678 % 10 = 8
// далее делим mainNumber на 10 и записываем в переменную
// так как тип переменной int, дробная часть отбросится
// и mainNumber будет равен 567 (а не 567,8)
mainNumber/=10;
// показываем остаток от деления 567 на 10 на экран
cout<<mainNumber%10;
mainNumber/=10;
cout<<mainNumber%10;
mainNumber/=10;
cout<<mainNumber%10;
mainNumber/=10;
cout<<endl<<endl;
return0;
}
Результат:
2. На сайте практически любого коммерческого банка, можно встретить так называемый Депозитный калькулятор, который позволяет людям, не желающим углубляться в формулы расчета процентных ставок, узнать какую прибыль они получат. Для этого им достаточно заполнить определённые поля, нажать на кнопку и увидеть результат. Это простая программа, которую уже сможет написать каждый из вас. Итак, задача: Пользователь вводит сумму депозита и количество месяцев хранения денег в банке. Необходимо провести расчет и показать на экран прибыль с депозита в месяц, за весь срок депозита, и общую сумму к выплате в конце срока. Валюта пусть будет – доллар США. Процентная ставка – 5% годовых. Формула расчета процентов в месяц – СуммаДепозита * (ПроцентнаяСтавка / 100) / ДнейВГоду * ДнейВМесяце.
float a = 0; // ” ‘ a ‘ – сумма депозита ” float b = 0; // ” ‘ b ‘ – кол-во месяцев хранения денег в банке” float c = 0.05; // ” ‘ c ‘ – процентная ставка 5 %” float d = 365; // ” ‘ d ‘ – кол-во дней в году установлено как постоянное число” float e = 31; // ” ‘ e ‘ – кол-во дней в месяце установлено как постоянное число”
cout << "Deposit amount" <> a;
cout << "Months" <> b;
cout << "Profit per month" << " " << a * c / d * e << endl;
cout << "All term profit" << " " << a *c / d * e * b << endl;
cout << "Total amount payable after term" << " " << a + (a *c / d * e *b) << endl;
#include ; #include ; #include ; using namespace std;
int main() { setlocale(LC_ALL, “rus”); int sum_of_dep = 0; int deposit_term = 0; short day_start = 0; short month_start = 0; int year_start = 0; short day_end = 0; short month_end = 0; int year_end = 0; int sum_of_procent = 0; int day_in_month = 30; float deposit_rate = 5; int year_duration = 360;
cout << endl; // расчет разницы между днями с помощью вычисления юлианского дня float a1, m1, a2, m2; int a4 = 12; // переменная в формуле для расчета юлианского дня int y1, y2, jdn1, jdn2;
//расчет начисления процентов по дням. Годовая ставка 5%. //расчет процентной ставки за день:
float procent_on_day; procent_on_day = (deposit_rate / year_duration) * 10; double a = procent_on_day; //округление до сотых double b = a*1000.0; int tmp = b + 0.5; b = (double)tmp / 1000.0; procent_on_day = b; cout << "Процентная ставка – 5% годовых" << endl;
//проценты за месяц (базовое усредненное кол-во дней в месяце равно 30) float procent_on_month; procent_on_month = procent_on_day * 30; //Прибыль по депозиту за месяц float profit_on_month; profit_on_month = (procent_on_month * sum_of_dep) / 100; //Прибыль по депозиту за весь срок float profit_on_all_term; profit_on_all_term = (procent_on_day * deposit_term) * sum_of_dep / 100; double x = profit_on_all_term; //округление до сотых double y = x*100.0; int tmp2 = y + 0.5; y = (double)tmp2 / 100.0; profit_on_all_term = y;
cout << "Процентов начислено за месяц: " << procent_on_month << endl; cout << "Прибыль по депозиту за месяц: " << profit_on_month << endl; cout << "Прибыль по депозиту за весь срок:" << profit_on_all_term << endl;
Мне кажется так точнее:
#include
using namespace std;
int main()
{
setlocale(LC_ALL, “rus”);
float a, b;
float mes1 = 0;
float god1 = 0;
float sum = 0;
cout <> a;
cout <> b;
cout << "Проценты в месяц: ";
mes1 = a*5/100/12;
cout << mes1 << endl;
cout << "Проценты в год: ";
god1 = mes1 * 12;
cout << god1 << endl;
cout << "Общая сумма процентов: ";
mes1 = mes1 * 12 * b;
cout << mes1 << endl;
cout << "Общая сумма выплаты: ";
sum = a + b * god1;
cout << sum << endl;
cout << endl;
return 0;
}
#include
using namespace std;
int main()
{
setlocale(LC_ALL, “rus”);
float a = 0;
// ” ‘ a ‘ – сумма депозита ”
float b = 0;
// ” ‘ b ‘ – кол-во месяцев хранения денег в банке”
float c = 0.05;
// ” ‘ c ‘ – процентная ставка 5 %”
float d = 365;
// ” ‘ d ‘ – кол-во дней в году установлено как постоянное число”
float e = 31;
// ” ‘ e ‘ – кол-во дней в месяце установлено как постоянное число”
cout << "Deposit amount" <> a;
cout << "Months" <> b;
cout << "Profit per month" << " " << a * c / d * e << endl;
cout << "All term profit" << " " << a *c / d * e * b << endl;
cout << "Total amount payable after term" << " " << a + (a *c / d * e *b) << endl;
return 0;
}
int main(){
setlocale(LC_ALL, “RUS”);
int k;
cout <> k;
while (k%10!=0){
cout << k % 10;
k = k / 10;
}
cout << endl;
system("pause");
return 0;
}
Числа с нулем отработает не корректно.
Маленько не по заданию, но считала так:
int main(){
setlocale(LC_ALL, “RUS”);
float sum, profit, annual = 0.05;
int monthInYear = 12, amountMonth;
cout <> sum;
cout <> amountMonth;
cout << endl << "Сумма: " << sum + (amountMonth*(sum*annual)/monthInYear) << " руб" << endl;
system("pause");
return 0;
}
#include ;
#include ;
#include ;
using namespace std;
int main()
{
setlocale(LC_ALL, “rus”);
int sum_of_dep = 0;
int deposit_term = 0;
short day_start = 0;
short month_start = 0;
int year_start = 0;
short day_end = 0;
short month_end = 0;
int year_end = 0;
int sum_of_procent = 0;
int day_in_month = 30;
float deposit_rate = 5;
int year_duration = 360;
cout << "Введите сумму депозита: " <> sum_of_dep;
cout << "Укажите дату оформления депозита(день/месяц/год): " << endl;
cout << "День: " <> day_start;
cout << "Месяц: " <> month_start;
cout << "Год: " <> year_start;
if (year_start>9999 || year_start12 || month_start31 || day_start 28)
cout << "Некоректная дата" << endl;
cout << endl;
cout << "Укажите дату окончания депозита(день/месяц/год): " << endl;
cout << "День: " <> day_end;
cout << "Месяц: " <> month_end;
cout << "Год: " <> year_end;
if (year_end>9999 || year_end12 || month_end31 || day_end 28)
cout << "Некоректная дата" << endl;
cout << endl;
// расчет разницы между днями с помощью вычисления юлианского дня
float a1, m1, a2, m2;
int a4 = 12; // переменная в формуле для расчета юлианского дня
int y1, y2, jdn1, jdn2;
a1 = (14 – month_start) / a4;
y1 = year_start + 4800 – a1;
m1 = (month_start + (12 * a1)) – 3;
jdn1 = day_start + ((153 * m1 + 2) / 5) + 365 * y1 + (y1 / 4) – (y1 / 100) + (y1 / 400) – 32045;
a2 = (14 – month_end)/a4;
y2 = year_end + 4800 – a2;
m2 = (month_end + (12 * a2)) – 3;
jdn2 = day_end + ((153 * m2 + 2) / 5) + 365 * y2 + (y2 / 4) – (y2 / 100) + (y2 / 400) – 32045;
deposit_term = jdn2 – jdn1;
cout << "Срок депозита = " << deposit_term << endl;
//расчет начисления процентов по дням. Годовая ставка 5%.
//расчет процентной ставки за день:
float procent_on_day;
procent_on_day = (deposit_rate / year_duration) * 10;
double a = procent_on_day; //округление до сотых
double b = a*1000.0;
int tmp = b + 0.5;
b = (double)tmp / 1000.0;
procent_on_day = b;
cout << "Процентная ставка – 5% годовых" << endl;
//проценты за месяц (базовое усредненное кол-во дней в месяце равно 30)
float procent_on_month;
procent_on_month = procent_on_day * 30;
//Прибыль по депозиту за месяц
float profit_on_month;
profit_on_month = (procent_on_month * sum_of_dep) / 100;
//Прибыль по депозиту за весь срок
float profit_on_all_term;
profit_on_all_term = (procent_on_day * deposit_term) * sum_of_dep / 100;
double x = profit_on_all_term; //округление до сотых
double y = x*100.0;
int tmp2 = y + 0.5;
y = (double)tmp2 / 100.0;
profit_on_all_term = y;
cout << "Процентов начислено за месяц: " << procent_on_month << endl;
cout << "Прибыль по депозиту за месяц: " << profit_on_month << endl;
cout << "Прибыль по депозиту за весь срок:" << profit_on_all_term << endl;
system("pause");
return 0;
}
Я не смог решить ни первое ни второе ;(
#include
using namespace std;
int main()
{
setlocale(LC_ALL, “RUS”);
int sum = 0;
int srok = 0;
float sum1 = 0;
cout <> sum;
cout <> srok;
sum1 = sum + sum * srok * 5 / 36500;
cout << "\n\n Поздравляем! Сумма вашего вклада с процентами через " << srok << " месяцев составит: " << sum1 << " Баксов :-)\n\n\n Наш банк желает Вам удачи и хорошего настроения!!!\n\n\n\n\n\n\n\n\n";
setlocale (LC_ALL, "RUS");
// std::cout << "Hello World!\n";
return 0;
}
Не правильно решение!
#include
using namespace std;
int main()
{
int m = 5678;
cout << m<< endl;
for (int i=0;i<3;i++)
{
cout<< m%10;
m/=10;
}
cout << m<< endl;
}