Görsel C# ile Windows Programlama

Slides:



Advertisements
Benzer bir sunumlar
BPR151 ALGORİTMA VE PROGRAMLAMA - I
Advertisements

Bilgisayar Programlama I
Algoritma ve Akış Diyagramları
(Yrd. Doç. Dr. İbrahim ASRİ)
Bilgisayar Mühendisliğine Giriş
Kontrol İfadeleri : 2.Kısım
Ayrık Yapılar Matlab Notları
Algoritma ve Akış Diyagramları
Problemi Çözme Adımları
MATLAB’İN SAYI YUVARLAMA FONKSİYONLARI
TEMEL BİLGİSAYAR BİLİMLERİ
AKIŞ DİYAGRAMLARI Yard.Doç.Dr. Cihad DEMİRLİ
BPR151 ALGORİTMA VE PROGRAMLAMA - I
ALGORİTMA VE AKIŞ ŞEMALARI.
Algoritma ve Akış Diyagramları
ALGORİTMA ve PROGRAMLAMA
Bilgisayar Programlama
ALGORİTMALAR VE PROGRAMLAMAYA GİRİŞ
Bilgisayar Programlama Güz 2011
Algoritmalar (Algoritms)
Temel tanımlar ve işleyiş
Algoritmalar (Algoritms)
Problem Yaklaşım Temelleri, Algoritma ve Akış Şeması
BM-103 Programlamaya Giriş Güz 2014 (4. Sunu)
C PROGRAMLAMA FONKSİYONLAR Adres ile Fonksiyon Çağırma Pointer (İşaretçiler) ile Fonksiyon Çağırma Rekürsif Fonksiyonlar.
ALGORİTMA.
ENF 204 Bilgisayar Programlama Algoritma ve Akış Diyagramları
Problem Yaklaşım Temelleri, Algoritma ve Akış Şeması
Bilgisayar Programlama Güz 2011
Algoritmalar (Algoritms)
Programlamaya Giriş 1. Verileri İşleyerek Özet bilgiler şekline sokabilen, bu veri ve bilgileri yüksek kapasitelerde saklayıp başka ortamlara iletebilen.
PROGRAMLAMA 2. Hafta TEMEL KAVRAMLAR.
Algoritmalar ve Programlama I Ders 2: Akış Diyagramları
Algoritmalar (Algoritms)
ALGORİTMA VE AKIŞ ÇİZELGELERİ
Algoritma Mantığı ve Akış Diyagramları
ALGORİTMA ve PROGRAMLAMA KAVRAMLARI
Adım Adım Algoritma.
ALGORİTMA NEDİR? İster bilgisayarda, ister matematikte, isterse günlük hayatta karşımıza çıkan her problemin çözüm yolu vardır. Örneğin yemek yerken farkında.
SAYISAL ANALİZ Doç.Dr. Cüneyt BAYILMIŞ.
Ders 2 Algoritma İfade Şekilleri
BİLGİSAYAR PROGRAMLAMA Ders 5: Döngüler
PROGRAMLAMA MANTIĞI, ALGORİTMA PROBLEM ÇÖZME
BÖLÜM 2 ALGORİTMA.
Akış Diyagramları - 1. Akış Diyagramı  Algoritmalar doğal dille yazıldıklarında herkes tarafından aynı biçimde anlaşılmayabilir.  Ancak, akış diyagramlarında.
BÖLÜM 3 AKIŞ DİYAGRAMI.
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
ALGORİTMA VE PROGRAMLAMA 
O R T L G İ M A A Ve Akış şemaları.
Programlamaya Giriş-I Bölüm-1. Algoritma Algoritma günlük yaşamımızda yaptığımız işler sırasında sıklıkla kullandığımız bir yöntemdir. Algoritma, bir.
PROGRAMLAMA TEMELLERİ Burak UZUN Bilişim Teknolojileri Öğretmeni Burak UZUN.
Algoritma ve Akış Şemaları
T.C. ÖMER HALİSDEMİR ÜNİVERSİTESİ EĞİTİM FAKÜLTESİ BİLGİSAYAR VE ÖĞRETİM TEKNOLOJİLERİ ÖĞRETMENLİĞİ EĞİTİMDE BİLİŞİM TEKNOLOJİLERİ – 2 DERSİ ALGORİTMALAR.
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
BM-103 Programlamaya Giriş Güz 2016 (5. Sunu)
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
BİLGİSAYAR PROGRAMLAMA Ders 5: Döngüler
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
Bilgisayar Programlama
Problem Çözme Yaklaşımları
Algoritmanın Hazırlanması
PROGRAMLAMAYA GİRİŞ FORTRAN 77.
Algoritma Nedir? Algoritmayı, herhangi bir problemin çözümü için izlenecek yolun adımlar halinde yazılması olarak tanımlayabiliriz. Algoritma, bir problemin.
Problemi Çözme Adımları
ALGORİTMALAR VE PROGRAMLAMAYA GİRİŞ
Bilgisayar Bilimi Döngüler.
Algoritma ve Akış Diyagramları
NİŞANTAŞI ÜNİVERSİTESİ
Sunum transkripti:

Görsel C# ile Windows Programlama Güz 2009 (1. Hafta)

Algoritma Geliştirme ve Akış Diyagramları

BİLGİSAYARLA PROBLEM ÇÖZÜMÜ AŞAMALARI Programlama Dili Seçimi Analiz Algoritma Geliştirilmesi Akış Şeması Çizimi Programlama Dili Seçimi Programın Yazılması Derleme Çalıştırma Test

PROBLEM ÇÖZÜMÜ AŞAMALARI (devam) Analiz : Sorunun çözülebilmesi için problemin tamamen anlaşılmasını sağlayan ön çalışmalardır. Algoritma Geliştirilmesi : Geliştirilen çözümün sıralı adımlarla ifade edilmesidir. Akış Şeması Çizimi : Geliştirilen algoritmanın şekillerle ifade edilmesidir. Programlama Dili Seçimi : Çözümün netleşmesinden sonra yapılacak işlemleri kolay bir şekilde bilgisayar ortamına aktaracak programlama dilinin seçilmesidir.

PROBLEM ÇÖZÜMÜ AŞAMALARI (devam) Programın Yazılması : Seçilen programlama dilinin kuralları kullanılarak programın yazılmaya başlanmasıdır. Derleme : Programlama dili ile yazılmış programın yazım hatalarının olup olmadığının kontrol edilmesi ve programın makina dili komutlarına çevrilmesidir. Çalıştırma : Çalıştırma aşamasında işletim sistemi derlenmiş programı hard diskten alır ve belleğe taşır. Programın ilk komutunun adresi CPU ya bildirilir ve program çalışmaya başlar. Test : Test aşaması programın mantıksal olarak test edilmesini sağlar ve muhtemel her giriş için doğru sonuçlar üretip üretmediği kontrol edilir.

Program Nedir? Problem çözümü kısmında anlatılan adımlar uygulandıktan sonra ortaya çıkan ve sorunumuzu bilgisayar ortamında çözen ürüne program denir. Programlama Nedir? Problem çözümünde anlatılan adımların tümüne birden programlama denir.

Programlama Dili Nedir? Bir problemin algoritmik çözümünün bilgisayarda yazılmasını sağlayan kurallar dizisidir. Bazı programlama dilleri: MATLAB, C, C++, C# Delphi, Pascal, Visual Basic, Java, Lisp

Algoritma Nedir? Belirli bir problemi çözmek için işletilmesi gereken adımları ve bu adımların hangi sıra ile uygulanacağını belirleyen prosedüre algoritma denir. “İşine gitmek üzere uyanan birinin yapması gereken işler” algoritması: Yataktan kalk Pijamalarını çıkar Duş al Elbiselerini giy Kahvaltını yap Arabana bin ve işe git Sıra önemli. 3 ve 4 nolu adımlar yer değiştirirse mesela? (Kim ıslanmak ister? )

Algoritma Geliştirmede ve Programlamada Kullanılan BazıTemel Kavramlar 1 – Değişkenler 2 – Atama Operatörü 3 – Fonksiyonlar 4 – Sayaçlar 5 – Döngüler

