Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Создайте 4 переменные с разными типами данных и предложите пользователю ввести в них значения. После ввода, отобразите их на экране.




  #include <iostream> using namespace std;   int main() { setlocale(LC_ALL, "rus");   int digit = 0; double digit2 = 0; char symbol = 0; bool trueOrFalse = 0;   cout << "Введите целое число: "; cin >> digit; cout << "Введите вещественное число: "; cin >> digit2; cout << "Введите символ: "; cin >> symbol; // в переменную типа bool с помощью cin можно ввести // только числа 0 (интерпретируется как false) и 1 (true) cout << "Введите 0 или 1: "; cin >> trueOrFalse;   cout << endl << endl; cout << "Целое число: " << digit << endl; cout << "Вещественное число: " << digit2 << endl; cout << "Символ: " << symbol << endl; cout << "bool: " << trueOrFalse << endl;   return 0; }

Пользователь должен ввести 2 числа. Вам надо показать на экран произведение этих чисел, сумму и разницу. Покажите так же среднее арифметическое этих введенных чисел.

Показать код

  #include <iostream> using namespace std;   int main() { setlocale(LC_ALL, "rus");   float num1 = 0; float num2 = 0;   cout << "Введите первое число: "; cin >> num1; cout << "Введите второе число: "; cin >> num2;   cout << num1 << " + " << num2 << " = " << num1 + num2 << endl; cout << num1 << " - " << num2 << " = " << num1 - num2 << endl; cout << num1 << " * " << num2 << " = " << num1 * num2 << endl;   cout << "Средне арифметическое: "; cout << num1 << " + " << num2 << " / " << 2 << " = "; cout << (num1 + num2)/2 << endl;   cout << endl;   return 0; }

 

Арифметические операции

В современной жизни очень сложно обойтись без арифметических операций. Нам постоянно приходится что-то считать: складывать, умножать, вычитать, делить и т.д. Программирование — не исключение. Вам в 99.9% случаев придется ими пользоваться, при написании своих программ. Рассмотрим арифметические операции в следующей таблице.

Тут особое внимание следует уделить делению по модулю (%). Эта операция достаточно часто используется в решении определённых задач. Пример её применения: если нам необходимо поделить по модулю 9 на 4 (9 % 4), результат будет равен 1 (это остаток — то, что на 4 уже не делится на цело). Еще примеры: 20 % 8 = 4 (8 помещается в 20-ти 2 раза: 8 * 2 = 16, 20 — 16 = 4 остаток от деления), 3 % 2 = 1, 99 % 10 = 9, 9 % 10 = 9. Важно:

§ деление по модулю применяется только к целочисленным переменным;

§ нельзя делить по модулю на 0;

Пример:

  #include <iostream> using namespace std;   int main() { setlocale(LC_ALL, "rus");   int number1 = 18; int number2 = 4;   cout << "number1 = " << number1 << endl; cout << "number2 = " << number2 << endl; cout << "number1 + number2 = " << number1 + number2 << endl; cout << "number1 - number2 = " << number1 - number2 << endl; cout << "number1 * number2 = " << number1 * number2 << endl; cout << "number1 / number2 = " << number1 / number2 << endl; cout << "number1 % number2 = " << number1 % number2 << endl; cout << endl;   return 0; }

Результат компиляции:

Тут вы видите, что при делении num1 на num2, на экране появилась только целая часть — 4 (хотя точное значение 4.5). Дробная часть отсекается, так как переменные определены, как целочисленные — int. А в результате деления по модулю мы видим 2 — то что осталось в остатке от деления 18 на 4.

Еще что хотелось бы рассмотреть в данной статье — это так называемые комбинированные (или составные) операторы. Помимо выполнения своей арифметической роли, они одновременно выполняют роль присваивания значения переменным. Вот список таких составных операторов:

  #include <iostream> using namespace std;   int main() { setlocale(LC_ALL, "rus");   int number1 = 10; int number2 = 4;   cout << "number1 = " << number1 << endl; cout << "number2 = " << number2 << endl;   number1 += number2; // эквивалентно записи number1 = number1 + number2 cout << "Результат от +=: " << "number1 = " << number1 << endl; number1 -= number2; // number1 = number1 - number2 и т.д. cout << "Результат от -=: " << "number1 = " << number1 << endl; number1 *= number2; cout << "Результат от *=: " << "number1 = " << number1 << endl; number1 /= number2; cout << "Результат от /=: " << "number1 = " << number1 << endl; number1 %= number2; cout << "Результат от %=: " << "number1 = " << number1 << endl;   cout << endl;   return 0; }

Хотя для кого-то, с первого взгляда, эти операторы могут показаться запутанными, поверьте, к ним очень быстро можно привыкнуть и успешно применять в своих программах. Надо только немного попрактиковаться с их применением. Ваш код при этом будет выглядеть компактнее. Так же, использование комбинированных операторов является признаком хорошего тона в программировании. Поэтому, хоть и не будет ошибкой в коде использование сложения отдельно от присваивания — number1 = number1 + number2;, предпочтительней использовать сокращенный вариант записи number1 += number2;

Результат:

В этой статье были рассмотрены только бинарные операторы — те которые применяются для арифметических операций с двумя переменными (операндами). В одной из следующих, мы познакомимся с унарными операторами (для операций с одной переменной) — инкрементом и декрементом, а в будущем — и с тернарным оператором (которому необходимо три операнда).

 

Распространённая задача: Дано четырехзначное число (к примеру 5678), вывести на экран в обратном порядке цифры из которых это число состоит. То есть мы должны увидеть на экране 8765. Подсказка: чтобы взять из числа отдельные цифры, надо применять деление по модулю на 10.

  #include <iostream> using namespace std;   int main() { setlocale(LC_ALL, "rus");   int mainNumber = 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;   return 0; }


2. На сайте практически любого коммерческого банка, можно встретить так называемый Депозитный калькулятор, который позволяет людям, не желающим углубляться в формулы расчета процентных ставок, узнать какую прибыль они получат. Для этого им достаточно заполнить определённые поля, нажать на кнопку и увидеть результат. Это простая программа, которую уже сможет написать каждый из вас. Итак, задача: Пользователь вводит сумму депозита и количество месяцев хранения денег в банке. Необходимо провести расчет и показать на экран прибыль с депозита в месяц, за весь срок депозита, и общую сумму к выплате в конце срока. Валюта пусть будет — доллар США. Процентная ставка — 5% годовых. Формула расчета процентов в месяц — СуммаДепозита * (ПроцентнаяСтавка / 100) / ДнейВГоду * ДнейВМесяце.

  #include <iostream> using namespace std;   int main() { setlocale(LC_ALL, "rus");   float sumDeposit = 0; // сумма депозита int amountMonth = 0; // количество месяцев float profit = 0; // прибыль float annualRate = 5; // пять процентов годовых int daysInYear = 365; int daysInMonth = 30;   cout << "Введите сумму депозита в долларах: "; cin >> sumDeposit; cout << "Введите количество месяцев: "; cin >> amountMonth;   cout << "\nРасчет\n"; cout << "=======================================\n"; cout << "Проценты в месяц: "; // проводим расчет по формуле и записываем в переменную profit profit = sumDeposit * (annualRate / 100) / daysInYear * daysInMonth;   cout << sumDeposit << " * " << annualRate << "% / " << daysInYear << " * " << daysInMonth << " = " << profit << " $" << endl;   cout << "Проценты за весь срок: "; // умножаем % за 1 месяц на весь срок депозита и записываем в profit profit *= amountMonth; cout << profit << " $" << endl;   cout << "Общая сумма выплаты в конце срока: " << sumDeposit + profit << " $"; cout << endl << endl;   return 0; }

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...