-         

Ergebnis 1 bis 3 von 3

Thema: Stellen (Einer, Zehner, ...) einer Zahl seperat speichern

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    20.10.2007
    Ort
    Bayern
    Alter
    29
    Beiträge
    116

    Stellen (Einer, Zehner, ...) einer Zahl seperat speichern

    Anzeige

    Hallo

    Wieder mal ein verzwicktes Problem. Und zwar ich bastel ja gerade dieses Drehzahlmesser und im Moment bin ich schon soweit das die Ansteuerung der 5x 7-Segmentanzeigen flimmerfrei läuft. (Sogar mit dem 1MHz internen Takt, hätte ich ned gedacht!)

    Jetzt möchte ich eine merhstellige Zahl, z.B. 12345 auf den einzelnen Anzeigen darstellen. Problem ist nur das ich auf Anzeige 1 die Ziffer 1 haben möchte und auf Anzeige 5 nur die Ziffer 5, usw.

    In Visual Basic würd ich das ganze so lösen (erst in Zeichenkette speichern, dann einzelln auslesen:
    Code:
    Dim Zahl As String
    Dim Ziffer(1 To 5) As Byte
    Dim Pos As Byte
    
    Zahl = 12345
    
    For Pos = 1 To 5
        Ziffer(Pos) = Mid(Zahl, Pos, 1)
    Next
    Dann habe ich in dem Array Ziffer die einzelnen Stellen,
    Ziffer 1 hat die 10000er
    Ziffer 2 hat die 1000er
    Ziffer 3 hat die 100er
    Ziffer 4 hat die 10er
    Ziffer 5 hat die 1er

    Wie mach ich sowas in C?
    Danke im Voraus!

    mfg
    Benny

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    06.02.2005
    Ort
    Hamburg
    Alter
    31
    Beiträge
    4.255
    Mit / und % die Zahl schrittweise zerlegen:

    Beispiel: Zahl ist 12345
    Die Zahl durch 10 teilen---> 1234, Rest 5<<letze Stelle.
    Nun die 1234 wieder durch 10 teilen---> 123, Rest 4<<vorletze Stelle.
    Das so lange wiederholen, bis die Zahl einstellig (kleiner als 10) geworden ist.
    Also
    123 durch 10 teilen---> 12, Rest 3
    12 durch 10 teilen---> 1, Rest 2
    Somit sind aller Stellen berechnet worden.

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    20.10.2007
    Ort
    Bayern
    Alter
    29
    Beiträge
    116
    Danke nun funktionierts!

    mfg
    Benny
    cooming soon...

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •