100825/tex/sh100625relhc.sh

#!/bin/bash

# (c) David Vajda
# Stochastik, relative haeufigkeit, h(X), ...
# 10/06/25

echo "(c) David Vajda"
echo "Stochastik, relative haeufigkeit, h(X), ..."
echo "10/06/25"
date +%m/%d/%Y/%N
DATE=$(date +%m.%d.%Y.%N)


digits=(1 2 4 8)
i=0
j=0
n=$((32*4))

while [ $i -lt $n ]
do
    x=$((${digits[$j*($RANDOM%2)]}))
    y=$(($y+x))
    i=$(($i+1))
    j=$((($j+1)%4))
    if [ $j -eq 0 ]
    then
        echo "$(($i/4)). $y"
        y=0
        x=0
    fi
done

i=0
X=(A E F G   B H I J   C K L M   D N O P)

while [ $i -lt $((${#X[@]})) ]
do
    if [ $(($i%4)) -eq 0 ]
    then
        echo "${X[$(($i))]}"
    fi
    i=$(($i+1))
done

i=0

while [ $i -lt $((${#X[@]})) ]
do
    if [ $(($i%4)) -ne 0 ]
    then
        j=0
        echo -n "${X[$(($i))]} := {" >> "tmp$DATE.tmp"
        while [ $j -lt $((${#X[@]}-4)) ]
        do
            if [ $(($RANDOM%2)) -eq 0 ]
            then
                echo -n "${X[$(($j))]}, " >> "tmp$DATE.tmp"
            fi
            j=$(($j+4))
        done
        echo "${X[12]}}" >> "tmp$DATE.tmp"
    fi
    i=$(($i+1))
done

cat "tmp$DATE.tmp" | sed 's/[A-Z]\(.*\)/\1/g' | sort | uniq

rm "tmp$DATE.tmp"