hasan13

hasan13

Üye
07.11.2006
Acemi Er
84
Hakkında

#15.10.2007 23:35 0 0 0
#15.10.2007 23:29 0 0 0
#11.10.2007 04:09 0 0 0
#11.10.2007 00:58 0 0 0
#09.10.2007 20:04 0 0 0
#09.10.2007 20:00 0 0 0
#05.10.2007 13:44 0 0 0
#01.10.2007 03:10 0 0 0
#30.09.2007 05:09 0 0 0
#30.09.2007 05:06 0 0 0
#20.09.2007 16:50 0 0 0
#04.09.2007 14:08 0 0 0
#04.09.2007 01:04 0 0 0
  • İNDİRMEK İÇİN TIKLA




    noimage

    KOD FRAGMANI

    Dim num0, num1, num2, num3, num4, num5, num6, num7, num8, num9 As String
    Dim uzunluk, back_num, num_bol, num_carp, num_topla, num_cıkar, num_us, sonuc_us As Double
    Dim sonuc_topla, sonuc_cıkar, sonuc_bol, sonuc_carp, sonuc_n, sonuc_kare, sonuc_kup As Double
    Dim num_f, sayac, us, msg1, msg2, msg3 As Integer
    Dim flag As Boolean



    Private Sub cmd_backspace_Click()

    uzunluk = Len(CStr(txt_panel))

    back_num = Left(txt_panel, uzunluk - 1)

    txt_panel = CStr(back_num)

    End Sub

    Private Sub cmd_bol_Click()

    If txt_panel = "" Then

    msg2 = MsgBox("LÜTFEN SAYI GİRİNİZ.", vbCritical, "HATA")

    Exit Sub

    End If

    num_bol = CDbl(txt_panel)

    txt_panel = ""

    End Sub

    Private Sub cmd_c_Click()

    txt_panel = ""

    End Sub

    Private Sub cmd_carp_Click()

    If txt_panel = "" Then

    msg2 = MsgBox("LÜTFEN SAYI GİRİNİZ.", vbCritical, "HATA")

    Exit Sub

    End If

    num_carp = CDbl(txt_panel)

    txt_panel = ""

    End Sub

    Private Sub cmd_cıkar_Click()

    If txt_panel = "" Then

    msg2 = MsgBox("LÜTFEN SAYI GİRİNİZ.", vbCritical, "HATA")

    Exit Sub

    End If

    num_cıkar = CDbl(txt_panel)

    txt_panel = ""

    End Sub

    Private Sub cmd_esittir_Click()

    If txt_panel = "" Then

    msg2 = MsgBox("LÜTFEN SAYI GİRİNİZ.", vbCritical, "HATA")

    Exit Sub

    End If

    If num_topla <> num_cıkar And num_topla <> num_carp And num_topla <> num_bol Then

    sonuc_topla = num_topla + CDbl(txt_panel)

    txt_panel = CStr(sonuc_topla)

    ElseIf num_cıkar <> num_topla And num_cıkar <> num_bol And num_cıkar <> num_carp Then

    sonuc_cıkar = num_cıkar - CDbl(txt_panel)

    txt_panel = CStr(sonuc_cıkar)

    ElseIf num_carp <> num_topla And num_carp <> num_cıkar And num_carp <> num_topla Then

    sonuc_carp = num_carp * CDbl(txt_panel)

    txt_panel = CStr(sonuc_carp)

    ElseIf num_bol <> num_carp And num_bol <> num_topla And num_bol <> num_cıkar Then

    If CDbl(txt_panel) = 0 Then

    msg1 = MsgBox("SAYI SIFIRA BÖLÜNEMEZ.", vbCritical, "HATA")

    Exit Sub

    End If

    sonuc_bol = num_bol / CDbl(txt_panel)

    txt_panel = CStr(sonuc_bol)


    ElseIf flag = True Then

    us = CInt(txt_panel)

    sonuc_us = num_us

    Do While 1 < us

    us = us - 1

    sonuc_us = sonuc_us * num_us

    Loop

    txt_panel = CStr(sonuc_us)

    End If

    'tekrar işlem yapmak için değişkenlerin sıfırlanmasını sağlayan kod fragmanı

    num_topla = Empty
    num_carp = Empty
    num_cıkar = Empty
    num_bol = Empty
    num_us = Empty

    End Sub

    Private Sub cmd_fib_Click()

    If txt_panel = "" Then

    msg2 = MsgBox("LÜTFEN SAYI GİRİNİZ.", vbCritical, "HATA")

    Exit Sub

    ElseIf CDbl(txt_panel) = 0 Then

    msg3 = MsgBox("SIFIRINCI RAKAM YOKTUR.", vbCritical, "HATA")

    Exit Sub

    End If

    Dim num_fib(0 To 1500000) As Double

    Dim sayac1 As Double

    num_fib(0) = 0
    num_fib(1) = 1
    num_fib(2) = 2

    For sayac1 = 1 To CDbl(txt_panel) - 1

    num_fib(sayac1 + 1) = num_fib(sayac1) + num_fib(sayac1 - 1)

    Next

    txt_panel = CStr(num_fib(sayac1))

    End Sub

    Private Sub cmd_n_Click()

    If txt_panel = "" Then

    msg2 = MsgBox("LÜTFEN SAYI GİRİNİZ.", vbCritical, "HATA")

    Exit Sub

    End If

    'faktoriyel hesabı için kullanılan kod fragmanı

    num_f = CDbl(txt_panel)

    sayac = 2

    sonuc_n = 1

    For sayac = 2 To num_f + 1

    sonuc_n = sonuc_n * (sayac - 1)

    Next

    txt_panel = CStr(sonuc_n)

    End Sub

    Private Sub cmd_num0_Click()

    num0 = CStr(txt_panel) + "0"

    txt_panel = CStr(num0)

    End Sub

    Private Sub cmd_num1_Click()

    num1 = CStr(txt_panel) + "1"

    txt_panel = CStr(num1)

    End Sub

    Private Sub cmd_num2_Click()

    num2 = CStr(txt_panel) + "2"

    txt_panel = CStr(num2)

    End Sub

    Private Sub cmd_num3_Click()

    num3 = CStr(txt_panel) + "3"

    txt_panel = CStr(num3)

    End Sub

    Private Sub cmd_num4_Click()

    num4 = CStr(txt_panel) + "4"

    txt_panel = CStr(num4)

    End Sub

    Private Sub cmd_num5_Click()

    num5 = CStr(txt_panel) + "5"

    txt_panel = CStr(num5)

    End Sub

    Private Sub cmd_num6_Click()

    num6 = CStr(txt_panel) + "6"

    txt_panel = CStr(num6)

    End Sub

    Private Sub cmd_num7_Click()

    num7 = CStr(txt_panel) + "7"

    txt_panel = CStr(num7)

    End Sub

    Private Sub cmd_num8_Click()

    num8 = CStr(txt_panel) + "8"

    txt_panel = CStr(num8)

    End Sub

    Private Sub cmd_num9_Click()

    num9 = CStr(txt_panel) + "9"

    txt_panel = CStr(num9)

    End Sub

    Private Sub cmd_topla_Click()

    If txt_panel = "" Then

    msg2 = MsgBox("LÜTFEN SAYI GİRİNİZ.", vbCritical, "HATA")

    Exit Sub

    End If

    num_topla = CDbl(txt_panel)

    txt_panel = ""

    End Sub

    Private Sub cmd_us_alma_Click()

    If txt_panel = "" Then

    msg2 = MsgBox("LÜTFEN SAYI GİRİNİZ.", vbCritical, "HATA")

    Exit Sub

    End If

    num_us = CDbl(txt_panel)

    txt_panel = ""

    flag = True

    End Sub

    Private Sub cmd_x_kare_Click()

    If txt_panel = "" Then

    msg2 = MsgBox("LÜTFEN SAYI GİRİNİZ.", vbCritical, "HATA")

    Exit Sub

    End If

    sonuc_kare = CDbl(txt_panel) ^ 2

    txt_panel = CStr(sonuc_kare)

    End Sub

    Private Sub cmd_x_kup_Click()

    If txt_panel = "" Then

    msg2 = MsgBox("LÜTFEN SAYI GİRİNİZ.", vbCritical, "HATA")

    Exit Sub

    End If

    sonuc_kup = CDbl(txt_panel) ^ 3

    txt_panel = CStr(sonuc_kup)

    End Sub
