bİl 102 bİlgİsayar programlama
DESCRIPTION
BİL 102 BİLGİSAYAR PROGRAMLAMA. 3. HAFTA İŞLENECEK KONULAR ARİTMETİK İŞLEMLER KONTROL KOMUTLARI DÖNGÜ KOMUTLARI. ARİTMETİK İŞLEMLER. Visual Basic’te kullanılan aritmetik işlemler şunlardır. Toplama+ Çıkarma- Çarpma* Bölme/ Tamsayı bölme\ Modmod Üs alma^. - PowerPoint PPT PresentationTRANSCRIPT
BİL 102 BİLGİSAYAR PROGRAMLAMABİL 102 BİLGİSAYAR PROGRAMLAMA
3. HAFTA İŞLENECEK KONULAR3. HAFTA İŞLENECEK KONULAR
ARİTMETİK İŞLEMLERARİTMETİK İŞLEMLER KONTROL KOMUTLARIKONTROL KOMUTLARI DÖNGÜ KOMUTLARIDÖNGÜ KOMUTLARI
ARİTMETİK İŞLEMLERARİTMETİK İŞLEMLERVisual Basic’te kullanılan Visual Basic’te kullanılan aritmetik işlemler aritmetik işlemler şunlardır.şunlardır.
ToplamaToplama ++ ÇıkarmaÇıkarma -- ÇarpmaÇarpma ** BölmeBölme // Tamsayı bölmeTamsayı bölme \\ ModMod modmod Üs almaÜs alma ^̂
Toplama ve çıkarma işlemiToplama ve çıkarma işlemi
Toplama ve çıkarma işlemi iki basit Toplama ve çıkarma işlemi iki basit matematiksel işlemdir. matematiksel işlemdir.
toplam = sayı1+sayı2toplam = sayı1+sayı2
fark = 5 - eldekalanfark = 5 - eldekalan
sonuc = Sayı1 – Sayı2sonuc = Sayı1 – Sayı2
String verilerin toplanmasıString verilerin toplanması
İki karekter bilgi + operatörü ile İki karekter bilgi + operatörü ile birleştirilebilir. birleştirilebilir.
Örnek:Örnek:Sonuc = “Visual” + “ ”+ “Basic” Sonuc = “Visual” + “ ”+ “Basic”
Bu işlem sonucunda Sonuc=“Visual Basic” olur.Bu işlem sonucunda Sonuc=“Visual Basic” olur.
Karekter bilgileri birbirine eklemek için toplama Karekter bilgileri birbirine eklemek için toplama (+) operatörü yerine birleştirme (& (+) operatörü yerine birleştirme (& Ampersand) operatörünü kullanabilirsiniz.Ampersand) operatörünü kullanabilirsiniz.
Sonuc = “Visual” & “ ”& “Basic” Sonuc = “Visual” & “ ”& “Basic”
Çarpma, Bölme ve Tamsayı Çarpma, Bölme ve Tamsayı Bölme İşlemleri( *, /, \ )Bölme İşlemleri( *, /, \ ) Çarpma işlemi toplama işlemi gibi düzdür. Sayılar Çarpma işlemi toplama işlemi gibi düzdür. Sayılar
sırasıyla birbiri ile çarpılarak sonuç elde edilir. sırasıyla birbiri ile çarpılarak sonuç elde edilir. Sonuc = Sayı1*Sayı2*Sayı3Sonuc = Sayı1*Sayı2*Sayı3
Bölme işleminde ise birinci sayının ikinci sayıya Bölme işleminde ise birinci sayının ikinci sayıya bölünmesiyle elde edilir. bölünmesiyle elde edilir. Sonuc = Sayı1 / Sayı2Sonuc = Sayı1 / Sayı2Sonuc = 10 / 6 ‘ Sonuc değişkeninin değeri 1.66Sonuc = 10 / 6 ‘ Sonuc değişkeninin değeri 1.66
Tamsayı bölme işleminde bölüm sonucunun tamsayı Tamsayı bölme işleminde bölüm sonucunun tamsayı kısmı döndürülür. kısmı döndürülür. Sonuc = Sayı1 \ Sayı2Sonuc = Sayı1 \ Sayı2Sonuc = 10 \ 6 ‘ Sonuc değişkeninin değeri 1 ‘dir.Sonuc = 10 \ 6 ‘ Sonuc değişkeninin değeri 1 ‘dir.
Üs(^) ve Mod ( mod) Üs(^) ve Mod ( mod) işlemiişlemi
Bir sayının üssü alınmak istenirse, ^ Bir sayının üssü alınmak istenirse, ^ operatörü kullanılır.operatörü kullanılır.
Sonuc = 3 ^ 2 ‘ Sonuc 9 olur.Sonuc = 3 ^ 2 ‘ Sonuc 9 olur.
Sonuc = 10 ^ 0 ‘ Sonuc 1 olur.Sonuc = 10 ^ 0 ‘ Sonuc 1 olur.
Sonuc = 10 ^ -2 ‘ Sonuc .01 olur.Sonuc = 10 ^ -2 ‘ Sonuc .01 olur.
Mod işlemi bölme işleminde kalanı verir.Mod işlemi bölme işleminde kalanı verir.
Sonuc = 11 mod 3 ‘ Sonuc 2 olur.Sonuc = 11 mod 3 ‘ Sonuc 2 olur.
İşleçlerin (Operatörlerin) İşleçlerin (Operatörlerin) öncelikleriöncelikleri
Aritmetik ifadelerde öncelik Aritmetik ifadelerde öncelik parantez içindeki ifadededir. parantez içindeki ifadededir. Eğer parantez kullanılmıyorsa, Eğer parantez kullanılmıyorsa, o zaman operatörlerin o zaman operatörlerin öncelikleri,öncelikleri,
1.1.Üs alma (^)Üs alma (^)
2.2.Negatif (-)Negatif (-)
3.3.Çarpma ve bölme (*/)Çarpma ve bölme (*/)
4.4.Tamsayı bölme (\)Tamsayı bölme (\)
5.5.Mod işlemi (Mod)Mod işlemi (Mod)
6.6.Toplama ve çıkarma (+-)Toplama ve çıkarma (+-)
2^4/2*1510sonuc 2^4/2*1510sonuc
16/2*1510sonuc 16/3010sonuc
875.110sonuc
875.11sonuc
1818.565
25a
a = 5 + 2 / (5 + 6)
VB ilea = 5 + 2 / 5 + 6 YANLIŞ
DOĞRU
6666.55*6*156*2
5a a = 5 + 2 *6/ 15 *6*5
YANLIŞ
a = 5 + (2 *6)/(15 *6)*5DOĞRU
a = 5 + 2 *6/(15 *6)*5DOĞRU
6.308*
4156*2
5a a = 5 + 2 * 6 / 15 / 4 * 8a = 5 + 2 * 6 /( 15 / 4) * 8
YANLIŞ
DOĞRU
Karşılaştırma operatörleriKarşılaştırma operatörleri
Bu operatörler ile verilen ifadeler arasında karşılaştırmalar Bu operatörler ile verilen ifadeler arasında karşılaştırmalar yapılır. Genel karşılaştırma operatörleri aşagıda yapılır. Genel karşılaştırma operatörleri aşagıda verilmiştirverilmiştir..
1.1. = operatörü ( eşittir)= operatörü ( eşittir)
2.2. < > operatörü ( eşit değildir)< > operatörü ( eşit değildir)
3.3. > operatörü ( büyüktür)> operatörü ( büyüktür)
4.4. < operatörü (küçüktür) < operatörü (küçüktür)
Eşittir operatörü verilen iki ifadenin eşit olup olmadığını Eşittir operatörü verilen iki ifadenin eşit olup olmadığını anlamak için kullanılmaktadır.anlamak için kullanılmaktadır.
A=12A=12: : B=45B=45SonucSonuc == (A=B) (A=B) 'Sonuc=False'Sonuc=FalseC=23C=23: : D=23D=23SonucSonuc == (A=D) (A=D) 'Sonuc=True'Sonuc=True
KONTROL DEYİMLERİKONTROL DEYİMLERİ
Kontrol Kontrol deyimlerideyimleri belirli ifadeleri kontrol belirli ifadeleri kontrol etmek veya bazı şartların gerçekleşip etmek veya bazı şartların gerçekleşip gerçekleşmedigini kontrol etmek gerçekleşmedigini kontrol etmek amacıyla kullanılan komutlardıramacıyla kullanılan komutlardır. .
Visual Basic ‘te kullanılan kontrol Visual Basic ‘te kullanılan kontrol deyimlerideyimleriIf-End IfIf-End If kontrol yapısı kontrol yapısıSelect CaseSelect Case yapısı yapısı
IF - END IF DeyimiIF - END IF DeyimiIfIf Kosul Kosul ThenThen KoKoşşul dogru ise yapılması istenen işlemlerul dogru ise yapılması istenen işlemlerEndEnd I If f KullandıKullandığğımız her ımız her IfIf kontrol kontrolüü için mutlaka bir için mutlaka bir EndEnd I Iff kullanmalıyız. Bu kontrol yapısının sonlandıkullanmalıyız. Bu kontrol yapısının sonlandığğını ını belirtir. belirtir.
Örnek: Örnek: If ad="FATIH" Then If ad="FATIH" Then Maas=1Maas=1880000EndEnd I Iff
EEğğer koşul gerçekleşmemiş ise yapılması istenen bazı işlemler varsa o er koşul gerçekleşmemiş ise yapılması istenen bazı işlemler varsa o zaman şu şekilde bir kontrol yapısını kullanabiliriz. zaman şu şekilde bir kontrol yapısını kullanabiliriz.
IfIf Ko Koşşul ul ThenThen KoKoşşul dogru ise yapılması istenen işlemler. ul dogru ise yapılması istenen işlemler. ElseElse KoKoşşul yanlış ise yapılması istenen işlemler. ul yanlış ise yapılması istenen işlemler. EndEnd I Iff
Aynı anda bir kaç koşul için karşılaştırma yapılmak isternirse; Aynı anda bir kaç koşul için karşılaştırma yapılmak isternirse;
IfIf Ko Koşşul ul ThenThen KoKoşşul dogru ise yapılması istenen işlemler. ul dogru ise yapılması istenen işlemler. ElseElseIIff Ko Koşşulul22 ThenThen KoKoşşulul22 dogru ise yapılması istenen işlemler. dogru ise yapılması istenen işlemler. ElseElseIIff Ko Koşşulul33 ThenThen KoKoşşulul33 dogru ise yapılması istenen işlemler. dogru ise yapılması istenen işlemler. ElseElse Bütün koBütün koşşullar yanlış ise yapılması istenen işlemler. ullar yanlış ise yapılması istenen işlemler. EndEnd I Iff
Option ExplicitPrivate Sub Command1_Click() Dim ay As Integer ay = InputBox("İstediginiz Ayı Rakam İle Giriniz (1-12)", "If-EndIf Ornegi") Form1.Cls Form1.FontSize = 16 Form1.FontBold = True Form1.ForeColor = RGB(255, 0, 0) Form1.CurrentX = 2500 Form1.CurrentY = 1500 If ay = 12 Or ay = 1 Or ay = 2 Then Print "KIŞ" ElseIf ay >= 3 And ay <= 5 Then Print "İLKBAHAR" ElseIf ay >= 6 And ay <= 8 Then Print "YAZ" ElseIf ay >= 9 And ay <= 11 Then Print "SONBAHAR" Else Print "Bir yılda 12 ay vardır!" End IfEnd SubPrivate Sub Form_Load() Form1.Caption = "If-Then-End If Kontrol Bloğu Örneği" Command1.Caption = "BAŞLA" Form1.BackColor = RGB(255, 255, 255)End Sub
Select Case YapısıSelect Case YapısıBu kontrol yapısında sadece bir degişkenin durum kontrolü yaBu kontrol yapısında sadece bir degişkenin durum kontrolü yappılır.Kontrolü ılır.Kontrolü yapılacak degişkenin genel olarak alabilecegi degerler belirli ise bu yapının yapılacak degişkenin genel olarak alabilecegi degerler belirli ise bu yapının kukllanılması If yapısına göre daha avantajlıdır. Yazılış biçimi genel olarak kukllanılması If yapısına göre daha avantajlıdır. Yazılış biçimi genel olarak aşagıdaki şekildeki gibidiraşagıdaki şekildeki gibidir..
Select Case DegiskenSelect Case Degisken Case Deger1 Case Deger1 Degisken=Deger1 oldugu durumda yapılması istenen işlemler Degisken=Deger1 oldugu durumda yapılması istenen işlemler Case Deger2 Case Deger2 Degisken=Deger2 oldugu durumda yapılması istenen işlemler Degisken=Deger2 oldugu durumda yapılması istenen işlemler Case Else Case Else Degisken yukarıdaki degerler den hicbirine eşit degil ise Degisken yukarıdaki degerler den hicbirine eşit degil ise yapılacak yapılacak işlemler işlemler
End SelectEnd Select
Kullandıgımız her Select ifadesi için bir End Select kullanmalıyız. Kullandıgımız her Select ifadesi için bir End Select kullanmalıyız.
Örnek :
Private Sub Command1_Click()Dim ay As Double
giris:
ay = InputBox("Yilin Hangi Ayi (1-6 Arasinda)")
Select Case ay Case 1 Print "Ocak" Case 2 Print "Subat" Case 3 Print "Mart" Case 4 Print "Nisan" Case 5 Print "Mayis" Case 6 Print "Haziran" Case Else Print "Lutfen 1-6 Arasinda deger Giriniz" GoTo giris End SelectEnd Sub
Örnek:
Private Sub Command1_Click()Dim ay As Double
giris:
ay = InputBox("Yilin Hangi Ayi (1-12 Arasinda)")Select Case ay Case 3 To 5 Print "Ilkbahar" Case 6 To 8 Print "Yaz" Case 9 To 11 Print "Sonbahar" Case 12, 1 To 2 Print "Kış" Case Else Print "Lutfen 1-12 Arasinda deger Giriniz" GoTo giris End SelectEnd Sub
DöngülerDöngülerBu komutlar belirli işlemleri belirli Bu komutlar belirli işlemleri belirli sayıda veya herhangi bir şart sağlanana sayıda veya herhangi bir şart sağlanana kadar tekrarlamak amacı ile kullanılırlar. kadar tekrarlamak amacı ile kullanılırlar. Bu komutlar aşagıda verilmiştir. Bu komutlar aşagıda verilmiştir.
For ….. Next DöngüsüFor ….. Next Döngüsü Do …Loop DöngüsüDo …Loop Döngüsü Do While …. Loop Döngüsü Do While …. Loop Döngüsü Do Until ……Loop Döngüsü Do Until ……Loop Döngüsü Do …… Loop While Döngüsü Do …… Loop While Döngüsü Do …… Loop Until Döngüsü Do …… Loop Until Döngüsü
For...Next DöngüsüFor...Next DöngüsüBütün dillerde bulunan Bütün dillerde bulunan en temel en temel döngü yapısıdır. döngü yapısıdır. Genel yazım şekli aşagıdaki şekildeki gibidirGenel yazım şekli aşagıdaki şekildeki gibidir. .
ForFor sayac=başlangıç sayac=başlangıç ToTo bitiş bitiş StepStep artım artım Arada işletilecek komutlar Arada işletilecek komutlar NextNext sayac sayac
Dim i As IntegerFor i = 1 To 5 Print i, i ^ 2Next i
Dim Faktoriyel As DoubleDim Faktoriyel As Double
Dim i As IntegerDim i As Integer
FaFakkttooriyel=1riyel=1For For ii=1 To Sayi=1 To Sayi FaFakkttooriyel= Fariyel= Fakkttooriyel *riyel *iiNext Next iiPrint FaktoriyelPrint Faktoriyel
Örnek (For Next Döngüsünden Çıkış)
Dim a As DoubleDim i As Integer For i = 1 To 5 a = InputBox("Bir sayi giriniz (Döngüden çikmak için -1)", "Döngu Ornegi") Print a ^ 2 If a = -1 Then Print "Programi Bitirdiniz..." Exit For End If Next i
Private Sub Command1_Click()Dim a As Double10 a = InputBox("Sayi Giriniz...(Bitirmek Icin -1 Giriniz)") If a = -1 Then Exit Sub Print a, a ^ 2 GoTo 10End Sub
Örnek: Sonsuz Döngü
(Ctrl+Break ile kesilebilir), Command2 işe yaramaz.
Private Sub Command1_Click() Do Print "VB ile Programlama" LoopEnd SubPrivate Sub Command2_Click() EndEnd Sub
Örnek: Sonsuz Döngü
Command2 ile sonlandırılabilir.
Private Sub Command1_Click() Do Print "VB ile Programlama" DoEvents Loop
End SubPrivate Sub Command2_Click() EndEnd Sub
Do While KoşulDo While Koşul……Loop deyimiLoop deyimi
Bir blok deyimi, verilen KOŞUL doğru (True) olduğu sürece işletir.Bir blok deyimi, verilen KOŞUL doğru (True) olduğu sürece işletir.Yapısı:Yapısı:
Do While Kosul Do While Kosul Komutlar Komutlar LoopLoop
Örnek : Örnek : Fact=1Fact=1:: I=2 I=2: Sayi=10: Sayi=10Do While I<=SayiDo While I<=Sayi Fact=Fact * IFact=Fact * I I=I+1I=I+1LoopLoop Print FactPrint Fact
Do Until KoşulDo Until Koşul……Loop DeyimiLoop DeyimiBu blok deyimi verilen koşul doğru (True) olana Bu blok deyimi verilen koşul doğru (True) olana
kadar işletir.kadar işletir. YapısıYapısı
Do Until Koşul Do Until Koşul Komutlar Komutlar LoopLoop
Örnek : Örnek : Fact=1Fact=1:: I= I=55Do Until I=1Do Until I=1 Fact=Fact * IFact=Fact * I I=I-1I=I-1LoopLoop
Print FactPrint Fact
İİki Do...Loop döngüsünü iç içe kullanabiliriz.ki Do...Loop döngüsünü iç içe kullanabiliriz.
Do Until Kosul1 Do Until Kosul1 … … Do Until Kosul2 Do Until Kosul2 ... ... ... ...
Loop Loop … … Loop Loop
Her DoHer Do--Until için mutlaka bir Loop Until için mutlaka bir Loop yerleştirmeliyiz. yerleştirmeliyiz.
Now: Bilgisayar Saati,Gün, Ay, Yıl Bilgilerini verir.
Time: Bilgisayar saatini verir
Date: Bilgisayar tarihini verir.
Zaman ve Tarih Komutları
Private Sub Timer1_Timer() Form1.Cls Form1.FontBold = True Form1.FontSize = 14 Form1.FontName = "Verdana" Form1.CurrentX = 1000 Form1.CurrentY = 1000 Print "Su anki zaman: " & Time Form1.CurrentX = 1000 Form1.CurrentY = 1500 Print "Su anki tarih:" & DateEnd Sub
Private Sub Command1_Click() Dim a a = Now Label1.Caption = Format(a, "hh:mm:ss") Label2.Caption = Format(a, "dd:mm:yy") Label3.Caption = Format(a, "dddd") Label4.Caption = Format(a, "mmmm") Label5.Caption = Format(a, "yyyy")End Sub