Der Atmega8 und die 7-Segmentanzeigen

Fragen oder Tipps & Tricks über Software

Moderatoren: Tim Sasdrich, Sebi

Re: Der Atmega8 und die 7-Segmentanzeigen

Beitragvon Anse » 25.06.2011, 18:27

"Div" bedeutet geteilt-oder?
Anse
 
Beiträge: 1442
Registriert: 09.06.2011, 14:18

Re: Der Atmega8 und die 7-Segmentanzeigen

Beitragvon topas » 25.06.2011, 18:30

Ich denke mal ja. In mikrobasic: "/". Wie wohl in den meisten Programmiersprachen (z.B. pahlbasic :D ).
topas
 
Beiträge: 3796
Registriert: 16.08.2010, 12:47

Re: Der Atmega8 und die 7-Segmentanzeigen

Beitragvon Anse » 25.06.2011, 18:35

Bascom kennt "Div" auch nicht mit "/" habe ich schon Erfolge erzielt.
Anse
 
Beiträge: 1442
Registriert: 09.06.2011, 14:18

Re: Der Atmega8 und die 7-Segmentanzeigen

Beitragvon topas » 25.06.2011, 18:43

hmmmm, pssst - können wir Chef noch trauen? Bin mir gar nicht mehr so sicher? Vielleicht verwechselt er sein Beetlebasic auch schon mal mit Bascom. Ich kenne ähnliches. Ich kupfere ja auch überall ab. :D Aber das grosse Vorbild bleibt: Commodorebasic. (Ursprung Microsoft, wie so viele andere Basic-Dialekte auch)

Edit: habe grad nachgeschaut: auch in Chefs Basic ist der Operator für die Division "/". Sorry Chef. Weiss nicht, wie er auf div kommt.
aus der Bascom-Help:
* Asterisks (multiplication symbol)
+ Plus sign
, Comma
- Minus sign
. Period (decimal point)
/ Slash (division symbol) will be handled as \
^ Exponent
topas
 
Beiträge: 3796
Registriert: 16.08.2010, 12:47

Re: Der Atmega8 und die 7-Segmentanzeigen

Beitragvon Anse » 25.06.2011, 19:19

Ich habe mich mal kundig gemacht. die Funktion Modulo sucht bei einer Divisions Aufgabe das nächstliegnde Ergebnis und gibt den Rest aus.

z.B. so 10 mod 3 = 1
3 mal 3 = 9 + 1 = 10
Stimmt das?
Anse
 
Beiträge: 1442
Registriert: 09.06.2011, 14:18

Re: Der Atmega8 und die 7-Segmentanzeigen

Beitragvon topas » 25.06.2011, 19:21

Perfekt!
topas
 
Beiträge: 3796
Registriert: 16.08.2010, 12:47

Re: Der Atmega8 und die 7-Segmentanzeigen

Beitragvon Anse » 26.06.2011, 15:06

Welche Funktion haben die Doppelpunkte im Code?:
Code: Alles auswählen
Ziff(1)=Wert div 100:Wert=Wert mod 100
Ziff(2)=Wert div 10:Wert=Wert mod 10
Ziff(3)=Wert

Ich habe sonst noch nie welche in Quellcodes gesehen.
Anse
Anse
 
Beiträge: 1442
Registriert: 09.06.2011, 14:18

Re: Der Atmega8 und die 7-Segmentanzeigen

Beitragvon hws » 26.06.2011, 16:22

Anse hat geschrieben:Welche Funktion haben die Doppelpunkte im Code?
Beginnt eine neue Anweisung. So als wenn statt Doppelpunkt eine neue Zeile beginnen würde.
Den Compiler interessiert es nicht. Der Mensch merkt, dass da logisch was zusammengehört.

hws
hws
 
Beiträge: 1081
Registriert: 11.01.2009, 18:58
Wohnort: NRW

Re: Der Atmega8 und die 7-Segmentanzeigen

Beitragvon Anse » 27.06.2011, 17:55

Hallo
Noch eine Frage:
ich habe mal das Code Beispiel mit 256 durgerechnet:
Ziffer3: 256/100=2,56 2 mod 100 = 2
Ziffer2: 256/10=25,6 25 mod 10 = 5
Ziffer1 = 256
Müsste bei Ziffer1 nicht 6 statt 256 stehen?

Wenn man den Code für Ziffer1 so schreibt:
Code: Alles auswählen
Ziffer1=wert mod 10

Dann kommt für Ziffer1 immer die letzte Ziffer von der eingegebenen
Zahl raus. Oder habe ich einen Denkfehler?

Anse
Anse
 
Beiträge: 1442
Registriert: 09.06.2011, 14:18

Re: Der Atmega8 und die 7-Segmentanzeigen

Beitragvon hws » 27.06.2011, 20:04

Anse hat geschrieben:ich habe mal das Code Beispiel mit 256 durgerechnet:
Ziffer3: 256/100=2,56 2 mod 100 = 2
...

Das Programm sah aber mal anders aus. auch der ursprüngliche Wert (hier 256) wurde verändert:

Ziffer3 = Wert/100 : Wert=Wert mod100
...Also Ziffer3 = 256/100 = 2 (eigentlich 2,56, aber weil Ziffer3 eine integerzahlt ist, werden die Nachkommastellen abgeschnitten)
...Ist Ziffer3 auch eine Floating Zahl, müsste die Anweisung lauten:
...Ziffer3= int(Wert/100)
...Und jetzt kommt das, was du unterschlagen hast:
Wert=Wert mod 100
...also Wert=256 mod 100 -> ergibt 56.
...Und mit diesem neuen Wert=56 wird weiter gerechnet:
Ziffer2 = Wert/10 : Wert=Wert mod10
...ergibt Ziffer2 = 5 und neuer "Wert"= 6
Ziffer1 = Wert
...Also Ziffer1 = 6

Schreib doch nach jeder Anweisung zum Test hin:
Print Ziffer3, Ziffer2, Ziffer1, Wert
Dann siehst du, was passiert.

hws
hws
 
Beiträge: 1081
Registriert: 11.01.2009, 18:58
Wohnort: NRW

Re: Der Atmega8 und die 7-Segmentanzeigen

Beitragvon Anse » 28.06.2011, 10:25

Danke, jetzt habe ichs verstanden.
Anse
Anse
 
Beiträge: 1442
Registriert: 09.06.2011, 14:18

Vorherige

Zurück zu Software

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast