Модуль: (C++) Арифметические выражения


Задача

5 /7


Запись арифметических операций

Теория Нажмите, чтобы прочитать/скрыть


Запись арифметических операций

Допустим нам необходимо вычислить выражение, записанное в математическом виде таким  образом:
\({ 2\ \cdot\ 17,56^2 \over {7\ \cdot\ 2,47\ \cdot\ 0,43}}\)
 
Правила записи арифметических выражений
1. Выражение может содержать числа, имена других переменных, знаки операций, круглые скобки, имена функций, арифметические операции и их знаки (+, -, *, /, %).
2. Разделителем целой и дробной части является точка.
3. Выражение записывается в одну в строку (линейная запись выражений), символы последовательно выстраиваются друг за другом, проставляются ВСЕ знаки операций, используются круглые скобки.

Таким образом, следуя правилам записи арифметических выражений, мы должны перевести данную дробь (математическую запись) в линейную запись, то есть записать дробь в одну строчку. Так как числитель и знаменатель у нас сложные (то есть содержат два и более множителя), то при записи выражения в линейную форму необходимо числитель и знаменатель взять в скобки.
Таким образом линейная запись такого выражения будет выглядеть следующим образом:
 
(2*17.56*17.56)/(7*2.47*0.43)
Напишем программу для вычисления значения данного выражения. Для этого определимся с входными и выходными данными.

Входные данные
Т.к. нам все значения известны, то с клавиатуры ничего вводить не надо, следовательно входных значений не будет.

Выходные данные
Программа должна вывести результат заданного арифметического выражения (результат можно сохранить в какую-либо переменную, либо же сразу вывести на экран).

В программе результат сразу будем выводить на экран. Так как у нас имеется дробь, то результатом будет являться вещественное число.
#include<iostream>
using namespace std;
int main()
{ 
    cout << (2*17.56*17.56) / (7*2.47*0.43) << endl;
    return 0;
}

Запустите программу на компьютере и убедитесь что она выдает результат равный 82.949843.
 

Задача

Напишите программу, которая вычисляет значение выражения по заданной формуле:

\({x + y\over {x +1}}-{x\cdot y-12 \over 34 + x}\)


Входные данные
С клавиатуры вводятся x и y - переменные целого типа.

Выходные данные
Программа должна вывести одно число - результат вычисления выражения.
 
 
Примеры
Входные данные Выходные данные
1 1 2 1.786

Подсказка: не забудьте, что при делении необходимо получить вещественное число!

time 1000 ms
memory 32 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w643015
Free Pascal2
Python5
Комментарий учителя