Write a function that generates random integers within a loop, and calculates the mean of the positive numbers only.
At each iteration a random integer between 0 and 10 is generated.
Only if the number is positive, it is added to the sequence.
The loop terminates when the number 0 is generated. This number is not considered for the mean.
You are not allowed to use the functions sum() and mean()
Examples:
Random sequence is: 4, 3, 5, 10, 3, 0 Output is: 5
Random sequence is: 0 Output is 0
Random sequence is: 5, 8, 1, 9, 3, 4, 6, 2, 2, 3, 1, 0 Output is: 4
Note: the function does not have an input. The output depends on the state of the random numbers generator.
Hello, Shaul Salomon.
. . .
Could you please double-check the consistency of your test 7 with the problem statement? The problem statement specifies that "[...] when the number 0 is generated. This number is not considered for the mean." . . .
In test 7, I get only one random number value, which is zero, and this should be discarded. Therefore the set of numbers to average is an empty set: this empty set has a sum of zero (or undefined?) and — most importantly — a count of zero. So therefore the mean there should be undefined, or NaN, as far as I can understand. This is how I implemented Solution 1391527. Please let me know if I am overlooking some important point. . . . —Thanks, David.
Interesting problem.
solution comment
test comment
Make a random, non-repeating vector.
1605 Solvers
957 Solvers
Back to basics - mean of corner elements of a matrix
317 Solvers
Matlab Basics - Create a row vector
216 Solvers
Separate even from odd numbers in a vector - with a loop
512 Solvers