Visual Basic Forum

Visual Basic Forum
für VB6 und VB.NET Programmierer
 
RegistrierenRegistrieren  LoginLogin
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB6] Fragen - Antworten
Autor
Nachricht
meteor45_
Tutorial Leser
Tutorial Leser

Anmeldedatum: 04.11.2007
Beiträge: 29

nur eine zahl einmal
Verfasst am: 06.12.2007, 15:17

ch wollte fragen da ich gerade einen lottozahlengenerator am coden bin
wie ich das mache das nur immer einmal eine zahl genommen wird

hier mein code:

Code:
Dim lotto(1 To 49) As String
lotto(1) = "1"
lotto(2) = "2"
lotto(3) = "3"
lotto(4) = "4"
lotto(5) = "5"
lotto(6) = "6"
lotto(7) = "7"
lotto(8) = "8"
lotto(9) = "9"
lotto(10) = "10"
lotto(11) = "11"
lotto(12) = "12"
lotto(13) = "13"
lotto(14) = "14"
lotto(15) = "15"
lotto(16) = "16"
lotto(17) = "17"
lotto(18) = "18"
lotto(19) = "19"
lotto(20) = "20"
lotto(21) = "21"
lotto(22) = "22"
lotto(23) = "23"
lotto(24) = "24"
lotto(25) = "25"
lotto(26) = "26"
lotto(27) = "27"
lotto(28) = "28"
lotto(29) = "29"
lotto(30) = "30"
lotto(31) = "31"
lotto(32) = "32"
lotto(33) = "33"
lotto(34) = "34"
lotto(35) = "35"
lotto(36) = "36"
lotto(37) = "37"
lotto(38) = "38"
lotto(39) = "39"
lotto(40) = "40"
lotto(41) = "41"
lotto(42) = "42"
lotto(43) = "43"
lotto(44) = "44"
lotto(45) = "45"
lotto(46) = "46"
lotto(47) = "47"
lotto(48) = "48"
lotto(49) = "49"

Randomize
zufall1 = Int((Rnd * 49) + 1)
zufall2 = Int((Rnd * 49) + 1)
zufall3 = Int((Rnd * 49) + 1)
zufall4 = Int((Rnd * 49) + 1)
zufall5 = Int((Rnd * 49) + 1)
zufall6 = Int((Rnd * 49) + 1)

ausgabe1 = lotto(zufall1)
ausgabe2 = lotto(zufall2)
ausgabe3 = lotto(zufall3)
ausgabe4 = lotto(zufall4)
ausgabe5 = lotto(zufall5)
ausgabe6 = lotto(zufall6)
 
r4z3r_
« Webmaster »<b><font color=red>« Webmaster »</fo



Anmeldedatum: 06.02.2007
Beiträge: 252


Verfasst am: 06.12.2007, 16:25

Umständlich^^
Code:
Option Base 1
Dim zahl(49) As Boolean
Dim anzahl As Integer
Dim x As Integer
Private Sub cmdzahlen_Click()

For i = 1 to 49
zahl(i) = False
Next i

Do While anzahl < 6
x = Int(Rnd * 49) + 1
If zahl(x) = False Then
List1.Additem x
zahl(x) = True
anzahl = anzahl + 1
End If
Loop
End Sub



Gibt bestimmt bessere Lösungen als diese... aber diese sollte reichen


Der Code sollte eig selbsterklärend sein. Ansonsten frag nach, wenn irgendwas unklar sein sollte.

btw der ist mal eben per hand geschrieben^^ also keine garantie auf richtigkeit
 
xXCoP-KillaXx_
Tutorial Leser
Tutorial Leser

Anmeldedatum: 30.11.2007
Beiträge: 30


Verfasst am: 06.12.2007, 16:34

Hier (schreibfehler nich ausgeschlossen nur schnell geschrieben) Müsste so klappen:

//Edit : Fuck hab razer seinen nich gesehen Very Happy naja haste 2

Code:
Dim aZahlenFeld(1 To 49) As Boolean
Dim inAnzahl As Integer
Dim inLotto As Integer
Dim stAusgabe As String

For inAnzahl = 1 To 6
Do
inLotto = Int(Rnd * 49) + 1
Loop Until aZahlenFeld(inLotto) = False
aZahlenFeld(inLotto) = True
stAusgabe = stausgabe & vbTab & inLotto
Next inAnzahl
MsgBox stAusgabe & vbTab, vbOKOnly, _
"Die Lottozahlen ohne Doppelte!"
 
