c++
  • variables
  • include
  • int
  • lvalue
  • 2016-10-02 18 views -2 likes 
    -2

    直角三角形を識別できる数式を作成しようとしています。私は "a"と=記号にいくつか問題があります。式はL値でなければなりません

    エラー1: '=';左のオペランドはl-値でなければなりません。
    エラー2: "a"。式は変更可能な左辺値でなければなりません。

    助けが必要ですか?

    #include "stdafx.h" 
    #include <iostream> 
    #include <cstdio> 
    #include <cmath> 
    
    using namespace std; 
    
    
    int main() 
    { 
        int a; 
        int b; 
        int c; 
        cout << "Input value for A." << endl; 
        cin >> a; 
        cout << "Input value for B. " << endl; 
        cin >> b; 
        cout << "Input value for C. " << endl; 
        cin >> c; 
    
        a^2 + b^2 = c^2; 
        return 0; 
    } 
    
    +2

    'A^2 + B^2'理解するのは難しいものを、割り当て可能な表現ではありませんがこの事実について? –

    +0

    「a^2 + b^2 = c^2;」と書くことで、あなたは何を期待していますか?これは明らかに間違っていますが、あなたがここで成し遂げることを期待することの説明がなければ、答えは不可能です。さらに、 '^'は指数ではなく、C++の排他的演算子であることを知っていますか? –

    +0

    等価性をテストする場合== –

    答えて

    0

    ^演算子はC++でのビット単位のXORを取得するために使用されます。 、代わりにa^2 + b^2 = c^2声明の

    のようなブロックの書き込み: あなたは道を次でそれを行う必要があります

    if(pow(c, 2) == pow(a, 2) + pow(b, 2)) 
         std :: cout << "true"; 
        else 
         std :: cout << "false"; 
    
    関連する問題