#01.02.2007 02:37 0 0 0
  • noimage




    [SIZE="20"]Basit Bir robot Verilen komutlarla ilerleyen bir Robot. 32 *32 'lik bi karede ilerler.... d = aşağı , u = yukarı , r = sağa , l= sola olcak şekilde yazılır ... mesela r5 yazdığınızda sağa 5 adım ilerler.... aralarda birer ya da 3-5 olması farketmez boşluklar bırakarak komutları yazınız .. robot bunları teker teker uygulayacaktır isterseniz alt satıra da dewam edip text'i full doldurmakta mümkün .... önemli bir hatırlatma robotun kodları uygulayabilmesi için .. bir text dosyası açmalısınız .... ve bir de commondialog oluşturmanız gerekir...

    İYİ KULLANIMLAR :)

















    KOD FRAGMANI :

    Dim eksen, duzelt_komut1, toplam, yeni_ifade, val_kuvvet, yon, dosya_ad As String
    Dim uzunluk_komut1, x_eksen, y_eksen As Integer, val_gitme, sayac1, sayac2, sayac3, sayac4, msg_uyari As Integer

    Function Val_Yeni(ByVal x As String) As Double
    ' Metin içinden rakamları bulan bir fonksiyon.
    Dim i As Integer
    Dim c As String, sonuc As String

    For i = 1 To Len(x)
    c = Mid(x, i, 1)
    If Asc(c) >= Asc("0") And Asc(c) <= Asc("9") Then sonuc = sonuc & c
    Next
    Val_Yeni = Val(sonuc)

    End Function

    Sub Pause(miliseconds As Long)
    ' Belirtilen süre kadar ara vermeye yarar.
    Dim Wait As Double
    Wait = Timer + (miliseconds / 1000)
    Do While Timer < Wait
    DoEvents
    Loop
    End Sub



    Private Sub Form_Activate()
    msg_uyari = MsgBox("SAYIN KULLANICI, LÜTFEN İFADELERİ GİRERKEN HARFTEN SONRA BOŞLUK BIRAKMADAN İFADEYİ YAZINIZ.ÖRN. R5 L8 U5 D8...vb.", vbCritical, "HATIRLATMA")
    End Sub

    Private Sub Form_Click()

    ' Commondialog aracılığıyla dosyayı açma.

    dosya_ad = CommonDialog1.FileName

    CommonDialog1.ShowOpen

    Open CommonDialog1.FileName For Input As #1


    Do While Not (EOF(1))

    'do while - loop döngüsü tüm satırları taramaya yarar.

    Line Input #1, eksen

    duzelt_komut1 = Trim(eksen)

    uzunluk_komut1 = Len(duzelt_komut1)

    For sayac1 = 1 To uzunluk_komut1

    ' Bir satırdaki ifadeleri bulmak için yapılan for-next döngüsüdür.

    val_kuvvet = ""

    toplam = ""

    For sayac2 = 1 To uzunluk_komut1

    'Harf ve sayı ikililerini bulmak için yazılan for-next döngüsü.

    val_kuvvet = Left(duzelt_komut1, 1)

    x = Asc(val_kuvvet)

    toplam = toplam + val_kuvvet

    duzelt_komut1 = Right(duzelt_komut1, uzunluk_komut1 - sayac2)

    If val_kuvvet = " " Or x = 9 Then Exit For

    Next

    yeni_ifade = Trim(duzelt_komut1)

    duzelt_komut1 = yeni_ifade

    uzunluk_komut1 = Len(yeni_ifade)

    yon = Left(toplam, 1)

    val_gitme = Val_Yeni(toplam)

    x_eksen = Form1.ScaleWidth

    y_eksen = Form1.ScaleHeight

    'Harf ve sayı değerlerinin robotu yönlendirmesi için yazılan kodlar.

    If yon = "u" Or yon = "U" Then

    For sayac3 = 1 To val_gitme - 1

    If shape_surat.Top <= 0 Or shape_burun.Top <= 180 Or _
    shape_goz_l.Top <= 100 Or shape_goz_r.Top <= 100 Or _
    shape_agiz.Top <= 280 Then Exit For

    shape_surat.Top = CInt(shape_surat.Top) - y_eksen / 32

    shape_burun.Top = CInt(shape_burun.Top) - y_eksen / 32

    shape_goz_l.Top = CInt(shape_goz_l.Top) - y_eksen / 32

    shape_goz_r.Top = CInt(shape_goz_r.Top) - y_eksen / 32

    shape_agiz.Top = CInt(shape_agiz.Top) - y_eksen / 32

    Pause (500)

    Beep

    Next

    ElseIf yon = "R" Or yon = "r" Then

    For sayac3 = 1 To val_gitme - 1

    If x_eksen <= CInt(shape_surat.Left) Or x_eksen <= CInt(shape_burun.Left + 155) Or _
    x_eksen <= CInt(shape_goz_l.Left + 100) Or x_eksen <= CInt(shape_goz_r.Left + 200) Or _
    x_eksen <= CInt(shape_agiz.Left + 100) Then Exit For

    shape_surat.Left = CInt(shape_surat.Left) + x_eksen / 32

    shape_burun.Left = CInt(shape_burun.Left) + x_eksen / 32

    shape_goz_l.Left = CInt(shape_goz_l.Left) + x_eksen / 32

    shape_goz_r.Left = CInt(shape_goz_r.Left) + x_eksen / 32

    shape_agiz.Left = CInt(shape_agiz.Left) + x_eksen / 32

    Pause (500)

    Beep

    Next

    ElseIf yon = "L" Or yon = "l" Then

    For sayac3 = 1 To val_gitme - 1

    If shape_surat.Left <= 0 Or shape_burun.Left <= 180 Or _
    shape_goz_l.Left <= 100 Or shape_goz_r.Left <= 100 Or _
    shape_agiz.Left <= 280 Then Exit For

    shape_surat.Left = CInt(shape_surat.Left) - x_eksen / 32

    shape_burun.Left = CInt(shape_burun.Left) - x_eksen / 32

    shape_goz_l.Left = CInt(shape_goz_l.Left) - x_eksen / 32

    shape_goz_r.Left = CInt(shape_goz_r.Left) - x_eksen / 32

    shape_agiz.Left = CInt(shape_agiz.Left) - x_eksen / 32

    Pause (500)

    Beep

    Next

    ElseIf yon = "d" Or yon = "D" Then

    For sayac3 = 1 To val_gitme - 1

    If x_eksen <= CInt(shape_surat.Top) Or x_eksen <= CInt(shape_burun.Top + 155) Or _
    x_eksen <= CInt(shape_goz_l.Top + 100) Or x_eksen <= CInt(shape_goz_r.Top + 200) Or _
    x_eksen <= CInt(shape_agiz.Top + 100) Then Exit For

    shape_surat.Top = CInt(shape_surat.Top) + y_eksen / 32

    shape_burun.Top = CInt(shape_burun.Top) + y_eksen / 32

    shape_goz_l.Top = CInt(shape_goz_l.Top) + y_eksen / 32

    shape_goz_r.Top = CInt(shape_goz_r.Top) + y_eksen / 32

    shape_agiz.Top = CInt(shape_agiz.Top) + y_eksen / 32

    Pause (500)

    Beep

    Next

    End If

    Next

    Loop

    Close #1

    End Sub

    Private Sub Form_Load()

    'Robot için yapılan shape'lerin başlangıçta durması gereken yerleri.

    shape_surat.Left = 0
    shape_surat.Top = 0
    shape_burun.Left = 155
    shape_burun.Top = 180
    shape_goz_r.Top = 100
    shape_goz_r.Left = 200
    shape_goz_l.Top = 100
    shape_goz_l.Left = 100
    shape_agiz.Top = 280
    shape_agiz.Left = 100

    End Sub
#01.02.2007 02:32 0 0 0
#01.02.2007 02:30 0 0 0
#01.02.2007 01:47 0 0 0
#27.01.2007 17:12 0 0 0