Algoritma Geliştirmede ve Programlamada Kullanılan BazıTemel Kavramlar (devam) 1- Değişken : Bir program içerisinde bilgileri tutmak ve bu bilgiler üzerinde işlem yapmak için değişkenlerden yararlanılır. Örneğin c=a+b ifadesindeki "a","b" ve "c" bizim değişkenlerimizdir.

Algoritma Geliştirmede ve Programlamada Kullanılan BazıTemel Kavramlar (devam) 2-Atama: Herhangi bir değişkenin içine bir değeri veya ifadenin/işlemin sonucunu aktarma işlemidir. değişken = ifade Satırında ‘değişken’ yazan kısım, herhangi bir değişkenin adıdır. ‘ifade’ yazan kısımda ise matematiksel, mantıksal veya alfa nümerik bir ifade olabilir. Aradaki ‘=‘ sembolü, ‘atama operatörü’ olarak adlandırılır ve sağdaki ifadenin/işlemin sonucunu soldaki değişkene aktarır. Bu durumda değişkenin -eğer varsa- bir önceki değeri (eski değeri) silinir. X=3 Y=X+5 işleminin sonucunda Y’nin bir önceki değeri silinerek yerine 8 değeri yazılır.

Algoritma Geliştirmede ve Programlamada Kullanılan BazıTemel Kavramlar (devam) 3- Fonksiyon : Giriş parametrelerini belli bir işlemden geçirdikten sonra, geriye çıkış parametrelerini döndüren işlevlere fonksiyon denir. Değişkenler, fonksiyonların vazgeçilmez elemanlarıdır. Örnek:  Değişkenlerimiz olan a ve b şu değerleri alsın: a=1 ve b=2 ; fonksiyonumuz ise c = a+b olsun. Fonksiyonumuzun sonucu:  c=1+2=3 Burada "a","b" değişkenini girerek ve "c=a+b" fonksiyonunu kullanarak "c" değişkeninin değerini buluyoruz.

Algoritma Geliştirmede ve Programlamada Kullanılan BazıTemel Kavramlar (devam) 4- Sayaç : Programlarımızda bazı işlemlerin belirli sayıda yaptırılması veya işlenen/üretilen değerlerin sayılması gerekebilir. Örneğin: Klavyeden girilen bir cümlede kaç sesli harf olduğunu bulan programda, cümlenin her harfi sırayla çağrılır ve sesli harfler kümesine ait olup olmadığı araştırılır. Eğer çağrılan harf bu kümeye ait ise bunları sayacak olan değişkenin değeri bir artırılır.

Algoritma Geliştirmede ve Programlamada Kullanılan Bazı Temel Kavramlar (devam) sayac = sayac + 1 Şeklindeki işlemde sağdaki ifadede değişkenin eski(önceki) değerine ‘1’ eklenmekte; bulunan sonuç yine kendisine, yeni değer olarak aktarılmaktadır. Bu tür değişkenlere, algoritmada “sayaç” veya “sayıcı” (counter) adı verilir.Yani “sayaç”; işlem akışı kendisine her geldiğinde, belirtilen adım değeri kadar artan/azalan değişkendir.

‘Sayaç’ kullanımına örnek: sayac=sayac+3 Üçer üçer artan bir sayıcıdır sayac=sayac-5 Beşer beşer azalan bir sayıcıdır Örnek: Aşağıdaki algoritmada 1-5 arası sayılar (1 dahil, 5 hariç), sayaç kullanılarak ekrana yazdırılmaktadır. Burada, sayac sayaç değişkenidir. A1: Başla A2: sayac=1 A3 : Eğer sayac=5 ise adım 7 ye git A4: sayac i ekrana yaz A5: sayac=sayac+1 A6: 3.adım’ a git A7: Bitir Hangi amaçlarla kaç değişkene ihtiyaç var?

