Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 15 odgovora
  • 4.920 pregleda

Najnovija ↓

Pomoć oko zadatka! 08.09.2011. u 14:08 · pre 184 meseca #1
Zadatak glasi:

Npaisati program koji u izlaznu datoteku upisuje tačno vrijeme u satima, minutama i sekundama svaki put kada se kazaljke na satu poklope u intervalu od 00:00h do 12:00h. Kazaljke se poklapaju svakih 1h 5min i 27s (za dvanaest sati poklope se 11 puta).

Interesuje me na koji način se rješava ovaj zadatak?
Re: Pomoć oko zadatka! 09.09.2011. u 18:52 · pre 184 meseca #2
Tako sto sednes i sve to sto si ispricao ukucas u VB :-).

Bilo bi dobro da sam nesto pocnes raditi pa nam se javis kad negdje zapnes, a ovako tesko da ce ti ko pomoci!

Pozdrav!
Potpis
Bolje bit' mrtav pijan neg mrtav trijezan..
Dim VolimTe as Integer
VolimTe=VolimTe+1
Re: Pomoć oko zadatka! 07.10.2011. u 22:39 · pre 183 meseca #3
Pozdrav!
Pokusavao sam rijesiti ovaj zadatak i zapeo sam, pa bih molio za pomoc ako neko zna i ima volje da mi pomogne. Naime, odradio sam dio zadatka u kojem sam odredio intervale preklapanja kazaljki i program ih uredno ispisuje. Problem je samo kako to formatirati/konvertovati u format nalik na vrijeme? Na prijedlog jednog kolege pokusao sam preko CDate, ali mi ta metoda konvertuje moje intervale formate sa danima, mjesecima i godinama, pa tek onda u sate, minute, sekunde - sto je komicno kad se procitaju konverzije (od 31.12.1899 do 11.1.1900 :D)
postoji li nacin da se preko CDate ogranici samo na sate, minute, sekunde i desetinke/stotinke? Ili da mi neko pomogne na koji nacin da intervale koji su Double formatiram u vremenski oblik? Mozda moze i konverzija u String ili Integer, vazno je samo da prikaze na nacin kao da je u pitanju sat tj. vremenski oblik, samo sto sam ja noobara za programiranje, pa ne znam kako :)
Moze li pomoc?
Re: Pomoć oko zadatka! 08.10.2011. u 01:16 · pre 183 meseca #5
Code:
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click


        Dim interval, vrijeme As Double
        Dim brojac As Integer

        interval = 12.0 / 11.0
        For brojac = 1 To 11
            vrijeme = interval * brojac

            lstData.Items.Add(vrijeme)

        Next

    End Sub
End Class


Evo koda, dalje ne znam gdje da se okrenem :)
Nadam se da, nakon sto obrisete suze od smijanja, ce mi neko moci pomoci :)
Nasao sam na netu jos jedan prijedlog, a to je da se Double pretvori prvo u sekunde, a tek onda u vrijeme - ali ni to mi nije poslo za rukom da odradim. Citam jos prijedloge na MSDN-u, mozda nesto i iskopam, a mozda mi jednostavno treba pogled iz drugog ugla.
Pozdrav!
Re: Pomoć oko zadatka! 08.10.2011. u 10:19 · pre 183 meseca #7
hm i da i ne, da budem iskren
dao si mi ideju sta da probam da iskombinujem
a razlog zasto mi tvoje ponudjeno rjesenje ne odgovara je zbog zadatog intervala, a meni treba da se u kodu vidi kako sam dosao do tog intervala i da mi ga konvertuje u format nalik na vrijeme
hvala ti u svakom slucaju

ps. da li ovaj podforum pokriva samo VB 6 ili pokriva i VB.NET, posto je meni VB.NET potreban, a ne VB 6?
Koliko mi se cini, moracu da pokrenem temu na drugom podforumu
Re: Pomoć oko zadatka! 08.10.2011. u 10:48 · pre 183 meseca #8
Ja sam uradio ovako

Code:
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim h, m, s As Decimal
        Dim i As Integer
        h = 0
        m = 0
        s = 0

        For i = 1 To 11
            h = h + 1
            m = m + 5
            If m > 60 Then
                h = h + 1
                m = m - 60
            End If
            s = s + 24
            If s > 60 Then
                m = m + 1
                s = s - 60
            End If
            ListBox1.Items.Add(Str(h) & ":" & Str(m) & ":" & Str(s))
        Next i
    End Sub

End Class
Re: Pomoć oko zadatka! 08.10.2011. u 18:17 · pre 183 meseca #9
pa dobro mozes iskoristiti ovo, samo dodaj ovo u tvoj kod gde imas kako si dosao do intervala, i na kraju u ovom mom kodu tu vrednost dodelis promenljivoj Interval i to bi trebalo da je to to. Pa mislim da pokriva ali ja radim u VB6 i VB 2005, u VB.Net nisam nikad radio ali mislim da je slican mozda ces morati male izmene da odradis.
Potpis
[email protected]=
Re: Pomoć oko zadatka! 09.10.2011. u 02:25 · pre 183 meseca #10
@FOX, druze, hvala ti, pomogao si mi. Uspio sam da izadjem iz beskonacne petlje :)
Zadatak sam rjesio, sad samo jos razmisljam kako da ga usminkam (da za brojeve manje od 10 dodaje 0 ispred) i kako da mi rezultat ispise u neki txt fajl. Al` ako sam uspio prokljuviti ove zezancije, valjda cu i to :)
Jos jednom hvala.
Re: Pomoć oko zadatka! 09.10.2011. u 09:27 · pre 183 meseca #11
Ako negde opet zapnes tu smo da pomognemo, a za taj ispis u txt fajlu ja sam u VB6 koristio ovo:

Code:
Open "c:\My Documents\sample.txt" For Output As #1 
   intMsg = MsgBox("File sample.txt opened") 
   StudentName = InputBox("Enter the student Name") 
   Print #1, StudentName 
   intMsg = MsgBox("Writing a" & StudentName & " to sample.txt ")
Close #1 

Potpis
[email protected]=
Re: Pomoć oko zadatka! 09.10.2011. u 17:10 · pre 183 meseca #12
Malo bolje sam pogledao rezultat i nasao sam gresku prilikom konverzije.
Code:
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim interval, poklapanje As Double
        Dim brojac As Integer
        interval = 12.0 / 11.0
        For brojac = 1 To 11

            poklapanje = interval * brojac
            Dim h, m, s, st As Long
            h = poklapanje
            m = (poklapanje * 60) Mod 60
            s = (poklapanje * 3600) Mod 60
            st = (poklapanje * 360000) Mod 100
            lstData.Items.Add(Str(h) & ":" & Str(m) & ":" & Str(s) & ":" & Str(st))

        Next

    End Sub
End Class


Dakle, negdje sam pogrijesio u konverziji, pa ako neko moze da me uputi da ispravim
Re: Pomoć oko zadatka! 09.10.2011. u 20:12 · pre 183 meseca #13
tebi je promenljiva interval decimalan broj uvek jer delis 12 sa 11 pa je i promenljiva poklapanje decimalan broj osim kada je brojac=11. Ne razumem samo zasto delis 12 sa 11.
Potpis
[email protected]=
Re: Pomoć oko zadatka! 09.10.2011. u 21:00 · pre 183 meseca #14
zato sto je 11 poklapanja kazaljki za 12 sati
pokusao sam na drugi nacin da rijesim zadatak, ali mi opet prebaci da je sesti sati u stvari sedmi :(
Re: Pomoć oko zadatka! 09.10.2011. u 22:23 · pre 183 meseca #15
Mislim da ti je to pogresno kako si zamislio, time sto podelis 12 sa 11 neces dobiti interval za koji se kazaljke poklope. Jesi li razmisljao da izracunas za koji se ugao pomere kazaljke u toku jedne sekunde pa onda koliko im sekundi treba dok se nadju pod istim uglom u odnosu na 12 (onde gde je 12 da ti bude nulti stepen). To je moje neko razmisljanje.
Potpis
[email protected]=
Re: Pomoć oko zadatka! 10.10.2011. u 19:18 · pre 183 meseca #16
nije pogresno, interval jeste 12/11 (odnosno 1,0909090) i treba ga samo konvertovati da izgleda kao vremenski oblik
btw rijesio sam zadatak sa malo manje komplikovanja i primjenio mali trik: kad sam radio konverziju intervala za sate uzeo sam operator \ za dijeljenje i time sam rijesio problem sa zaokruzivanjem vrijednosti.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme