]> git.somenet.org - pub/astra/parallel.git/blob - openmp/merge/generate_random.sh
generate_random now calculates values
[pub/astra/parallel.git] / openmp / merge / generate_random.sh
1 #!/bin/bash
2
3 function pwait() {
4         while [ $(jobs -r | wc -l) -gt 0 ];
5         do
6                 sleep 1
7         done
8 }
9
10 # 10 ^ x values
11 X=8
12 NULLEN=""
13 PUNKTE="."
14 for i in $(seq `expr $X - 1`);
15 do
16         NULLEN="${NULLEN}0"
17         PUNKTE="${PUNKTE}."
18 done
19
20 echo "1${NULLEN} values"
21
22 echo "generating numbers"
23 echo `</dev/urandom tr -dc 0-9 | head -c${XHALBE}${NULLEN}` | sed 's/\(${PUNKTE}\)/\1\n/g' > unsorted1a &
24 echo `</dev/urandom tr -dc 0-9 | head -c${XHALBE}${NULLEN}` | sed 's/\(${PUNKTE}\)/\1\n/g' > unsorted1b &
25 echo `</dev/urandom tr -dc 0-9 | head -c${XHALBE}${NULLEN}` | sed 's/\(${PUNKTE}\)/\1\n/g' > unsorted2a &
26 echo `</dev/urandom tr -dc 0-9 | head -c${XHALBE}${NULLEN}` | sed 's/\(${PUNKTE}\)/\1\n/g' > unsorted2b &
27
28 pwait
29
30 echo "removing empty lines"
31 rm -f unsorted1 unsorted2
32 sed '/^$/d' unsorted1a >> unsorted1
33 sed '/^$/d' unsorted1b >> unsorted1
34 sed '/^$/d' unsorted2a >> unsorted2
35 sed '/^$/d' unsorted2b >> unsorted2
36
37 echo "formatting numlist"
38 cat unsorted1 | sort -n | sed -e ':a;N;$!ba;s/\n/,/g' -e 's/^/,/' -e 's/,[0]*/,/g' -e 's/^,/\tint a[] = {/' -e 's/$/,-1};/' >numlist1.c &
39 cat unsorted2 | sort -n | sed -e ':a;N;$!ba;s/\n/,/g' -e 's/^/,/' -e 's/,[0]*/,/g' -e 's/^,/\tint b[] = {/' -e 's/$/,-1};/' >numlist2.c &
40 pwait