Algoritma Geliştirmede ve Programlamada Kullanılan Bazı Temel Kavramlar (devam) 5- Döngü : Birçok programda, bazı işlemler belirli ardışık değerlerle gerçekleştirilmekte veya belirli sayıda yapılmaktadır. Programlardaki belirli işlem bloklarını, belirli sayıda tekrarlayan işlem akış çevrimlerine döngü denir.

Döngü Oluşturma Kuralları: 1- Döngü değişkeninin başlangıç değeri belirlenir. 2- Döngü değişkeninin bitiş değeri belirlenir. 3- Döngü değişkeninin bitiş değerine ulaşıp ulaşmadığı test edilir. 4- İstenen işlem gerçekleştirilir. 5- Döngü değişkeni, döngü içinde adım miktarı kadar artırılır yada azaltılır.

‘Döngü’ Kavramına Örnek: Örnek: Aşağıdaki algoritmada 1-10 arası tek sayıların toplamı hesaplanmaktadır. (Aşağıdaki algoritmayi çift sayıların toplamına hangi değişikliği yaparak dönüştürebilirsiniz?) A1: Başla A2: toplam=0 A3: sayac=1 A4: Eğer sayac>=10 ise adım 8 e git A5: toplam=toplam+sayac A6: sayac=sayac+2 A7: Adım 4 e git A8: toplam ı ekrana yaz A9: Bitir Döngü Hangi amaçlarla kaç değişkene ihtiyaç var?

Örnek : Dışarıdan girilen iki sayının toplamını bulan programın algoritması aşağıdaki gibi kurulur: A1 : Başla A2 : A değerini gir A3 : B değerini gir A4 : C= A+B A5 : C' yi ekrana yaz A6 : Bitir Hangi amaçlarla kaç değişkene ihtiyaç var?

A2 : A, B ve C sayılarını dışarıdan gir A3 : enBuyuk=A Örnek : Dışarıdan girilen 3 sayıdan en büyüğünü bulan algoritmayı kurunuz. Algoritma: A1 : Başla A2 : A, B ve C sayılarını dışarıdan gir A3 : enBuyuk=A A4 : Eğer enBuyuk<B ise enBuyuk=B yap A5 : Eğer enBuyuk<C ise enBuyuk=C yap A6 : enBuyuk değerini ekrana yaz A7 : Bitir Hangi amaçlarla kaç değişkene ihtiyaç var?

A2 : toplam=0;sayac=1 baslangıç değerlerini ata Örnek: 0’dan 100’e kadar olan sayma sayılarının kümülatif toplamını ekrana yazdıran algoritmayı geliştiriniz. A1 : Başla A2 : toplam=0;sayac=1 baslangıç değerlerini ata A3 : Eğer sayac=100 ise 6. adıma git A4 : toplam=toplam+sayac A5 : sayac=sayac+1 yap ve 3. Adıma geri dön A6 : toplam’ı ekrana yaz A7 : Bitir Hangi amaçlarla kaç değişkene ihtiyaç var?

Sayının faktöriyeli : faktor , Faktöriyel Değişkeni :sayac Örnek: Verilen bir sayının faktöriyelini hesaplayan programın algoritmasını yazınız. (Faktöriyeli hesaplanacak sayı negatif girilmişse yeniden giriş istenmelidir.) Değişkenler: Sayının faktöriyeli : faktor , Faktöriyel Değişkeni :sayac Faktöriyeli hesaplanacak sayı :Y Algoritma: A1: Başla A2 : faktor =1; sayac =1 A3 : Y’yi gir A4 : Eğer Y<=0 ise 3. adima git A5 : Eğer sayac>Y ise adim 8 e git A6: faktor=faktor*sayac A7: sayac =sayac+1 yap ve adım 5 e git A8 : faktor degerini ekrana yaz A9 : Bitir Anlamlı Değişken İsimleri Seçmek Çok Önemli !!!!!!!!!!!! Hangi amaçlarla kaç değişkene ihtiyaç var?

Akış Diyagramları (Flow Charts): Akış diyagramları, algoritmaların sembolik olarak gösterimidir. Bilgisayarda gerçekleştirilecek her tür aksiyon ayrı bir sembolle gösterilir.