meteor45_
Tutorial Leser
Tutorial Leser

Anmeldedatum: 04.11.2007
Beiträge: 29


Verfasst am: 06.12.2007, 19:49

soll ich den code einfach mit einfügen ?
 
xXCoP-KillaXx_
Tutorial Leser
Tutorial Leser

Anmeldedatum: 30.11.2007
Beiträge: 30


Verfasst am: 06.12.2007, 20:32

DU brauchst nur meinen code deinen kannste wegschmeisen Wink
 
King of Chaos_
Coder
Coder

Anmeldedatum: 26.09.2007
Beiträge: 235


Verfasst am: 06.12.2007, 21:21

find den von r4z3r aber i-wie auch besser ^^

naja schmeiss deinen dreck weg Very Happy
nutz einen von den 2 ^^
 
meteor45_
Tutorial Leser
Tutorial Leser

Anmeldedatum: 04.11.2007
Beiträge: 29


Verfasst am: 06.12.2007, 21:48

edit: noch ne frage ehm wie kann ich den die zahlen ausgeben ? mit

Private Sub txtsave_Click()
If Option1 = True Then

Option Base 1
Dim zahl(49) As Boolean
Dim anzahl As Integer
Dim x As Integer

For i = 1 To 49
zahl(i) = False
Next i

Do While anzahl < 6
x = Int(Rnd * 49) + 1
If zahl(x) = False Then
List1.AddItem x
zahl(x) = True
anzahl = anzahl + 1
End If
Loop

okay freaks .. vielen dank
für eure hilfe echt nice

leider bekom ich die email funktion nicht hin würde gern ein email versand progtramm schreiben da ich mein eigenen pop3 und smtp server habe

will zwar nur über smtp versenden aber bekomm datt ja net hin hat jemand bock mir das in icq oder msn oder ts zu erklären wäre cool ^^

ps: jeden tag ne gute tat
 
meteor45_
Tutorial Leser
Tutorial Leser

Anmeldedatum: 04.11.2007
Beiträge: 29


Verfasst am: 07.12.2007, 14:47

will nicht nerven ..

aber bitte helft mir
 
r4z3r_
« Webmaster »<b><font color=red>« Webmaster »</fo



Anmeldedatum: 06.02.2007
Beiträge: 252


Verfasst am: 07.12.2007, 14:51

Erste Verwarnung für dich!

Keine Doppelpost und kein pushen von Threads wenn nicht 2 Tage vergangen sind... seit doch mal geduldig-.- als ob euer Thread so schnell in Vergessenheit gerät...

Boardregeln lesen!
 
Blue!Sky!_
Coder
Coder



Anmeldedatum: 06.10.2007
Beiträge: 227


Verfasst am: 07.12.2007, 14:52

meteor45 hat Folgendes geschrieben:
will nicht nerven ..

dann tues doch nich....

also was is jetzt dein problem damit?
 
meteor45_
Tutorial Leser
Tutorial Leser

Anmeldedatum: 04.11.2007
Beiträge: 29


Verfasst am: 07.12.2007, 15:09

ich weiß nicht wie ich das jetzt umsetzte und
das wenn man zb ein command button klick ..
das den die generierten zahlen zb so ausgegben werden

ausgabe1.Text
 
Blue!Sky!_
Coder
Coder



Anmeldedatum: 06.10.2007
Beiträge: 227


Verfasst am: 07.12.2007, 15:13

ausgabe1.txt = "deine nummer"
 
meteor45_
Tutorial Leser
Tutorial Leser

Anmeldedatum: 04.11.2007
Beiträge: 29


Verfasst am: 07.12.2007, 15:15

hää wie jetzt ?

-.- ich will doch nur meine generierte zahl ausgeben ?!
 
toilette_
Coder
Coder

Anmeldedatum: 20.10.2007
Beiträge: 86


Verfasst am: 07.12.2007, 15:53

um deinen code mal wesentlich zu verkleinern:

Code:
Dim lotto(1 To 49) As String


Private Sub Form_Load()
For i = 1 To 49
lotto(i) = i
Next i
End Sub
 
meteor45_
Tutorial Leser
Tutorial Leser

