#!/bin/bash #Procedura zamieniajaca liczbe na jej reprezentacje slowna procedura() { if [ $1 -lt 0 -a $1 -gt 99 ]; then echo "Liczba w nieprawidlowym zakresie!" exit fi case $1 in 10) echo "dziesiec" ;; 11) echo "jedenascie" ;; 12) echo "dwanascie" ;; 13) echo "trzynascie" ;; 14) echo "czternascie" ;; 15) echo "pietnascie" ;; 16) echo "szesnascie" ;; 17) echo "siedemnascie" ;; 18) echo "osiemnascie" ;; 19) echo "dziewietnascie" ;; 2?) echo -n "dwadziescia " ;; # -n -- nie przechodz do nastepnego wiersza 3?) echo -n "trzydziesci " ;; 4?) echo -n "czterdziesci " ;; 5?) echo -n "piecdziesiat " ;; 6?) echo -n "szescdziesiat " ;; 7?) echo -n "siedemdziesiat " ;; 8?) echo -n "osiemdziesiat " ;; 9?) echo -n "dziewiecdziesiat " ;; esac if [ $i -lt 10 -o $i -gt 19 ]; then # jezeli liczba < 10 i liczba > 19 case $1 in 0) echo "zero" ;; ?0) echo "" ;; *1) echo "jeden" ;; *2) echo "dwa" ;; *3) echo "trzy" ;; *4) echo "cztery" ;; *5) echo "piec" ;; *6) echo "szesc" ;; *7) echo "siedem" ;; *8) echo "osiem" ;; *9) echo "dziewiec" ;; esac fi } # test procedury i=0 while [ $i -le 99 ]; do procedura $i i=$[ $i + 1 ]; done