Örnek: Verilen iki sayının ortalamasını hesaplayan programın algoritmasını yazınız ve akış diyagramını çiziniz. Algoritma: A1 : Başla A2 : X değerini gir A3 : Y değerini gir A4 : Ort = (X+Y)/2 A6 : Ort degerini yaz A7 : Bitir Başla X=? Y=? Ort=(X+Y)/2 yaz Ort Bitir Akış diyagramı: Hangi amaçlarla kaç değişkene ihtiyaç var?

A3: Eğer A=0 ise Adım 2’ye git A4: B değerini giriniz A5: X=-B/A Örnek: Ax+b=0 şeklinde verilen 1. derece denklemin çözümünü bulan programın algoritmasını yazınız ve akış diyagramını çiziniz. (A=0 girilmiş ise veri girişi yenilenecektir.) A1: Başla A2: A değerini giriniz A3: Eğer A=0 ise Adım 2’ye git A4: B değerini giriniz A5: X=-B/A A6: Yaz X A7: Bitir A=0 Evet Hayır Hangi amaçlarla kaç değişkene ihtiyaç var?

Örnek: 1’den 100’e kadar olan sayıların (100 dahil) toplamını ve ortalamasını bulan algoritmayı geliştiriniz. Algoritma: A1: Başla A2: sayac=0 A3: toplam=0 A4: sayac=sayac+1 A5: toplam=toplam+sayac A6: Eğer sayac=100 değilse Adım 4’e git A7: ortalama=toplam/sayac A8: Yaz toplam, ortalama A9: Bitir Hangi amaçlarla kaç değişkene ihtiyaç var?

Uygulama: Daha önce algoritması yazılan ve dışarıdan girilen 3 sayıdan en büyüğünü bulan programın akış diyagramını çiziniz. Uygulama: Daha önce algoritması yazılan ve dışarıdan girilen bir sayının faktöriyelini hesaplayan programın akış diyagramını çiziniz.

Algoritma: ??? kurunuz Örnek: F(x) fonksiyonunun degeri X'in aldığı değerlere göre asağıda verilmiştir. X'in değeri 0-20 arasında 0.5 aralıklarla arttığına göre her bir X degeri için F(x) fonksiyonunu hesaplayan programın akış diyagramını çiziniz. 0<= X <= 2 f(x)= X 2< X <= 3 f(x)=X -X3 -22 3< X <=4 f(x)=X2 -2X+13 4< X f(x)=X4 -3X2 -43 Algoritma: ??? kurunuz

Örnek : Ax²+Bx+C=0 şeklinde verilen 2 Örnek : Ax²+Bx+C=0 şeklinde verilen 2. derece denklemin köklerini bulan programın akış diyagramını çiziniz. (İkinci derece denklem olmadığı uyarısını nasıl verirsiniz?)

Örnek:10 tane N sayısının faktöriyelini hesaplayan programın akış diyagramını çiziniz. (Yandaki diyagramdaki sorunları bulunuz.)

A3: A=B ise A4’e git değilse A5’e git Örnek : Kenar uzunlukları dışardan girilen bir ABC üçgenini kenar uzunluklarına göre inceleyen programın algoritmasını kurunuz. A1: Başla     A2: A,B,C değerlerini gir     A3: A=B ise A4’e git değilse A5’e git     A4: B=C ise A6’ya git değilse A8’e git     A5: A=C ise A8’e git değilse A7’e git A6: ‘Üçgen Eşkenardır’ yazdir ve A10’a git A7: B=C ise A8’e git, değilse A9’a git         A8: ‘Üçgen İkizkenardır’ yazdir ve A10’a git     A9: ‘Üçgen Çeşitkenardır’ yazdir     A10: Bitir Hangi amaçlarla kaç değişkene ihtiyaç var?

A1 Başla Eşkenar : A=B=C İkizkenar: A=B veya A=C veya B=C A2 A,B,C Gir Çeşitkenar: A=B=C A3 H A=B E A5 A4 A6 H A=C E H B=C E Eşkenar A7 A8 H B=C E İkizkenar A9 Çeşitkenar Bitir A10