Another update from ingydotnet^djgoku

This commit is contained in:
Ingy döt Net 2015-11-18 06:14:39 +00:00
parent 91df62d461
commit 948b86eafa
7604 changed files with 108452 additions and 22726 deletions

View file

@ -0,0 +1,9 @@
repeat
set a to random number from 0 to 19
if a is 10 then
log a
exit repeat
end if
set b to random number from 0 to 19
log a & b
end repeat

View file

@ -1,9 +1,12 @@
open datetime random console
open datetime random monad io
loop = loop' 1
where loop' n t | r == t = writen (show r)
| else = writen (show r) `seq` loop' (n+1) t
where seed = toInt <| (ticks <| datetime.now()) * n
r = rnd seed 0 19
where loop' n t = do
dt <- datetime.now
seed <- return <| toInt <| (ticks <| dt) * n
r <- return $ rnd seed 0 19
putStrLn (show r)
if r <> t then loop' (n + 1) t else return ()
loop 10
loop 10 ::: IO

View file

@ -0,0 +1,15 @@
defmodule Loops do
def break do
:random.seed(:os.timestamp)
break(:random.uniform(20)-1)
end
def break(10), do: IO.puts 10
def break(r) do
IO.write r
IO.puts ",\t#{:random.uniform(20)-1}"
break(:random.uniform(20)-1)
end
end
Loops.break

View file

@ -28,7 +28,7 @@ C beginning again.
STOP
END
C FORTRAN 77 does not have come with a random number generator, but it
C FORTRAN 77 does not come with a random number generator, but it
C is easy enough to type "fortran 77 random number generator" into your
C preferred search engine and to copy and paste what you find. The
C following code is a slightly-modified version of:

View file

@ -0,0 +1,31 @@
SUBROUTINE RANDU(IX,IY,YFL)
Copied from the IBM1130 Scientific Subroutines Package (1130-CM-02X): Programmer's Manual, page 60.
CAUTION! This routine's 32-bit variant is reviled by Prof. Knuth and many others for good reason!
IY = IX*899
IF (IY) 5,6,6
5 IY = IY + 32767 + 1
6 YFL = IY
YFL = YFL/32767.
END
FUNCTION IR19(IX)
CALL RANDU(IX,IY,YFL)
IX = IY
I = YFL*20
IF (I - 20) 12,11,11
11 I = 19
12 IR19 = I
END
IX = 1
Commence the loop.
10 I = IR19(IX)
WRITE (6,11) I
11 FORMAT (I3)
IF (I - 10) 12,20,12
12 I = IR19(IX)
WRITE (6,11) I
GO TO 10
Cease.
20 CONTINUE
END

View file

@ -0,0 +1,5 @@
10 NUM = 0
20 WHILE NUM <> 10
30 NUM = INT(RND * 20)
40 PRINT NUM
50 WEND

View file

@ -0,0 +1,13 @@
(function streamTillInitialTen() {
var nFirst = Math.floor(Math.random() * 20);
console.log(nFirst);
if (nFirst === 10) return true;
console.log(
Math.floor(Math.random() * 20)
);
return streamTillInitialTen();
})();

View file

@ -0,0 +1,34 @@
18
10
16
10
8
0
13
3
2
14
15
17
14
7
10
8
0
2
0
2
5
16
3
16
6
7
19
0
16
9
7
11
17
10

View file

@ -0,0 +1,14 @@
console.log(
(function streamTillInitialTen() {
var nFirst = Math.floor(Math.random() * 20);
if (nFirst === 10) return [10];
return [
nFirst,
Math.floor(Math.random() * 20)
].concat(
streamTillInitialTen()
);
})().join('\n')
);

View file

@ -0,0 +1,9 @@
17
14
3
4
13
10
15
5
10

View file

@ -0,0 +1,10 @@
while true
n = rand(0:19)
@printf "%4d" n
if n == 10
println()
break
end
n = rand(0:19)
@printf "%4d\n" n
end

View file

@ -1,14 +1,15 @@
use std::rand;
use std::rand::Rng;
use rand::Rng;
extern crate rand;
fn main() {
let mut rng = rand::task_rng();
loop {
let num = rng.gen_range(0, 20);
println!("{:d}", num);
if num == 10 {
break;
let mut rng = rand::thread_rng();
loop {
let num = rng.gen_range(0, 20);
println!("{}", num);
if num == 10 {
break;
}
println!("{}", rng.gen_range(0, 20));
}
println!("{:d}", rng.gen_range(0, 20));
}
}

View file

@ -0,0 +1,8 @@
while %T
a=int(rand()*20) // [0..19]
printf("%2d ",a)
if a==10 then break; end
b=int(rand()*20)
printf("%2d\n",b)
end
printf("\n")