Page 42 - Gartenbahn
P. 42

41


               char und strintf


               Mit char und strintf können wir unsere Ausgaben besser verwalten. Wir brauchen nicht für jede eine
               eigene Variable, sondern wir könne das ganze einfach zusammensetzen und in der entsprechenden
               Form darstellen. Wir schauen uns drei Variablen hum1, dew1 und temp1 an. Diese werden im
               durchlauf von -9000 bis +9000 in 11-schritten durchlaufen. Hum1 und dew1 sind statisch. Über
               sprintf werden die drei Variablen zusammengesetzt und in einer definierten Zeichenfolge oder
               Rundung dargestellt.





















               %3d.%02d, 3-stellig und dezimal, %2d.%01d,  2-stellig und dezimal aber mit Führungsnull.

               abs(temp1%100) temp1 auf 1/100 runden also 2 Stellen nach dem Komma!

                                             Wenn wir jetzt in die rechte Anzeige schauen, sehen wir das der
                                             Wert nicht auf 1 Stelle gerundet ist, das kommt davon, dass ich den
                                             Wert abs(dew1%10) einfach gelöscht habe.

                                             Also mit den ersten Werten wird die Art der Darstellung vorbereitet
                                             und mit der zweiten der Inhalt und die Größe.

               %3d.%02d, %2d.%01d, %2d.%01d    temp1/100,abs(temp1%100),hum1/10,abs(hum1%10),dew1/10,abs(dew1%10)
               Darstellungsbeispiel:

               Das sind die Variablen mit Wert int:
               hum1 = 415           hum1/100 = 41,5              abs(hum1%10) = 5

               dew1 = -51           dev1/10 =- 5,1               abs(dew1%10) = 1
               temp1 = -5203        temp1/100 = -52,03           abs(temp1%100) = 03


                %3d     .      .%02d   ,       %2d    .       .%01d   ,      %3d    .       .%01d

                -52     .      03      ,       41     .       5      ,       -5     .       1
   37   38   39   40   41   42   43   44   45   46   47