Anmeldedatum: 04.11.2007
Beiträge: 29


Verfasst am: 07.12.2007, 15:57

was soll der spam ?


das habe ich doch nicht gefragt -.-

das bringt mir nichts
 
r4z3r_
« Webmaster »<b><font color=red>« Webmaster »</fo



Anmeldedatum: 06.02.2007
Beiträge: 252


Verfasst am: 07.12.2007, 16:51

-.-' bevor ihr irgendwas postet lest mal was eure Vorposter geschrieben haben.

So versendest du EMails per winSock:

http://www.activevb.de/tipps/vb6tipps/tipp0051.html

Und jetzt bitte nur noch Dinge schreiben, die das Thema betreffen!
 
meteor45_
Tutorial Leser
Tutorial Leser

Anmeldedatum: 04.11.2007
Beiträge: 29


Verfasst am: 07.12.2007, 17:02

aha..und wie mach ich datt nun mit ehm den sontierten zahln
 
r4z3r_
« Webmaster »<b><font color=red>« Webmaster »</fo



Anmeldedatum: 06.02.2007
Beiträge: 252


Verfasst am: 07.12.2007, 20:00

Quellcode mit Kommentaren lesen -> Verstehen ( Wichtigster Schritt) -> Selbst versuchen!

Wenn du dann nicht weiter kommst kannst du nochmal fragen, aber erwarte nicht, dass dir hier alles vorgekaut wird.

Und achte mal ein bisschen auf deine Rechtschreibung...ich muss mir den einen Satz den du geschrieben hast 5 mal durchlesen, damit ich verstehe was du eigentlich willst. Rolling Eyes
 
meteor45_
Tutorial Leser
Tutorial Leser

Anmeldedatum: 04.11.2007
Beiträge: 29


Verfasst am: 07.12.2007, 20:10

ja sorry..

habe da schnell geschrieben weil ich weg musste ..

ehm ich wollte jetzt nicht wissen wie das mit dem e-mail versand funktioniert
sondern wie ich das jetzt mit dem code machen:

If Option1 = True Then

Option Base 1
Dim zahl(49) As Boolean
Dim anzahl As Integer
Dim x As Integer

For i = 1 To 49
zahl(i) = False
Next i

Do While anzahl < 6
x = Int(Rnd * 49) + 1
If zahl(x) = False Then
List1.AddItem x
zahl(x) = True
anzahl = anzahl + 1
End If
Loop

ich weiß jetzt nicht wie ich die generierte zahl ausgegeben bekomme ?!
 
r4z3r_
« Webmaster »<b><font color=red>« Webmaster »</fo



Anmeldedatum: 06.02.2007
Beiträge: 252


Verfasst am: 07.12.2007, 20:30

Erstmal kommt das Option Base 1 IMMER ganz nach oben.

Ausgabe:

Code:

For i = 0 To List1.Listcount - 1

Msgbox(List1.List(i))

Next i


Kommt halt drauf an was man Ausgabe nennen will... für mich reicht ne Listbox^^
 
meteor45_
Tutorial Leser
Tutorial Leser

Anmeldedatum: 04.11.2007
Beiträge: 29


Verfasst am: 07.12.2007, 20:38

ich will jede einzellne zahl in einer textbox ausgeben

mfg
 
r4z3r_
« Webmaster »<b><font color=red>« Webmaster »</fo



Anmeldedatum: 06.02.2007
Beiträge: 252


Verfasst am: 07.12.2007, 22:04


...muss man denn alles vorkauen-.-:


Code:
For i = 0 To List1.Listcount - 1

Text1(i).Text = List1.List(i)

Next i


Natürlich vorher die Textboxen mit den Indexen 0 bis 5 erstellen
 
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB6] Fragen - Antworten
 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge [Umfrage] Scelus Trojaner (Source Code) 2367 06.10.2007, 11:54
Keine neuen Beiträge Code Snippets 765 13.09.2008, 14:22
Keine neuen Beiträge Code für Pc Herunterfahren?? 3213 17.06.2007, 22:02
Keine neuen Beiträge Code bestimmen, während Laufzeit 785 07.06.2007, 11:49
Keine neuen Beiträge [Text] Source code snippets 2894 06.04.2007, 18:14
 


[ Time: 0.0862s ][ Queries: 145 (0.0316s) ][ GZIP on - Debug on ]