Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
wert
Anmeldungsdatum: 11.06.2007 Beiträge: 12
|
Verfasst am: 11.06.2007, 20:59 Titel: stoppuhr |
|
|
hi
ich habe vor folgendes zu programmieren und wollte fragen ob das mit qb auch mölich ist
eine stopuhr miet zeiten die gesammelt werden und daaus werden die schnellste und langsamste zeit herausgesucht durchschnitt wäre naturlich auch noch super . jedes mal wenn die stopp uhr ein signal bekommt soll eine neue zeit angefangen werden.
also hab ich mal versucht eine stopuhr zu proggen indem ich eine varialble als timmer definiere und diese minus timer nehme wenn ich eine taste drücke doch das hat nicht geklappt. es kamm immer die fehler meldung das ich 2 variablen gleich definiert hätte.
habt ihr eine idee wie ich mit der stopuhr anfangen könnte? |
|
Nach oben |
|
 |
Eternal_pain

Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 11.06.2007, 21:29 Titel: |
|
|
könnte man vielleicht so machen....
Code: |
Dim TimeHolder(999) as Double
Dim ShortTime as Double
Dim ATime as Double
Dim Last as Integer
Do
ATime=Timer
getkey
TimeHolder(Last)=Timer-ATime
ShortTime=TimeHolder(Last)
Last=Last + 1
Loop until Multikey(&h01)
For l as integer =0 to Last-1
If TimeHolder(l)<ShortTime Then ShortTime=TimeHolder(l)
Next l
?"Die schnellste Zeit:",ShortTime
sleep
|
_________________
 |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 11.06.2007, 21:55 Titel: |
|
|
Und im richtigen Forum posten und zudem den Code, den man geschrieben hat (auch wenn er nicht gefunzt hat) gleich mit.  _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
darkinsanity aka sts

Anmeldungsdatum: 01.11.2006 Beiträge: 456
|
|
Nach oben |
|
 |
wert
Anmeldungsdatum: 11.06.2007 Beiträge: 12
|
Verfasst am: 12.06.2007, 13:59 Titel: |
|
|
danke für die schnellen antworten.
in welches forum hätte es den besser gepasst? dann weiss ich bescheid wenn ich wieder eine frage haben sollte. |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
 |
wert
Anmeldungsdatum: 11.06.2007 Beiträge: 12
|
Verfasst am: 12.06.2007, 19:45 Titel: |
|
|
hi
wie kann ich meinen code hier an besten ins forum kopieren? ich habe ein wenig rumversucht aber es gibt noch ein kleines problem  |
|
Nach oben |
|
 |
Skilltronic

Anmeldungsdatum: 10.09.2004 Beiträge: 1148 Wohnort: Köln
|
Verfasst am: 12.06.2007, 20:46 Titel: |
|
|
Du speicherst dein Programm mit der Option Format "Text - von anderen Programmen lesbar", öffnest diese Datei dann mit dem Editor, Wordpad oder so und kannst ihn dann hier als Code reinkopieren, indem du oben den Button "Code" davor und danach anklickst. Das setzt jeweils in eckigen Klammern ein code davor bzw. ein /code am Ende deines Programmtextes. _________________ Elektronik und QB? www.skilltronics.de ! |
|
Nach oben |
|
 |
wert
Anmeldungsdatum: 11.06.2007 Beiträge: 12
|
Verfasst am: 13.06.2007, 15:53 Titel: |
|
|
Code: |
CLS
DO
IF INKEY$ = CHR$ (32) THEN
start! = TIMER
sekunde! = TIMER - start!
END IF
LOOP
PRINT sekunde!
LOCATE 1,1
|
hi
natürlich kommt immer null raus
wie bring ich ihn dazu das er sich das erste mal timer merkt und bei wiederholten clicken das mit dem aktuellem timer ninus nimmt? dann würde ich doch als sekunde! die vergangene zeit bekommen.
ich hoffe ich nerve euch nicht zu sehr und das ihr mir noch einmal helfen könnt.
gruß wert |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
|
Nach oben |
|
 |
wert
Anmeldungsdatum: 11.06.2007 Beiträge: 12
|
Verfasst am: 13.06.2007, 16:47 Titel: |
|
|
natürlich danke!
wie rechne ich jetzt die sekunden in minuten um wenn 60 s vergangen sind? in dem pogramm ist es doch dieser teil der das macht?
Code: |
Sekunden# = CDBL(Sekunden!)
Stunden& = INT(Sekunden# / 3600#)
Minuten& = INT((Sekunden# - Stunden& * 3600#) / 60#)
Sekundenanzeige# = Sekunden# - Stunden& * 3600# - Minuten& * 60#
Sekunden$ = RIGHT$(STR$(CLNG(Sekundenanzeige# * 10) + 10 ^ 3), 3)
Minuten$ = RIGHT$(STR$(Minuten& + 100), 2)
Stunden$ = RIGHT$(STR$(Stunden& + 100), 2)
|
doch dan versteh ich noch nicht so recht. was ist dieses doubel oder dieses INT ?
fragen über fragen
gruß wert |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4700 Wohnort: ~/
|
Verfasst am: 13.06.2007, 17:02 Titel: |
|
|
Und das sekunde! = TIMER - start! kann auch aus der Schleife raus, aber unten hin.
INT schneidet die Nachkommastellen ab. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
 |
wert
Anmeldungsdatum: 11.06.2007 Beiträge: 12
|
Verfasst am: 13.06.2007, 17:14 Titel: |
|
|
so eine minutenanzeige habe ich jetzt.
min% = INT(sekunde!/60)
doch jetzt zählt er die sekunden auch weiter wenn sie höher als 60 sind. hat jemand eine idee wie ich eine sekundenanzeige ausgeben kann die nur bis 60 zählt? |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4700 Wohnort: ~/
|
Verfasst am: 13.06.2007, 17:16 Titel: |
|
|
Ich weiß jetzt die Modulo-Funktion nicht aus dem Kopf - mathematisch brauchst du
INT(sekunde!) MOD 60
edit: In Ordnung, der Ausdruck HEISST
INT(sekunde!) MOD 60 _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
 |
wert
Anmeldungsdatum: 11.06.2007 Beiträge: 12
|
Verfasst am: 13.06.2007, 17:40 Titel: |
|
|
super das geht! aber dann habe ich meine nachkommastellen bei den sekunden verloren. mir is grad auch noch eine lösung eingefallen
sekunde! -(min# *60)= sekundenanzeige!
 |
|
Nach oben |
|
 |
wert
Anmeldungsdatum: 11.06.2007 Beiträge: 12
|
Verfasst am: 13.06.2007, 17:51 Titel: |
|
|
hi
mein programm sieht jetzt so aus:
Zitat: |
CLS
start! = TIMER
DO
IF INKEY$ = CHR$ (32) THEN
sekunde! = TIMER - start!
END IF
min% = INT(sekunde!/60)
sekundenanzeige! = sekunde! - ( min%*60)
PRINT "min: " min%; "sec:" ;sekundenanzeige!
LOCATE 1,1
LOOP
|
wenn ich es starte läuft alles soweit. doch wenn 60 s rum sind steht hinter der sekundenanzeige -02 woher kommt das? 
Zuletzt bearbeitet von wert am 13.06.2007, 17:53, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4700 Wohnort: ~/
|
Verfasst am: 13.06.2007, 17:52 Titel: |
|
|
Kannst ja mal ausprobieren, ob
sekunde! MOD 60
auch funktioniert. Mir ist Modulo mit Nachkommastellen allerdings nicht recht geheuer. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4700 Wohnort: ~/
|
Verfasst am: 13.06.2007, 17:54 Titel: |
|
|
wert hat Folgendes geschrieben: | wenn ich es starte läuft alles soweit. doch wenn 60 s rum sind steht hinter der sekundenanzeige -02 woher kommt das?  |
Und als Minutenwert? 1 oder 0?
Vielleicht verstehe ich es jetzt auch falsch - poste mal die gesamte Ausgabe. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
 |
wert
Anmeldungsdatum: 11.06.2007 Beiträge: 12
|
Verfasst am: 13.06.2007, 17:55 Titel: |
|
|
das habe ich schon gemacht aber es gibt auch dann keine kommastellen |
|
Nach oben |
|
 |
wert
Anmeldungsdatum: 11.06.2007 Beiträge: 12
|
Verfasst am: 13.06.2007, 18:04 Titel: |
|
|
so sieht die ausgabe aus:
min: 1 sek: 8,71875 -02 |
|
Nach oben |
|
 |
|