C++Primer第五版4.2節練習

2672 ワード

練習4.4:次の式にかっこを付けて、その評価の過程と最終結果を説明します.記述プログラムは、式をコンパイルし、その結果の検証前の推定値を出力します.12/3*4+5*15+24%4/2
練習4.5:次の式の評価結果を書き出します.(a) -30 3 + 21/5 (b) -30 + 3 21/5; (c) 30/3 * 21 %5 (d) -30/3 *21 %4
練習4.6:整数が奇数か偶数かを決定する式を書きます.オーバーフローとはどういう意味ですか.オーバーフローを引き起こす式を3つ書きます.
答:練習4.4((12/3)*4)+(5*15)+((24%4)/2)=91
答:練習4.5(a)-86(b)-18(c)0(d)-2
練習4.6 if(i%2=0)
練習4.7答え:オーバーフロー:計算結果がそのタイプが表す範囲を超えるとオーバーフローが発生する.(a) short short_value = 32767; short_value += 1;
練習4.4
/*
*
*        4.5    
* 
*/

#include 
#include 

using namespace std;

int main()
{
    int val = 12 / 3 * 4 + 5 *15 + 24 % 4 /2;
    int val1 =  -30 *3 + 21 / 5 ;
    int val2 = -30 + 3 * 21 / 5;
    int val3 = 30 / 3 * 21 %5;
    int val4 = -30 / 3 *21 %4;

    vector<int> ivec;
    ivec.push_back(val);
    ivec.push_back(val1);
    ivec.push_back(val2);
    ivec.push_back(val3);
    ivec.push_back(val4);

    for (auto it = ivec.begin(); it != ivec.end(); ++it)    
            cout << *it <<" ";
            cout << endl;
    return 0;
}