Решение задачи "a + b = c" с Mccme

С пояснением   Просмотров: 13


Даны три действительных числа: a, b, c. Проверьте, выполняется ли равенство a + b = c . Если равенство выполняется, выведите YES, если не выполняется, выведите NO.


Код

a = float(input())
b = float(input())
c = float(input())
a = a + b
c = c - a
if abs(c) < 0.00000001:
    print("YES")
else:
    print("NO")

         

 Администратор Photo Автор: Администратор


Код

#include <bits/stdc++.h>

using namespace std;

int main()
{
    double a, b, c;
    cin >> a >> b >> c;
    a = a + b;
    c = c - a;
    if(abs(c) < 0.00000001)
        cout << "YES";
    else
        cout << "NO";
    return 0;
}

         

 Администратор Photo Автор: Администратор


Заведем три переменных вещественного типа a, b и c. Затем a=a+b; теперь сделаем c=c-a; и сделаем абсолютное значение c (модуль c).
И проверяем если это абсолютное значение меньше чем 0.00000001 то выводим YES иначе NO.
Для чего же эта проверка?
Так как вещественная арифметика не точна то нужна такая проверка а не абсолютное равенство.

Отправить решение задачи
Чтобы отправить решение вам нужно войти в систему или зарегистрироваться

Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться