nomalization of complex number in c++

Viewed 66

I am trying to convert a small code of Matlab in c++. In matlab normalization of random number can be done easily as below:

val = x / norm(x)

where x contains random generated real and img part between 0 and 255 as below:

70.0000000000000 + 112.000000000000i
11.0000000000000 + 97.0000000000000i
24.0000000000000 + 195.000000000000i
210.000000000000 + 203.000000000000i
177.000000000000 + 47.0000000000000i
81.0000000000000 + 125.000000000000i
243.000000000000 + 114.000000000000i
8.00000000000000 + 165.000000000000i

After the normalization, the values in val are as below:

0.126554761381164 + 0.202487618209862i
0.0198871767884686 + 0.175368740771041i
0.0433902039021132 + 0.352545406704670i
0.379664284143491 + 0.367008808005375i
0.320002753778085 + 0.0849724826416384i
0.146441938169632 + 0.225990645323507i
0.439325814508897 + 0.206103468535038i
0.0144634013007044 + 0.298307651827029i

I really donot know how to do the similar work in c++. I thought of doing something like below but soon got stuck.

int random_real_number;
    int random_img_number;

    vector<int > real_number;
    vector<int> img_number;
    int data_size_val= 8;
    srand (time(NULL));    // Initialize random seed
    for(int i=0;i< data_size_val;i++){
        random_real_number = rand() % 255 + 0;
        std::cout << random_real_number << std::endl;

        random_img_number= rand() % 255 + 0;
        std::cout << random_img_number << std::endl;
        real_number.push_back(random_real_number);
        img_number.push_back(random_img_number);

    }

It would be great help if someone can help me in it. Thanks in advance.

0 Answers
Related