Bascom - Variablen handling

OP #1801567
Lesenswert?
• ▲
▼
Hallo,
ich muß aus einer 3 Stelligen Numerischen Variablen nacheinander die 
Zahlen haben, also 1er, 10er und 100er - Stellen getrennt voneinander.
Im Moment mach ich das über Num.Variable in String wandeln dann Stelle n 
extrahieren und wieder in eine Num.Variable zurück wandeln.

Geht das auch anders? einfacher, vor allem aber schneller?
Gast #1801571
Lesenswert?
• ▲
▼
zählen der Einer-, Zehner- und Hunderter-Stellen???

z.B. ZAHL=365

subtrahiere solange 100 von ZAHL, bis ZAHL kleiner 100 - gibt 3
subtrahiere solange 10 von REST, bis REST kleiner 10 - gibt 6
bei der Einer-Stelle brauchst du nix machen - 5 :-)

so schwer?
OP #1801581
Lesenswert?
• ▲
▼
Das es so auch geht war mir schon klar, sollte aber noch schneller sein 
da der uC wirklich beschäftigt ist, hatte gehofft das Bascom das direkt 
kann.

Das ganze ist ein workaround um auf einem LCD mit T6963 große Zeichen 
(16x16 Pixel) verwenden zu können: zB. Var = 295 = 1: 2.bgf, 2: 9.bgf , 
3: 5.bgf.

werd jetzt mal schaun ob das wirklich schneller ist als die str() 
Methode

Danke für die schnelle Antwort
Gast #1801618
Lesenswert?
• ▲
▼
Ist das Dezimalsystem wirklich sooooo schwer?
1
EINER = ZAHL MOD 10
2
ZAHL = ZAHL \ 10
3
ZEHNER = ZAHL MOD 10
4
ZAHL = ZAHL \ 10
5
HUNDERTER = ZAHL

oder
1
HUNDERTER = ZAHL \ 100
2
ZEHNER = (ZAHL MOD 100) \ 10
3
EINER = ZAHL MOD 10

oder ...
Gast #1801761
Lesenswert?
• ▲
▼
Dann schau selbst ins Bascom-Manual. Laut Seite 252 ist der '\' der 
Integerdivisionsoperator und 'MOD' der Integermodulooperator (man was 
für Wörter :).
Und um durch 10 dividieren zu können und zu wissen wie man bei einer 
ganzzahligen Division mit einem Rest umgeht, bist Du mit Deiner 
Realschule eigentlich schon überqualifiziert. Das lernt man 
normalerweise irgendwo zwischen 2. und 4. Klasse noch vor den 
gebrochenen Zahlen.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.