#!/bin/sh
#
# Ausgabe des Eingangsparameters $1 in roemischen Ziffern
#
ZIFF () 
   # Funktion zur Bearbeitung einer einstelligen Ziffer $1
   # Einer-, Zehner-, Hunderterstelle unterscheiden sich nur
   # durch die verw. Zeichen $2: Einer, $3: Fuenfer, $4: Zehner
   { X=$1
   if test $X -eq 9; then
      ZAHL=${ZAHL}$2$4
   elif test $X -gt 4; then
      ZAHL=${ZAHL}$3
      while test $X -ge 6; do
         ZAHL=${ZAHL}$2 ; X=`expr $X - 1`
      done
   elif test $X -eq 4; then
    ZAHL=${ZAHL}$2$3
  else
      while test $X -gt 0; do
          ZAHL=${ZAHL}$2 ; X=`expr $X - 1`
      done
    fi
    }
if test $# -eq 0; then
      echo "Usage: roemisch Zahl"; exit
fi
XX=$1
while test $XX -gt 999; do
      ZAHL=${ZAHL}"M"; XX=`expr $XX - 1000`
done
ZIFF `expr $XX / 100` C D M
XX=`expr $XX % 100`
ZIFF `expr $XX / 10` X L C
ZIFF `expr $XX % 10` I V X
echo "$ZAHL \n"
