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) / ДнейВГоду * ДнейВМесяце.
return 0; } Вот мой код. Все проверил тысячу раз. Хоть убейте не пойму почему выводит не то что у Вас!!!! Пересчитал на калькуляторе – то же самое!!! Что вы сделали чтоб получать такой ответ????
У тебя все переменные кроме interestRate равны 0. И я не вижу, чтобы была возможность ввести их с клавиатуры :) Или инициализируй их, или организуй присваивание во время выполнения программы.
Вроде пустяк а приятно когда есть результаты от нового интереса))) Из своих ошибок в этом упражнении отмечу: 1) Неудобное оформление (по сравнению с автором); 2) Не ввёл переменные “количество дней в году” и “количество дней в месяце”, просто вставил их в формулу; 3) Не присвоил переменным значение 0 в самом начале – программа заработала лишь когда расчет был строкой выше команды вывода ан экран
ошибок во время учебы у всех хватает. В программировании так и подавно ) И не только во время учебы. Тут одной теорией не обойдешься – надо решать побольше и разбирать чужие коды. Мои далеко не идеал ;)
int main() { double summa; double meciac; setlocale( LC_ALL,"Russian" );
cout << "Введите сумму депозита" << summa; cout << "Прибыль с депозита в месяц" << summa*5/100/365*30 << endl; cout << "Введите количество месяцев" << meciac; cout << "Прибыль за весь срок депозита" << summa*5/100/365*meciac*30<< endl; cout << "Общая сумма к выплате за весь период" << summa + summa*5/100/365*meciac*30<< endl; system ("pause"); return 0; }
cout << "Прибыль с депозита за месяц: " << profitForMounth << endl; cout << "Прибыль с депозита за все время срока: " << profitForYear << endl; cout << "Общая сумма выплаты в конце срока депозита: " << profitForAllRate;
определи не int interestRate = 5; а float interestRate = 5; вся ошибка в этом. Когда начинается вычисление (interestRate/100) – происходит вот что: 5 делится на 100. должно получиться 0.05, но так как тип определен int – дробная часть отбрасывается и остается 0.
#include
using namespace std;
int main()
{
float deposit = 0;
float numberOfMonth = 0;
float profitOnMonth = 0;
float profitForTime = 0;
float fullAmount = 0;
float interestRate = 5;
cout << deposit;
cout << numberOfMonth;
profitOnMonth = deposit*(interestRate/100)/(365*30);
profitForTime = profitOnMonth * numberOfMonth;
fullAmount = deposit + profitForTime;
cout << "Profit on month: " << profitOnMonth << endl;
cout << "Profit for time: " << profitForTime << endl;
cout << "Full amount: " << fullAmount;
return 0;
}
Вот мой код. Все проверил тысячу раз. Хоть убейте не пойму почему выводит не то что у Вас!!!! Пересчитал на калькуляторе – то же самое!!! Что вы сделали чтоб получать такой ответ????
У тебя все переменные кроме interestRate равны 0. И я не вижу, чтобы была возможность ввести их с клавиатуры :)
Или инициализируй их, или организуй присваивание во время выполнения программы.
Подправь
#include
using namespace std;
int main()
{
float deposit = 1000;
float numberOfMonth = 12;
float profitOnMonth = 0;
float profitForTime = 0;
float fullAmount = 0;
float interestRate = 5.0;
profitOnMonth = deposit*(interestRate / 100) / 365 * 30;
profitForTime = profitOnMonth * numberOfMonth;
fullAmount = deposit + profitForTime;
cout << "Profit on month: " << profitOnMonth << endl;
cout << "Profit for time: " << profitForTime << endl;
cout << "Full amount: " << fullAmount;
system("pause");
return 0;
}
P.S.
cout deposit;
cout numberOfMonth;
этого там нет.ошибка в комментарии.
Пожалуйста объясните почему у Вас получается такой ответ!
вот там где
cout < < deposit; cout << numberOfMonth;
сделай
cin >> deposit;
cin >> numberOfMonth;
и все получится
Вроде пустяк а приятно когда есть результаты от нового интереса)))
Из своих ошибок в этом упражнении отмечу:
1) Неудобное оформление (по сравнению с автором);
2) Не ввёл переменные “количество дней в году” и “количество дней в месяце”, просто вставил их в формулу;
3) Не присвоил переменным значение 0 в самом начале – программа заработала лишь когда расчет был строкой выше команды вывода ан экран
ошибок во время учебы у всех хватает. В программировании так и подавно ) И не только во время учебы.
Тут одной теорией не обойдешься – надо решать побольше и разбирать чужие коды. Мои далеко не идеал ;)
Привет) По заданию первому сделал вот такой код) Отличается от твоего) Только не могу понять как он работает (мой код) :D
Подскажи, пожалуйста!)
#include
using namespace std;
int main()
{
setlocale(LC_ALL, "rus");
int four_digit_number;
cout << four_digit_number;
cout << "Число в обратном порядке: ";
cout << four_digit_number % 10;
cout << (four_digit_number / 10) % 10;
cout << ((four_digit_number / 10) / 10) % 10;
cout << (((four_digit_number / 10) / 10) / 10) % 10;
getchar(); getchar();
return 0;
}
блин, не копируется как надо
Вот мой код:
#include
using namespace std;
int main()
{ double summa;
double meciac;
setlocale( LC_ALL,"Russian" );
cout << "Введите сумму депозита" << summa;
cout << "Прибыль с депозита в месяц" << summa*5/100/365*30 << endl;
cout << "Введите количество месяцев" << meciac;
cout << "Прибыль за весь срок депозита" << summa*5/100/365*meciac*30<< endl;
cout << "Общая сумма к выплате за весь период" << summa + summa*5/100/365*meciac*30<< endl;
system ("pause");
return 0;
}
У меня,по ходу дела,самый такой крутой код :DDDD
setlocale(LC_ALL, "rus");
double dol = 0;
double month = 0;
double prInMonth = 0;
double alldep = 0;
double allPr = 0;
double interest = 5;
int daysInMonth = 30;
int daysInYear = 364;
cout << "\t \t \\ Банк Егора,б***. \\ ";
cout << endl << endl;
cout <> dol;
cout <> month;
cout << endl << endl;
cout << "\t \t Please,wait.We working :) \n";
cout << "\t \t \\ ===================== \\ \n";
cout << endl << endl;
prInMonth = dol * (interest / 100) / daysInYear * daysInMonth;
cout << "Your profit in month : " << prInMonth << endl;
alldep = prInMonth * month;
cout << "Your deposit for all your time : " << alldep << endl;
allPr = dol + alldep;
cout << "Your money for yout time : " << allPr << " usd " << endl;
cout << endl << endl;
_getch();
return 0;
Сорян,но там есть немножко грам. ошибок :D
У меня в ответе везде выходят нули. Можете пожалуйста подсказать в чем ошибка?
int main()
{
setlocale(LC_ALL, "Russian");
float sumDeposit = 0;
int amountOfMounth = 0;
int interestRate = 5;
float profitForMounth = 0;
float profitForYear = 0;
float profitForAllRate = 0;
int mounth = 30;
int year = 365;
cout <> sumDeposit;
cout <> amountOfMounth;
cout << endl;
cout << "=============================" << endl;
cout << "Происходит вычисление ...";
cout << endl << endl;
profitForMounth = sumDeposit*(interestRate/100)/(year*mounth);
profitForYear = profitForMounth*amountOfMounth;
profitForAllRate = profitForYear+sumDeposit;
cout << "Прибыль с депозита за месяц: " << profitForMounth << endl;
cout << "Прибыль с депозита за все время срока: " << profitForYear << endl;
cout << "Общая сумма выплаты в конце срока депозита: " << profitForAllRate;
_getch();
return 0;
}
определи не int interestRate = 5;
а float interestRate = 5;
вся ошибка в этом.
Когда начинается вычисление (interestRate/100) – происходит вот что: 5 делится на 100. должно получиться 0.05, но так как тип определен int – дробная часть отбрасывается и остается 0.
Глупая у меня ошибка, но все равно большое спасибо за помощь)