[ Valerij Zajcev @ 18.01.2007. 21:26 ] @
Code:
Dim pass
pass = InputBox("Unesi sifru: ")
Do Until pass = "vlada"
MsgBox "Sifra je pogresna! Probajte opet"
pass = InputBox("Unesi sifru: ")
Loop


Kako da odradim ovo >> U ovaj kod hteo bih da stavim varijablu tipa do while ali ne znam kako, cilj je da posle 3 pogresne sifre bude onemoguceno ponovno kucanje?

[ goranvuc @ 18.01.2007. 21:36 ] @
Code:

Dim pass
Dim AnswerCount

pass = InputBox("Unesi sifru: ")
AnswerCount = 1

Do Until (pass = "vlada" OR AnswerCount = 3)
    
    MsgBox "Sifra je pogresna! Probajte opet"
    pass = InputBox("Unesi sifru: ")
    AnswerCount = AnswerCount + 1

Loop

Valjda si na ovo mislio.
[ Valerij Zajcev @ 18.01.2007. 22:38 ] @
da, rako nesto. Da li bi mogao samo ukratko da mi opises sta si uradio sa ta 3 koraka?
hvala
[ Shadowed @ 18.01.2007. 23:16 ] @
Gorane, hajd' razmisli sta ce biti sa tim kada unese pogresnu sifru cetvrti put :D
Tj. moze i tako uz dodatnu proveru posle svega sa if
AnswerCount = 3 then WrongPass()
[ goranvuc @ 18.01.2007. 23:39 ] @
Citat:
Shadowed: Gorane, hajd' razmisli sta ce biti sa tim kada unese pogresnu sifru cetvrti put :D
Tj. moze i tako uz dodatnu proveru posle svega sa if
AnswerCount = 3 then WrongPass()

OK, ja bas nisam nesto ulazio u smisao svega toga (ovo sto sam napisao nisam ni probao), nije bilo pitanje sta kad je vise od 3 pogresna upisa, tj. evo sta je decko trazio:
Citat:
Valerij Zajcev:Kako da odradim ovo >> U ovaj kod hteo bih da stavim varijablu tipa do while ali ne znam kako, cilj je da posle 3 pogresne sifre bude onemoguceno ponovno kucanje?

a mislim da moj kod zadovoljava gore postavljeni uslov - ili se varam? Sto se tice smislenosti, naravno da bi u nastavku cele price trebalo nesto slicno onome sto si napisao.

Pozdrav!
[ goranvuc @ 18.01.2007. 23:55 ] @
Citat:
Valerij Zajcev: da, rako nesto. Da li bi mogao samo ukratko da mi opises sta si uradio sa ta 3 koraka?
hvala

Sad tek videh ;) Nadam se da se salis, posto ono sto je dodato ne predstavlja nista revolucionarno u odnosu na ono sto je vec bilo. Ali hajde: promenljiva AnswerCount predstavlja brojac koliko puta prikazujes inputbox (njeno uvecavanje uvek prati inputbox() funkciju) Kljucno je to sto je u petlji pored uslova "Radi dok nije upisana lozinka vlada" dodato i "... ili dok broj pokusaja nije 3" tj. petlja se prekida ako se upise "vlada" ili ako se 3 puta upise pogresna lozinka. Sta ces posle da radis, samo ti znas.

Ajd zdravo!
[ Shadowed @ 19.01.2007. 00:42 ] @
Ma, sala mala. Stvar je u tome da ti je uslov za ispunjenje i za tri greske bio isti pa mi je bilo malo smesno :).
nhf :)
[ goranvuc @ 19.01.2007. 00:57 ] @
Citat:
Shadowed:
nhf

Naravno
[ Valerij Zajcev @ 19.01.2007. 19:21 ] @
Nisam hteo da nacinjem novu temu evo jos jedan problem sa korenom...

Code:
' %Ovde pocinju specijalne operacije "kvadratne jednacine"%
    Sub kvj
    f = 4
    t = 2
    a = InputBox("Unesi a: ")
    b = InputBox("Unesi b: ")
    c = InputBox("Unesi c: ")
    z = b * b - f * a * c
    s = Sqr (z)

    MsgBox "Prvo resenje jednacine je:  " & s
End sub



probao sam i z da stavim u zagradu i sqr ispred njega, ali nece javlja ovu gresku:

C:\Documents and Settings\Administrator\Desktop\vladaradi.vbs(103, 2) Microsoft VBScript runtime error: Invalid procedure call or argument: 'Sqr'


***** script completed *****
[ goranvuc @ 19.01.2007. 20:36 ] @
Argument Sqr() funkcije ne sme biti negativan broj, verovatno je to, proveri prvo da li je z promenljiva negativan broj!!!
[ Valerij Zajcev @ 19.01.2007. 20:47 ] @
jeste negativan je pa sta da radim, mora da mi izbaci resenje :)??

PS
zasto * / - radi a + ne recimo
unesi a
unesi b
c = a + b
c = ab

tipa
4+5 = 45
zasto?
[ goranvuc @ 19.01.2007. 21:39 ] @
Citat:
Valerij Zajcev: jeste negativan je pa sta da radim, mora da mi izbaci resenje :)??

Sta si ti imao iz matematike, nadam se da se samo salis (valjda je smilie zbog toga tu?).

Citat:
Valerij Zajcev:
zasto * / - radi a + ne recimo
unesi a
unesi b
c = a + b
c = ab

tipa
4+5 = 45
zasto?

Zato sto je Return Value od InputBox() tipa String, a u VB-u operator + ima visestruku primenu u zavisnosti od tipa podataka; ako sabiras brojeve dobices broj, ako sabiras stringove dobices string koji nastaje spajanjem sabiraka.

Ako hoces da ti ono gore radi onda...
Code:

unesi a
unesi b
c = CDbl(a) + CDbl(b)

...ce ti dati dobar rezultat.

Prouci malo osnove, sve lepo pise samo treba da se procita.