Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Man kann's auch zur Fuss... Aber wenn jemand faul ist...:)


#! /bin/bash


#for questions and opinions feel free to mail me: pecunia@pisula.net


while read -p "Bitte eine dezimale Zahl eingeben: " DZL

do

   echo $DZL | grep ^[a-Z]*$ > /dev/null

   if [ $? -eq 0 ]

   then

      echo "Bitte nur Zahlen eingeben"

      continue   

   fi

   echo $DZL | grep ^[0].*$  > /dev/null

   if [ $? -eq 0 ]

   then


      case $DZL in


      0)

         echo "0";;

      *)

         echo "Bitte ohne führende 0";;


      esac

   else


         i=0


         while [ "$DZL" -ge "$((16**$i))" ]   

         do


            ERG=$(( 16 ** $i ))      

            i=$[ $i+1 ]         


         done


         while [ "$ERG" -ge 1 ]

         do

            ERG1=$(( $DZL / $ERG ))      

            ERG2=$(( $ERG1 * $ERG ))   

            DZL=$(( $DZL - $ERG2 ))      

            ERG=$(( $ERG / 16 ))      


            case $ERG1 in


            10)   

               echo -ne "A";;      

            11)            

               echo -ne "B";;      

            12)            

               echo -ne "C";;      

            13)               

               echo -ne "D";;      

            14)

               echo -ne "E";;

            15)

               echo -ne "F";;

            *)

               echo -ne $ERG1;;


            esac

         done

      echo

   fi

done 

Eine kleine Bitte... Sollte jemand dieses Skript nutzen und es auch nützlich finden, würde ich mich über eine Email sehr freuen: pecunia@pisula.net

Ich weiss, das ist hier kein Programmierwettbewerb und ich will auch nicht besserwisserisch auftreten (ja ich weiss, gerade das tu ich gerade), aber ich habs trotzdem mal verschlankt und unter AIX getestet:


#! /bin/bash


while read -p "Bitte eine dezimale Zahl eingeben: " DZL

do

   echo $DZL | grep ^[a-Z]*$ > /dev/null

   if [ $? -eq 0 ]

   then

      echo "Bitte nur Zahlen eingeben"

      continue   

   fi

   echo 'obase=16;$DZL' |bc

done 

Unglaublich... Und ich brauchte über 2 Stunden um es hinzubekommen. :D

Bist Weltklasse...

Stimmt. Wieder was gelernt. :)

Ihr macht mich verlegen...:( Aber was soll's... ich bin nur Amateur. Danke für die Lektion...

Gruß

pecunia

Hallo,

Ihr macht mich verlegen...:( Aber was soll's... ich bin nur Amateur. Danke für die Lektion...

Sieh es mal positiv. Du hast den Algorithmus zur Umrechnung selbst implementiert (und damit weisst Du genau, was passiert). Wir hingegen verwenden nur die fertigen Stückchen, die die Shell bzw. das Betriebssystem mit sich bringt ;)

Nic

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.