PROGRAMLAMA 2. Hafta TEMEL KAVRAMLAR.

Slides:



Advertisements
Benzer bir sunumlar
STRİNG FONKSİYONLARI.
Advertisements

BPR151 ALGORİTMA VE PROGRAMLAMA - I
Bilgisayar Mühendisliğine Giriş
Ayrık Yapılar Matlab Notları
Algoritma ve Akış Diyagramları
Problemi Çözme Adımları
Bölüm 2 C Dilinin Temelleri
TEMEL BİLGİSAYAR BİLİMLERİ
BPR151 ALGORİTMA VE PROGRAMLAMA - I
Bölüm 3 – Yapısal Programlama
Algoritma ve Akış Diyagramları
Bölüm 2 C Dilinin Temelleri Genel Kavramlar
Yapısal Program Geliştirme – if, if-else
ALGORİTMA ve PROGRAMLAMA
AKIŞ ŞEMALARI 2.DERS.
İNTERNET PROGRAMCILIĞI I BTP 207 Ders 9. Tek değişkende birden fazla bilgi tutulmak istendiğinde kullanılır. Kullanım şekli: var dizi_adı= new Array(eleman1,
Görsel C# ile Windows Programlama
Bilgisayar Programlama
BPR152 ALGORİTMA VE PROGRAMLAMA - II
Programlama (Hatırlamalar) Yard.Doç.Dr. Cihad DEM İ RL İ Sunu İ çeri ğ i Kayna ğ ı: Vatansever, F. (2010). Algoritma Geliştirme ve Programlamaya Giriş,
Bilgisayar Programlama Güz 2011
Algoritmalar (Algoritms)
Temel tanımlar ve işleyiş
C ile Programlamaya Giriş
DEĞİŞKENLER VE VERİ TİPLERİ
Temel Kavramlar, İşlemler, Operatörler
BM-103 Programlamaya Giriş Güz 2014 (4. Sunu)
İNTERNET PROGRAMCILIĞI I BTP 207 Ders 8.  Tamsayı Değerler (Integer) Tamsayılar, 10 tabanlı (decimal), 8 tabanlı (octal) veya 16 tabanlı (hexadecimal)
ENF 204 Bilgisayar Programlama Algoritma ve Akış Diyagramları
Problem Yaklaşım Temelleri, Algoritma ve Akış Şeması
Algoritmalar ve Programlama I Ders 2: Akış Diyagramları
Bugünkü Konular Döngüler ve Akış Diyagramları C de Döngü Tanımlama
ALGORİTMA VE AKIŞ ÇİZELGELERİ
Algoritma Mantığı ve Akış Diyagramları
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Ş.
Bilgisayar Programlamaya Giriş - 1
Ders 2 Algoritma İfade Şekilleri
Algoritma.  Algoritma, belirli bir görevi yerine getiren sonlu sayıdaki işlemler dizisidir.  Başka bir deyişle; bir sorunu çözebilmek için gerekli olan.
Programlama Dersi Öğretim üyesi : Prof. Dr. Raşit KÖKER
BİLGİSAYAR PROGRAMLAMA Ders 5: Döngüler
PROGRAMLAMA MANTIĞI, ALGORİTMA PROBLEM ÇÖZME
Bölüm 2 C Dilinin Temelleri Genel Kavramlar Yazım ve Noktalama Kuralları C Kütüphaneleri C Dilindeki Sözcükler Değer Sabitleri Veri Tipleri Değişkenler.
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ı.
BİLGİSAYAR PROGRAMLAMA DERSİ 4. DERS NOTU Konu: M-dosya yapısı ve Kontrol Yapıları 1.
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.
ANKARA ÜNİVERSİTESİ SAĞLIK BİLİMLERİ FAKÜLTESİ SOSYAL HİZMET BÖLÜMÜ
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
BİLGİSAYAR PROGRAMLAMA Ders 5: Döngüler
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
Bölüm 2 C Dilinin Temelleri
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
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.
Bilgisayar Bilimi Problem Çözme Süreci-2.
Akis diyagramı Örnekleri
Algoritma ve Akış Diyagramları
Bölüm 2 C Dilinin Temelleri
NİŞANTAŞI ÜNİVERSİTESİ
Sunum transkripti:

PROGRAMLAMA 2. Hafta TEMEL KAVRAMLAR

Temel Kavramlar Program Basit olarak bilgisayar ile kullanıcı arasındaki iletişim aracıdır. Giriş değerlerini kullanarak, çıkış değerlerinin elde edilmesi için bilgisayara iletilen komutlar dizisidir. Belirli bir görevi yerine getiren algoritmik ifadedir. Yazılım Bir yada birden fazla programın bir araya gelmesinden oluşur. Programlama Dilleri Programcı ile bilgisayar arasındaki iletişimi sağlayan bir araçtır (komut kümesidir).

İŞLEMLER Matematiksel (Aritmetik) İşlemler Karşılaştırma (Karar) İşlemleri Mantıksal (Lojik) İşlemler

MATEMATİKSEL İŞLEMLER Matematiksel İşlemlerin Bilgisayar Dilindeki Karşılıkları İşlem Matematik Bilgisayar Toplama a + b Çıkarma a - b Çarpma a . b a * b Bölme a ÷ b a / b Üs Alma ab a ^ b

MATEMATİKSEL İŞLEMLER Matematiksel İşlemlerde Öncelik Sıraları Sıra İşlem Bilgisayar 1 Sayıların Negatifliği -… 2 Parantezler ( ….. ) 3 Matematiksel Fonksiyonlar cos, sin, log, … 4 Üs alma a ^ b, pow, … 5 Çarpma ve Bölme a * b ve a/b 6 Toplama ve Çıkarma a + b ve a - b

MATEMATİKSEL İŞLEMLER Örnek: Matematiksel ifade : x = a . b / c + d . ef - g Bilgisayar ifadesi: x = a * b / c + d * e ^ f - g 2 3 4 2 1 5 Not: İşlem önceliklerine dikkat edilmez ise aynı gibi görünen ifadeler, farklı sonuçlar verebilir.

KARŞILAŞTIRMA İŞLEMLERİ Karşılaştırma İşlemlerinin Bilgisayar Dilindeki Karşılıkları Sembol Anlamı = veya == Eşittir <> Veya != Eşit Değildir > Büyüktür < Küçüktür >= veya => Büyük eşittir <= veya =< Küçük eşittir Örnek: Eğer A > B ise Yaz “ A sayısı B’den büyüktür ”

KARŞILAŞTIRMA İŞLEMLERİ Sayısal karşılaştırmalarda doğrudan değerler karşılaştırılır. Örnek: 25 > 15 “25 sayısı 15 ten büyüktür” Karakter olarak karşılaştırmalarda ise karşılaştırma işlemine ilk karakterlerden başlanılarak sıra ile karşılaştırılır. Örnek: a > c “1. karakter alfabetik olarak daha önde” Not: Karakter karşılaştırma işlemlerinde, karşılaştırma karakterler arasında değil, karakterlerin ASCII kodları arasında yapılır. Örneğin, A nın ASCII kod karşılığı 65 tir. a nın ise ASCII kod karşılığı 97 tir. Büyük ve küçük harfler arasındaki ASCII kod farkı ise 32’dir.

MANTIKSAL İŞLEMLER Temel Mantıksal İşlem Karşılıkları İşlem Komut Matematiksel Sembol Anlamı VE AND . Koşulların hepsi doğru ise sonuç doğrudur VEYA OR + Koşullardan en az biri doğru ise sonuç doğrudur DEĞİL NOT ’ Sonuç koşulun tersidir. 1 ise 0 dır

Parantez İçindeki İşlemler MANTIKSAL İŞLEMLER Mantıksal İşlemlerde Öncelik Sıraları Sıra İşlem Komut 1 Parantez İçindeki İşlemler ( ….. ) 2 DEĞİL NOT 3 VE AND 4 VEYA OR

PROGRAMLAMA ALGORİTMA TASARIMI

Algoritma Nedir? Algoritma Gerçek hayattaki plan kelimesinin karşılığı olarak düşünülebilir. Bilgisayardaki bir işlemin/işlemlerin gerçekleştirilmesinde izlenilecek adımlar dizisidir. Bir problemin bilgisayar ortamında çözülecek biçimde adım adım ortaya koyarak bir programlama dili ile kodlama sürecine Algoritma Tasarımı denir. Akış Diyagramı Algoritmaların özel geometrik şekiller ile çizilmiş halidir. Algoritma ya da akış diyagramının hazırlanması programlamanın temelidir.

İyi Bir Algoritmada Neler Olmalıdır? Etkinlik Gereksiz tekrarlarda bulunmayan diğer algoritmalar içerisinde de kullanılabilir olmalıdır. Sonluluk Her algoritmanın bir başlangıçtan oluşmalı, belirli işlem adımı içermeli ve bir bitiş noktasına sahip olmalıdır. Kısır bir döngüye girmemelidir. Kesinlik İşlem sonucu kesin olmalı, her yeni çalıştırmada aynı sonucu üretmelidir. Giriş/Çıkış Algoritma giriş (üzerinde işlem yapılacak değerler) ve çıkış (yapılan işlemler neticesinde üretilen sonuç değerler) değerlerine sahip olmalıdır. Başarım/Performans Amaç donanım gereksinimi (bellek kullanımı gibi), çalışma süresi gibi performans kriterlerini dikkate alarak yüksek başarımlı programlar yazmak olmalıdır.

Algoritmalar Kaç Farklı Şekilde İfade Edilir? Algoritmanın metin olarak yazılması Çözülecek problem, adım adım metin olarak yazılır. Pseudo Code (Kaba Kod) Algoritmanın sözde kodlarla yazılmasıdır. Problemin çözüm adımları komut benzeri anlaşılır metinlerle ifade edilir. Yarı kod yarı metin olarak ta adlandırılır. Akış Diyagramı Problemin çözüm adımları geometrik şekiller ile ifade edilir.

Örnek Algoritma Problem: Klavyeden girilen sayının karesini hesaplayarak ekrana yazdıran programın algoritmasını yazınız? Başla Sayıyı (A) gir Sayının karesini hesapla (Kare = A*A işlemini yap) Sonucu (Kare) yaz Dur

Örnek Pseudo Code Problem: Klavyeden girilen sayının karesini hesaplayarak ekrana yazdıran programın pseudo code’nu yazınız? /* Kare alma programı */ Scanf(“ Sayıyı (A) : %d”, &A) Kare=A*A Printf (“Sonuç: %d”, Kare) End

Örnek Akış Diyagramı Problem: Klavyeden girilen sayının karesini hesaplayarak ekrana yazdıran programın akış diyagramını çiziniz? Başla Sayı Klavyeden Okuma Kare=Sayı*Sayı İşlem Kare Ekrana Yazdırma Dur

Program Yazarken Nasıl Bir Yol İzlenmeli Problem/işlem iyice irdelenir Çözüm yolları ortaya konularak en uygun yol belirlenir En az komut, en kısa işlem süresi, doğru sonuçlar Çözüm yolunun (programın) algoritması ya da akış diyagramı hazırlanır Algoritma ya da akış diyagramı, programcının bildiği/tercih ettiği bir programlama diliyle kodlanır. Program, kodlandığı editörde çalıştırılarak yazım hataları düzeltilir. Program test edilir. Bilinen giriş/çıkış değerleri ile Farklı değerler ile

ALGORİTMALARDA KULLANILAN TERİMLER PROGRAMLAMA ALGORİTMALARDA KULLANILAN TERİMLER

ALGORİTMALARDA KULLANILAN TERİMLER Operatör İşlemleri belirten yani veriler üzerinde işlem yapmayı özelliği olan simgelerdir. Örnek: + = >

ALGORİTMALARDA KULLANILAN TERİMLER Tanımlayıcı Programcı tarafından oluşturulan/verilen ve programdaki değişkenleri, sabitleri, paragrafları, kayıt alanlarını, özel bilgi tiplerini, alt programları vb. adlandırmak için kullanılan kelimelerdir. Tanımlayıcı, yerini tutacağı ifadeye çağrışım yapmalıdır. Tanımlayıcı kelimeler oluşturulurken uyulması gereken kurallar İngiliz alfabesindeki A-Z veya a-z arası 26 harf kullanılabilir 0-9 arası rakamlar kullanılabilir Simgelerden sadece alt çizgi ( _ ) kullanılabilir Tanımlayıcı isimleri, harf veya alt çizgi ile başlayabilir Rakam ile başlayamaz veya sadece rakamlardan oluşamaz Kullanılan programlama dilinin komutu ya da saklı kelimelerinden olamaz

ALGORİTMALARDA KULLANILAN TERİMLER Değişken Verilerin saklandığı bellek alanlarına verilen simgesel isimlerdir. Programın her çalıştırılmasında, farklı değerler alabilen/aktarılabilen bilgi/bellek alanlarıdır. Bir programda birbirinden farklı kaç tane veri tutulacak ise o kadar değişken tanımlanmalıdır. Değişkenleri adlandırma, tamamen programcının isteğine bağlıdır. Değişken adlandırmada tanımlayıcı isimlendirme kuralları geçerlidir. Değişken adının, yerini aldığı ifadeyi çağrışım yapması programın anlaşılırlığı açısından önemlidir. Örnek: Bir kişinin adını tutmak için Ad , telefonunu tutmak için Tel

ALGORİTMALARDA KULLANILAN TERİMLER Sabit Programlardaki değeri değişmeyen ifadelere sabit denir. Sabit adlandırmalarında da tanımlayıcı kuralları geçerlidir. Sabitlere değer aktarma Sayısal veriler doğrudan aktarılır. Örnek: SabitKomutu pi = 3.14 Alfasayısal (karakter) veriler ise tek/çift tırnak içerisinde aktarılır. Örnek: SabitKomutu ilkharf = ‘A’ Örnek: SabitKomutu OkulAdi = “Sakarya”

ALGORİTMALARDA KULLANILAN TERİMLER Aktarma Bir bilgi alanına, veri yazma; Bir ifadenin sonucunu başka bir değişkende gösterme vb. görevlerde “aktarma = ” operatörü kullanılır. Kullanım şekli; değişken = ifade/işlem Aktar Örnek: Matematiksel ifade olarak A= 2, B= 3 C=A+B C=5 Alfasayısal ifade olarak A= “Sak” , B= “arya” C=A+B C=Sakarya Sabit ya da değişken Sayısal ya da Alfasayısal

ALGORİTMALARDA KULLANILAN TERİMLER Sayaç ya da Sayıcı Belirli sayıda yapılması istenen işlemleri takip etmek için; İşlenen ya da üretilen değerlerin sayılması gerektiği durumlarda kullanılır. Örnek: Rasgele oluşturulmuş bir dizideki tek sayıların tespitinde “tek sayıların adedini belirlemek için sayaç kullanılır. Kullanım şekli; sayaç değişkeni = sayaç değişkeni ± adım Örnek: Say= Say + 1 Sayacın Eski/Mevcut Değeri Artma ya da Azalma Miktarı Sayacın Yeni Değeri

ALGORİTMA TASARIMINDA TEMEL YAPILAR PROGRAMLAMA ALGORİTMA TASARIMINDA TEMEL YAPILAR

ALGORİTMALARDA KULLANILAN TEMEL YAPILAR DÖNGÜ Bazı işlemleri belirli sayıda tekrar etmede, Belirli bir aralıktaki ardışık değerler ile işlem yapmada döngü kullanılır. Diğer bir deyişle, programdaki belirli işlem bloklarını, verilen sayıda gerçekleştiren işlem akış çevrimlerine DÖNGÜ denir. Örnek: 1’den 5’e kadar sayıların toplamı Ard arda ekrana 4 defa SAKARYA yazdırma 1 ile 100 arasındaki çift sayıların ya da tek sayıların toplamı

Döngü Oluşturma Kuralları Döngü değişkenine başlangıç değeri verilir Döngünün artma ya da azalma miktarı belirlenir Döngünün bitiş değeri belirlenir Eğer Döngü karar ifadeleriyle oluşturulduysa; döngü değişkeni, döngü içinde adım miktarı kadar arttırılmalı/azaltılmalıdır. Örnek: 1-10 arası tek sayıların toplamı hesaplayan programın algoritmasını çıkarınız? Başla T = 0 J = 1 Eğer J > 10 ise Git 8 T = T + J J = J + 2 Git 4 Yaz T Dur

SIK KULLANILAN ARDIŞIK DÖNGÜ YAPILARI Ardışık Toplama Toplam değişkeni = Toplam değişkeni + Sayı Ardışık Çarpma Çarpım değişkeni = Çarpım değişkeni * Sayı

ÖZET Algoritma Hazırlama Kuralları Yapılacak iş/çözülecek problem iyice irdelenir. Tüm ihtimaller gözden geçirilir En az komutla, en kısa sürede, en doğru-hassas sonuca ulaştıracak çözüm yolu/yöntem belirlenir Tanımlayıcı isimleri belirlenir Algoritmada her işlem adımına bir numara verilir Problem çözümü için gerekli olan veriler/işlenecek veriler girilir ya da başka ortamlardan alınır Yapılacak işlemler/kullanılacak yöntemler açık şekilde verilir Bulunan sonuçlar görüntülenir ya da belirli ortamlarda saklanır

ÖZET Algoritmanın /Akış Diyagramının Avantajları Program yazmayı kolaylaştırır Hatalı kodlama oranını azaltır Program yazımı için geçen süreyi kısaltır İşlem akışını açık bir şekilde gösterdiğinden program kontrolünü kolaylaştırır Sonradan yapılacak düzenlemelerde kolaylıklar sağlar

PROGRAMLAMA AKIŞ DİYAGRAMLARI

Akış Diyagramı Nedir? Akış Diyagramı Algoritmaların özel geometrik şekiller ile çizilmiş halidir. Akış diyagramındaki her geometrik şekil, yapılacak bir işi ya da komutu gösterir. Bir problem bilgisayar ortamında kodlanmadan önce algoritması yazılabilir ya da akış diyagramı çizilebilir

Akış Diyagramında Kullanılan Şekiller Nelerdir? Karar/ Karşılaştırma Başla Dur İşlem Bilgi/Veri Girişi DÖNGÜ Fonksiyon (önceden tanımlı işlem) çağırma Bilgi/Veri Yazma Bağlantı İşlem Akış Yönü

Örnek Akış Diyagramı Problem: Klavyeden girilen sayının karesini hesaplayarak ekrana yazdıran programın akış diyagramını çiziniz? Başla Sayı Klavyeden Okuma Kare=Sayı*Sayı İşlem Kare Ekrana Yazdırma Dur