generate array of random numbers


 
Thread Tools Search this Thread
Top Forums Programming generate array of random numbers
# 1  
Old 02-05-2012
generate array of random numbers

hi guys,
I am writing a c program that generates a two dimensional array to make matrix and a vector of random numbers and perform multiplication. I can't figure out whats wrong with my code. It generates a matrix of random numbers but all the numbers in the vector array is same and so is the result array. I don't see anything wrong with my multiplication algorithm but could anyone check it, please?

here is my code. help me figure out whats wrong with this
Code:
#include <iostream>
#include <cstdlib>
#include <time.h>

using namespace std;

const int mat_rows = 5;
const int mat_cols = 4;
const int vec_rows = mat_cols;
const int vec_cols = 0;

int matrix [mat_rows] [mat_cols];
int vector [vec_rows] [0];
int result [mat_rows] [0];
int res;

int main ()
{
srand (time(NULL));
/*Filling matrix with random value between 0 - 10 */
for (int i = 0; i < mat_rows; i++)
        for (int j = 0; j < mat_cols; j++)
                matrix [i][j] = rand () % 50;

/*Filling vector with random value between 0 - 10*/
for (int i = 0; i < vec_rows; i++)
        vector [i] [0]= rand () % 50;

cout << "Printing out the matrix" << "\n" << endl;
for (int i = 0; i < mat_rows; i++)
        {
        for (int j = 0; j < mat_cols; j++)
                cout << matrix [i][j] << "   ";
        cout << endl;
        }
cout << "Printing out the vector" << "\n" << endl;
for (int i = 0; i < vec_rows; i++)
        cout << vector [i] [0] << endl;

for (int i = 0; i < mat_rows; i++)
        {
        res = 0;
        int vrows = 0;
        for (int j = 0; j < mat_cols; j++)
                {
                res = res + ((matrix [i] [j]) * (vector [vrows] [0]));
                vrows++;
                }
        result [i] [0] = res;
        }

for (int i = 0; i < mat_rows; i++)
        cout << result [i] [0] << endl;

return 0;
}

thanks
# 2  
Old 02-06-2012
Bug generate array of random numbers

hi ,
I could see the problem in below 2D Array declaration

int vector [vec_rows] [0];
int result [mat_rows] [0];
Formual two access array element is *(base + i*cols + j).
Hence u have declared 'cols' size as Zero. Below statement overwrites on the same loc eventhough your incrementing i val.
for (int i = 0; i < vec_rows; i++)
vector [i] [0]= rand () % 50;

same problem with 'result' array also

Change the declarations as below it will work
int vector [vec_rows] [1];
int result [mat_rows] [1];


Let me know if am wrong.


Thank you
Pradeep kumar
# 3  
Old 02-06-2012
Friendly note:
It looks to me like you are writing C code and then compiling with C++. That is not a good idea, at all. It will cause you lots of pain sooner rather than later. Pick C or C++ and stick with the one you want. Don't play mix and match.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Need to generate a file with random data. /dev/[u]random doesn't exist.

Need to use dd to generate a large file from a sample file of random data. This is because I don't have /dev/urandom. I create a named pipe then: dd if=mynamed.fifo do=myfile.fifo bs=1024 count=1024 but when I cat a file to the fifo that's 1024 random bytes: cat randomfile.txt >... (7 Replies)
Discussion started by: Devyn
7 Replies

2. Shell Programming and Scripting

Generate random numbers in script

i want to generate a random number through a script, and even if anyone reads the script, they wont be able to figure out what the random number is. only the person who setup the script would know it. something like this could work: random the full thread is here: ... (13 Replies)
Discussion started by: SkySmart
13 Replies

3. Shell Programming and Scripting

generate random base 16

How would you use bash to generate a random 32 digit number base 16? Like this one: 0cc06f2fa0166913291afcb788717458 (8 Replies)
Discussion started by: locoroco
8 Replies

4. Shell Programming and Scripting

Generate 16 digit positive random Numbers

Hi Unix Gurus, I have a requirement to generate positive random 16 and 13 digit numbers. Here is the script I have so far..... number=$RANDOM$RANDOM$RANDOM$RANDOM; let "number %= 10000000000000"; echo $number But sometimes it is generating negative numbers and also 15 digit... (8 Replies)
Discussion started by: scorpioraghu
8 Replies

5. Programming

Generate random number

I saw this formula to generate random number between two specified values in shell script.the following. $(((RANDOM%(max-min+divisibleBy))/divisibleBy*divisibleBy+min)) Give a example in book. Generate random number between 6 and 30.like this. $(((RANDOM%30/3+1)*3)) But I have a... (1 Reply)
Discussion started by: luoluo
1 Replies

6. Shell Programming and Scripting

Loop assistance, getting array of random numbers and feeding to a command, how-to?

Hi all, I need a little assistance to complete the following script. I would like to take a file with a single number on each line and for each number, run it through a command. The loop will terminate once all numbers have been checked. Here is what I have thus far... COUNTER=`wc -l... (2 Replies)
Discussion started by: boolean2222
2 Replies

7. Shell Programming and Scripting

How to generate random strings from regx?

Hi, Guz! I'm working on a scripts compiler which needs a function to generate random strings. I think REGX may be a good solution to restrict the string format. Before DIYing I'd like asking for any existing libs or codes. Any help will be appreciated! (7 Replies)
Discussion started by: wqqafnd
7 Replies

8. Programming

Generate Random Password in C

I need a function to generate a random alphanumeric password in C code. It needs to be between 6-8 characters and follow the following rules: Reject if same char appears # time: 4 or more Reject if same char appears consecutively: 3 or more I have the following random password working for... (2 Replies)
Discussion started by: vjaws
2 Replies

9. Shell Programming and Scripting

Generate a random password

Hello All... Can someone help me generate a random password which will be 7 characters long which contains alpha-numeric characters using shell script. I am looking to store the output of the script that generates the password to a variable within a script and use it as the password. ... (5 Replies)
Discussion started by: chiru_h
5 Replies

10. Programming

How to generate a random number?

How to generate a random integer with specific range(for example, from 1 to 1000)? Also, how to convert a floating point number into a integer? (2 Replies)
Discussion started by: MacMonster
2 Replies
Login or Register to Ask a Question