Semantik (Semantics): ifadelerin, deyimlerin, ve program birimlerinin anlamı Sentaks ve semantik bir dilin tanımı sağlar

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "Semantik (Semantics): ifadelerin, deyimlerin, ve program birimlerinin anlamı Sentaks ve semantik bir dilin tanımı sağlar"

Transkript

1 PDP 3 1 Sentaks (Syntax): ifadelerin (statements), deyimlerin (expressions), ve program birimlerinin biçimi veya yapısı Semantik (Semantics): ifadelerin, deyimlerin, ve program birimlerinin anlamı Sentaks ve semantik bir dilin tanımı sağlar Bir dil tanımının kullanıcıları Diğer dil tasarımcıları Uygulayıcılar (Implementers) Programcılar (dilin kullanıcıları)

2 Bir dilde bulunan her yapıdaki anlamlı bileşenler o dilin soyut sözdizimi, tanımlar. +ab prefix ifadesi, a+b infix ifadesi, ab+ postfix ifadelerindeki + işlemcisi ve a ve b alt-ifadelerinden oluşan aynı anlamlı bileşenleri içermektedir. 4 4 Dil, bir alfabedeki karakter dizilerinden oluşurlar. Dildeki karakter dizileri cümle veya deyim oluşturur. 5 2

3 Cümle (sentence) herhangi bir alfabede karakterlerden oluşan bir stringdir Dil (language) cümlelerden oluşan bir kümedir Lexeme bir dilin en alt seviyedeki sözdizimsel (syntactic) birimidir ( *, sum, begin) Simge (token)(andaç) lexemelerin bir kategorisidir, lexeme'lerin gruplanması ile oluşan sınıflardır (tanıtıcı (identifier)) 6 Programlar, karakterler yerine lexeme'ler dizisi olarak düşünülebilir. Sözdizim kuralları: Hangi karakter dizilerinin o dilin alfabesinden ve o dile ait olduğunu belirlerler. Diller sözdizimsel olarak basittir. 7 3

4 Dilin metinsel sözdizimi, token'lar dizisidir. Örneğin bir tanımlayıcı; ortalama veya ogrenci gibi lexeme'leri olabilen bir token'dır. Bir token'ın sadece tek bir olası lexeme'i olabiliri. Örneğin, çarpma_işlemcisi denilen aritmetik işlemci *" sembolü için, tek bir olası lexeme vardır. Boşluk (space), ara (tab) veya yeni satır karakterleri, token'lar arasına yerleştirilmesi programın anlamına etkisi yoktur

5 Tanıyıcılar (Recognizers) Bir tanıma aygıtı bir dilin girdi strringlerini okur ve girdi stringinin dile ait olup olmadığına karar verir Örnek: bir derleyicinin sentaks analizi kısmı Üreteçler (Generators) Bir dilin cümlelerini üreten aygıttır Belli bir cümlenin sentaksının doğru olup olmadığı, üretecin yapısıyla karşılaştırılarak anlaşılabilir 10 Bir programlama dilinin metinsel sözdizimini açıklamak için Gramer, kullanılır. Gramerler, anahtar kelimelerin (keywords) ve noktalama işaretlerinin yerleri; deyim listelerinin nasıl oluşturulacağını belirleyen bir dizi kuraldan oluşur. 11 5

6 Örnek Statement = "if" "(" Condition ")" Statement ["else" Statement] 4 bileşenden oluşur terminal symbols atomik "if", ">=", ident, number,... nonterminal symbols Sözdizim değişkenleri Statement, Expr, Type,... productions Nonterminallerin çözümü Statement = Designator "=" Expr ";". Designator = ident ["." ident].... start symbol Başlangıç nonterminali begin 12 Bağlam-Duyarsız (Context-Free) ve Backus-Naur Form (BNF) Gramerler Programlama dili sentaksını tanımlamayan en çok bilinen metottur. Extended BNF (Genisletimis) BNF un okunabilirliği ve yazılabilirliğini arttırır Gramerler ve tanıyıcılar (recognizers) 14 6

7 Bağlam-Duyarsız Gramerler (CFG) (Serbest İçerik Gramerleri ) Noam Chomsky tarafından 1950lerin ortalarında geliştirildi Dil üreteçleri (generators), doğal dillerin sentaksını tanımlamak için Bağlam-Duyarsız (Context-Free) diller adı verilen bir diller sınıfı daha sonra programlama dillerini uygulandı 15 Backus-Naur Form (1959) John Backus tarafından Algol 58 i belirlemek için icat edildi BNF bağlam-duyarsız (context-free) gramerlerin eşdeğeridir BNF başka bir dili tanımlamak için kullanılan bir metadildir (metalanguage) BNF de, soyutlamalar sentaktik (syntactic) yapı sınıflarını temsil etmek için kullanılır sentaktik değişkenler gibi davranırlar (nonterminal semboller adı da verilir) 16 7

8 Terminal semboller değişmez semboller, uç semboller de denir. ( ; gibi yapılar terminal sembollerdir. Productions: türetme kuralları söz dizim değişkenlerini türetme kuralları BNF ile açıklanan bir gramer dört bölümden oluşur. Başlangıç sembolü, terminal semboller, lexemeler ve simgeler (tokens) terminal_olmayan semboller (BNF soyutlamaları) ve kurallar'dan oluşan BNF gramer yapısı şekildeki gibi gösterilebilir: CFG expression identifier number - expression ( expression ) expression operator expression operator + - * / BNF expression identifier number - expression ( expression ) expression operator expression operator + - * / 18 8

9 Javada atama ifadesinin BNF formu <assign> -> <var> => <expression> Kuralın sol tarafı (left hand side- LHS) sağ tarafı (right hand side - RHS) vardır ve terminal ve nonterminal sembollerden oluşur Bir gramer, kuralların boş olmayan sonlu bir kümesidir Bir soyutlama / nonterminal sembol birden fazla RHS ye sahip olabilir <stmt> <single_stmt> begin <stmt_list> end 19 Örnek bir gramer <program> <stmts> <stmts> <stmt> <stmt> ; <stmts> <stmt> <var> = <expr> <var> a b c d <expr> <term> + <term> <term> - <term> <term> <var> 20 9

10 Bir kuralın bir sol-tarafı (left-hand side - LHS) ve bir sağ tarafı (right-hand side - RHS) vardır, ve terminal ve nonterminal sembollerden oluşur Bir gramer, kuralların boş olmayan sonlu bir kümesidir Bir soyutlama / nonterminal sembol birden fazla RHS ye sahip olabilir <stmt> <single_stmt> begin <stmt_list> end

11 Bir türetme kuralların tekrarlı bir şekilde uygulanmasıdır. Bir başlangıç sembolünden başlanır ve tüm elemanları son olan sembol (terminal) den oluşan bir cümle de biter

12 Sentaktik listeler özyineleme (recursion) kullanılarak tanımlanır <ident_list> ident ident, <ident_list> BNF kurallarından örnekler: <ident_list> identifier identifer, <ident_list> <if_stmt> if <logic_expr> then <stmt> 26 Bir türetimin hiyerarşik gösterimi 30 12

13 Gramer 31 Türemiş deyim A=B+C*A 32 13

14 türemiş gramerden parse ağacı 33 Bir grammer ancak ve ancak iki veya daha fazla farklı ayrıştırma ağacı olan bir cümlesel biçim üretiyorsa belirsizdir (ambiguous) <expr> <expr> <op> <expr> const <op> /

15 Eğer ayrıştırma ağacını operatörlerin öncelik seviyelerini göstermek için kullanırsak, belirsizlik elde edemeyiz <expr> <expr> - <term> <term> <term> <term> / const const 37 Operatör birleşirliği de gramerle gösterilebilir <expr> -> <expr> + <expr> const (ambiguous) <expr> -> <expr> + const const (unambiguous) <expr> <expr> + const <expr> + const const 39 15

16 BNF Opsiyonel/seçimli kısımlar köşeli parantez [ ] içine yerleştirilir <proc_call> -> ident [(<expr_list>)] EBNF 40 RHS lerin (sağ-taraf) alternatif kısımları parantezler içine yerleştirilir ve dikey çizgilerle ayrılır BNF EBNF 41 16

17 Tekrarlamalar (0 veya daha fazla) { } içine yerleştirilir <ident> letter {letter digit} <ident_list> <identifier> {, <identifier>}

18 BNF <expr> -> '-' <num> <num> <num> -> <digits> <digits> '.' <digits> <digits> -> <digit> <digit> <digits> <digit> -> '0' '1' '2' '3' '4' '5' '6' '7' '8' '9 EBNF <expr> -> '-' <digit>+ ('.' <digit>+) <digit> -> '0' '1' '2' '3' '4' '5' '6' '7' '8' '9' 44 BNF <expr> <expr> + <term> <expr> - <term> <term> <term> <term> * <factor> <term> / <factor> <factor> EBNF <expr> <term> {(+ -) <term>} <term> <factor> {(* /) <factor>} 46 18

19 BNF ve EBNF'teki kurallar, ayrıştırma ağacı dışında sözdizim grafikleri (syntax graphs) ile de gösterilebilir. Sözdizim grafikleri, ilk olarak Pascal'ın gramerini açıklamak için kullanılmıştır. 47 Bu derste olması gereken özellik gramerleri, Aksiyomatic Semantik sunuya eklenmemiştir. Bahsi geçen konular vizeden sonra derste ele alındıktan sonra sunuya ilave edilerek güncellenecektir

Sentaks (Syntax): ifadelerin (statements), deyimlerin (expressions), ve program birimlerinin biçimi veya yapısı

Sentaks (Syntax): ifadelerin (statements), deyimlerin (expressions), ve program birimlerinin biçimi veya yapısı Sentaks (Syntax): ifadelerin (statements), deyimlerin (expressions), ve program birimlerinin biçimi veya yapısı PDP 3 Semantik (Semantics): ifadelerin, deyimlerin, ve program birimlerinin anlamı Sentaks

Detaylı

Bölüm 3. Söz Dizilimi ve Anlamı Tanımlama ISBN

Bölüm 3. Söz Dizilimi ve Anlamı Tanımlama ISBN Bölüm 3 Söz Dizilimi ve Anlamı Tanımlama ISBN 0-321-49362-1 Bölüm 3 Konular Giriş Söz Dizimi Tanımlamadaki Genel Problem Söz Dizimi Tanımlamanın Biçimsel Yöntemleri Gramerlerin özellikleri Programların

Detaylı

Konular. Hafta 2 BLG339 PROGRAMLAMA DİLLERİ KAVRAMI

Konular. Hafta 2 BLG339 PROGRAMLAMA DİLLERİ KAVRAMI BLG339 PROGRAMLAMA DİLLERİ KAVRAMI Hafta 2 Yrd. Doç. Dr. Melike Şah Direkoğlu Alındığı kaynak: Addison-Wesley s Programming Language Concepts slaytları ve Prof. Dr. Tuğrul Yılmaz ın ders notlarından faydalanarak

Detaylı

Bölüm 3. Sentaks ve semantik tarifi ISBN 0-321-49362-1

Bölüm 3. Sentaks ve semantik tarifi ISBN 0-321-49362-1 Bölüm 3 Sentaks ve semantik tarifi ISBN 0-321-49362-1 Bölüm 3 Konuları Giriş Genel olarak sentaks tarifi Sentaks tarifinin matematiksel yöntemleri Özellik gramerleri (Attribute Grammars) Programların anlamını

Detaylı

YZM Biçimsel Diller ve Otomata Teorisi. Ders#06

YZM Biçimsel Diller ve Otomata Teorisi. Ders#06 YZM 3229- Biçimsel Diller ve Otomata Teorisi Ders#06 İçerikten Bağımsız Diller İçerikten Bağımsız Diller (Context-Free Languages) Şu ana değin Düzenli Dilleri İfade Etmek için Kullanılabilecek Yapıları

Detaylı

BLM210 HAFTA 2 FORMAL METHODS OF SYNTAX DESCRIPTION (SÖZDİZİM TARİFİNİN BİÇİMSEL YÖNTEMLERİ)

BLM210 HAFTA 2 FORMAL METHODS OF SYNTAX DESCRIPTION (SÖZDİZİM TARİFİNİN BİÇİMSEL YÖNTEMLERİ) 1 BLM210 HAFTA 2 FORMAL METHODS OF SYNTAX DESCRIPTION (SÖZDİZİM TARİFİNİN BİÇİMSEL YÖNTEMLERİ) Programming language implementors must be able to determine how the expressions, statements, and program units

Detaylı

BIM 202 - Bahar 2011. Programlama Dilleri

BIM 202 - Bahar 2011. Programlama Dilleri BIM 202 - Bahar 2011 Programlama Dilleri Prof. Dr. Tuğrul Yılmaz e-posta: tyilmaz@mu.edu.tr Tuğrul Yılmaz - Pamukkale Üniversitesi 1 Sözdizim (syntax) ve Anlambilim (Semantics) Her programlama dilindeki

Detaylı

Bölüm 3. Sözdizimi(Syntax) ve Anlamsal(Semantics) Tanımlama ISBN 0-321-49362-1

Bölüm 3. Sözdizimi(Syntax) ve Anlamsal(Semantics) Tanımlama ISBN 0-321-49362-1 Bölüm 3 Sözdizimi(Syntax) ve Anlamsal(Semantics) Tanımlama ISBN 0-321-49362-1 Bölüm 3 Konuları Giriş Sözdizim(Syntax) tanımlamanın genel problemi Sözdizim(Syntax) tanımlamada resmi metotlar Özellik Gramerleri

Detaylı

Tokenlarin Taninmasi

Tokenlarin Taninmasi Tokenlarin Taninmasi stmt t if expr then stmt if expr then stmt else stmt expr t term relop term term term t id num if, then, else, relop, id, ve num terminal (token), stmt, expr, term nonterminal olarak

Detaylı

KARADENİZ TEKNİK ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR SİSTEMLERİ LABORATUARI BISON AYRIŞTIRICI (PARSER) ÜRETECİ

KARADENİZ TEKNİK ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR SİSTEMLERİ LABORATUARI BISON AYRIŞTIRICI (PARSER) ÜRETECİ 1 KARADENİZ TEKNİK ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR SİSTEMLERİ LABORATUARI BISON AYRIŞTIRICI (PARSER) ÜRETECİ Bison, durumdan bağımsız gramerler (CFG, Context-free grammar) için LALR

Detaylı

Syntax Analysis. 4/5/2004 Formal Diller 4.1

Syntax Analysis. 4/5/2004 Formal Diller 4.1 Syntax Analysis Her programlama dilinin yazilan bir programin syntax olarak dogru olup olmadigini belirleyen kurallari vardir. Programlama dillerinin syntactic yapisi Contex-Free Grammer / BNF (Backus-Naur

Detaylı

Formal Diller Ve Otomat Teorisi

Formal Diller Ve Otomat Teorisi Formal Diller Ve Otomat Teorisi Ismail Kadayif Canakkale Onsekiz Mart Universitesi Bilgisayar Muhendisligi 4/5/2004 Formal Diller 1.1 Strings ve Languages (Diller) alphabet (character set): Sonlu sayida

Detaylı

Bölüm 4. Sözcüksel ve Sözdizimsel Analiz ISBN

Bölüm 4. Sözcüksel ve Sözdizimsel Analiz ISBN Bölüm 4 Sözcüksel ve Sözdizimsel Analiz ISBN 0-321-49362-1 Bölüm 4 Konular Giriş Sözcüksel Analiz Ayrıştırma Problemi Özyineleme Kökenli Ayrıştırma Aşağıdan Yukarıya Ayrıştırma Resul Kara 2 4.1 Giriş Derleyici

Detaylı

PASCAL PROGRAMLAMA DİLİ YAPISI

PASCAL PROGRAMLAMA DİLİ YAPISI BÖLÜM 3 PASCAL PROGRAMLAMA DİLİ YAPISI 3.1. Giriş Bir Pascal programı en genel anlamda üç ayrı kısımdan oluşmuştur. Bu kısımlar bulunmaları gereken sıraya göre aşağıda verilmiştir. Program Başlığı; Tanımlama

Detaylı

Bölüm 8. İfade Seviyesindeki Kontrol Yapıları ISBN

Bölüm 8. İfade Seviyesindeki Kontrol Yapıları ISBN Bölüm 8 İfade Seviyesindeki Kontrol Yapıları ISBN 0-321-49362-1 Bölüm 8 Konular Giriş Seçme İfadeleri Yinelemeli İfadeler Şartsız Dallanma Korumalı Komutlar Sonuçlar Kontrol Akışının Seviyeleri İfadeler

Detaylı

Bölüm 4. Sözcüksel ve sözdizimsel analiz ISBN

Bölüm 4. Sözcüksel ve sözdizimsel analiz ISBN Bölüm 4 Sözcüksel ve sözdizimsel analiz ISBN 0-321-49362-1 Bölüm 4 Konular giriş Sözcüksel Analiz Ayrıştırma(parsing) problemi Özyinelemeli aşağıya iniş ayrıştırma(recursive-descent Parsing) Aşağıdan-yukarıya

Detaylı

Nesne Yönelimli Programlama

Nesne Yönelimli Programlama 1 Nesne Yönelimli Programlama Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Genel Bilgiler Ders konuları 1. Programlamaya Giriş 2. Program Denetimi ve Operatörler 3. Nesnelerin

Detaylı

BAĞLAMDAN BAĞIMSIZ (CONTEXT-FREE) GRAMERLER (CFG) VE DİLLER (CFL)

BAĞLAMDAN BAĞIMSIZ (CONTEXT-FREE) GRAMERLER (CFG) VE DİLLER (CFL) BAĞLAMDAN BAĞIMSIZ (CONTEXT-FREE) GRAMERLER (CFG) VE DİLLER (CFL) Dil tanıyıcı cihaz bir dile ait geçerli string leri kabul eder. Dil üreteci cihaz bir dile ait string leri oluşturur. Dil üreteci cihazlar

Detaylı

Gramer Tabanlı Değerlendirme Yöntemleri

Gramer Tabanlı Değerlendirme Yöntemleri Gramer Tabanlı Değerlendirme Yöntemleri 1. Giriş Bir gramer biçimsel bir dilde karakter dizileri yada kelimeler oluşturabilen kurallar seti olarak ifade edilir. Kurallar, dil alfabesini kullanarak, dilin

Detaylı

Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Biçimsel Diller ve Otomata Teorisi. Final Sınavı Soruları A KİTAPÇIĞI

Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Biçimsel Diller ve Otomata Teorisi. Final Sınavı Soruları A KİTAPÇIĞI Sayfa#1(A Kitapçığı) Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM 3229- Biçimsel Diller ve Otomata Teorisi Final Sınavı Soruları A KİTAPÇIĞI Bahar 2017-2018 Süre: 45 Dakika Adı ve Soyadı

Detaylı

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ Dersin Adı Kodu Sınıf / Y.Y. Ders Saati (T+U+L) Kredi AKTS PROGRAMLAMA DİLLERİ BG-324 3/2 3+0+0 3+0 4 Dersin Dili : TÜRKÇE Dersin Seviyesi

Detaylı

Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Biçimsel Diller ve Otomata Teorisi. Final Sınavı Örnek Soruları A0 KİTAPÇIĞI

Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Biçimsel Diller ve Otomata Teorisi. Final Sınavı Örnek Soruları A0 KİTAPÇIĞI Sayfa#1(A0 Kitapçığı) Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM 3229- Biçimsel Diller ve Otomata Teorisi Final Sınavı Örnek Soruları A0 KİTAPÇIĞI Bahar 2017-2018 Süre: 45 Dakika Adı

Detaylı

! " # $ % & '( ) *' ' +, -. /) /) 0 # /) %, %, 1 2

!  # $ % & '( ) *' ' +, -. /) /) 0 # /) %, %, 1 2 !"#$ %& '()*' ' +,-./) /) 0 #/) %,%, 12 $$(/3#/ " '$$(/34" '$$(//44 / 4 /4/ 4# ##4" 5-6/'$##/" 7#! a(a * b * )b regular expression ile önce bir a üretilir. Ardından iki durumdan birisine göre devam edilir.

Detaylı

İfadeler bir programlama dilinde hesaplamaları belirtmede temel araçtır. İfadelerin değerlendirmesini anlamak için,

İfadeler bir programlama dilinde hesaplamaları belirtmede temel araçtır. İfadelerin değerlendirmesini anlamak için, PDP 7 1 İfadeler bir programlama dilinde hesaplamaları belirtmede temel araçtır. İfadelerin değerlendirmesini anlamak için, operatörlerin sırası ve İşlenenlerin (operant) değerlendirmesine aşina olmamız

Detaylı

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay. PROGRAMLAMAYA GİRİŞ Öğr. Gör. Ayhan KOÇ Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay., 2007 Algoritma ve Programlamaya Giriş, Ebubekir YAŞAR, Murathan Yay., 2011

Detaylı

Regular Expression vs. Context-Free Grammars. Ambiguity. NFA to CFG. Neden RE ler kullanilir?

Regular Expression vs. Context-Free Grammars. Ambiguity. NFA to CFG. Neden RE ler kullanilir? Ambiguity Ambiguous Grammar: Bazi sentence lar icin birden fazla parse tree ureten grammarlere denir. Ambiguous Grammar ler bazi sentence lari birden fazla leftmost/rightmost derivation larla utetirler.

Detaylı

1. PL/SQL de kontrol yapıları

1. PL/SQL de kontrol yapıları 1. PL/SQL de kontrol yapıları PL/SQL de kontrol yapıları genel olarak IF, CASE LOOP, WHILE, FOR ile gerçekleştirilir. Tabi bu deyimlerinde kendi içinde alt basamakları bulunmaktadır. Şimdi sırası ile bu

Detaylı

FORMEL DİLLER VE SOYUT MAKİNALAR. Hafta 3

FORMEL DİLLER VE SOYUT MAKİNALAR. Hafta 3 FORMEL DİLLER VE SOYUT MAKİNALAR Hafta 3 Karmaşıklık CHOMSKY HİYERARŞİSİ 0 1 2 3 Özyinelemeli - Sayılabilir Diller : Turing Makinesi (Recursively Enumerable Languages : Turing Machine) Bağlama - Duyarlı

Detaylı

BBS 514 YAPISAL PROGRAMLAMA (STRUCTURED PROGRAMMING)

BBS 514 YAPISAL PROGRAMLAMA (STRUCTURED PROGRAMMING) 1 BBS 514 YAPISAL PROGRAMLAMA (STRUCTURED PROGRAMMING) LECTURE 3: ASSIGNMENT OPERATOR Lecturer: Burcu Can BBS 514 - Yapısal Programlama (Structured Programming) 2 Lexical Elements (Sözcüksel Elemanlar)

Detaylı

Algoritma ve Akış Diyagramları

Algoritma ve Akış Diyagramları Algoritma ve Akış Diyagramları Bir problemin çözümüne ulaşabilmek için izlenecek ardışık mantık ve işlem dizisine ALGORİTMA, algoritmanın çizimsel gösterimine ise AKIŞ DİYAGRAMI adı verilir 1 Akış diyagramları

Detaylı

Bölüm 7. İfadeler ve atamalar ISBN

Bölüm 7. İfadeler ve atamalar ISBN Bölüm 7 İfadeler ve atamalar ISBN 0-321-49362-1 7. Bölüm konuları Giriş Aritmetik ifadeler Çok anlamlı (overloaded) operatörler Tip dönüşümleri (conversions) İlişkisel ve Boolean İfadeler Kısa-devre hesaplama

Detaylı

FORMEL DİLLER VE SOYUT MAKİNALAR. Hafta 2

FORMEL DİLLER VE SOYUT MAKİNALAR. Hafta 2 FORMEL DİLLER VE SOYUT MAKİNALAR Hafta 2 OTOMATA TEORİSİ Otomata teorisi (özdevinim kuramı ya da otomat teorisi), teorik bilgisayar biliminde soyut makineleri (ya da daha uygun bir deyimle soyut 'matematiksel'

Detaylı

Chapter 8. Komut düzeyi kontrol yapıları ISBN

Chapter 8. Komut düzeyi kontrol yapıları ISBN Chapter 8 Komut düzeyi kontrol yapıları ISBN 0-321-49362-1 8. bölüm konuları Giriş Seçme komutları Tekrarlayan komutlar Şartsız dallanma Korumalı komutlar Sonuç Tercüme edip geliştiren: Doç. Dr. Zeki Bayram,

Detaylı

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-11 Karakter Diziler. Yrd. Doç. Dr. Ümit ATİLA

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-11 Karakter Diziler. Yrd. Doç. Dr. Ümit ATİLA BLM-111 PROGRAMLAMA DİLLERİ I Ders-11 Karakter Diziler Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Karakter ve String Karakter Karakter bir sabit tek tırnak

Detaylı

Veri Yapıları ve Algoritmalar

Veri Yapıları ve Algoritmalar 1 Ders Not Sistemi Vize : % 40 Final : % 60 Kaynaklar Kitap : Veri Yapıları ve Algoritma Temelleri Yazar: Dr. Sefer KURNAZ Internet Konularla ilgili web siteleri 2 Algoritma : «Belirli bir problemin çözümünde

Detaylı

BİL1001 Bilgisayar Bilimlerine Giriş 1

BİL1001 Bilgisayar Bilimlerine Giriş 1 DEÜ Bilgisayar Bilimleri Bölümü BİL1001 Bilgisayar Bilimlerine Giriş 1 Öğr. Gör. Dr. Alper VAHAPLAR 2017 Yaz Okulu Bilgisayar Bilimlerine Giriş 1 Programlama Dillerine (Programming Languages) Giriş Dil

Detaylı

FORMEL DİLLER VE SOYUT MAKİNALAR. Hafta 1

FORMEL DİLLER VE SOYUT MAKİNALAR. Hafta 1 FORMEL DİLLER VE SOYUT MAKİNALAR Hafta 1 DİL VE FORMEL DİL KAVRAMLARI Dil, insanların karmaşık iletişim sistemlerini edinme ve kullanma becerisidir. Bir dilin formel olabilmesi için bazı niteliklerinin

Detaylı

Bilgisayar Programlama Dilleri

Bilgisayar Programlama Dilleri Bilgisayar Programlama Dilleri Ömer YÜCEL 13253072 1/32 Sunum İçeriği 1. Program ve Programlama Dili Nedir? 2. Programlama Dillerinin Tarihçesi 3. Programlama Dillerinin Sınıflandırılması 4. Programlama

Detaylı

Bölüm 4. Sözcük ve Sentaks Çözümlemesi ( Analizi) ISBN

Bölüm 4. Sözcük ve Sentaks Çözümlemesi ( Analizi) ISBN Bölüm 4 Sözcük ve Sentaks Çözümlemesi ( Analizi) ISBN 0-321-49362-1 Bölüm 4 Konuları Giriş Sözcük çözümlemesi Ayrıştırma (parsing) problemi Özyineleyerek inen ayrıştırma (Recursive- Descent Parsing) Aşağıdan-yukarı

Detaylı

Hafta 12 Karakter Tutan Diziler

Hafta 12 Karakter Tutan Diziler BLM111 Programlama Dilleri I Hafta 12 Karakter Tutan Diziler Yrd. Doç. Dr. Caner ÖZCAN Katar (String) Tanımlama Dizileri ve çok boyutlu dizileri gördük. Katar dediğimiz şey de aslında bir dizidir. Değişken

Detaylı

Doğu Akdeniz Üniversitesi Bilgisayar Mühendisliği Bölümü. BLGM 318 Ara Sınavı 2012 2013 Đlkbahar Dönemi 13 Nisan 2013. Ad, Soyad Öğrenci No.

Doğu Akdeniz Üniversitesi Bilgisayar Mühendisliği Bölümü. BLGM 318 Ara Sınavı 2012 2013 Đlkbahar Dönemi 13 Nisan 2013. Ad, Soyad Öğrenci No. Doğu Akdeniz Üniversitesi Bilgisayar Mühendisliği Bölümü BLGM 318 Ara Sınavı 2012 2013 Đlkbahar Dönemi 13 Nisan 2013 Ad, Soyad Öğrenci No. : : Öğretim Üyesi: Doç. Dr. Zeki BAYRAM Süre: 100 dakika Talimatlar:

Detaylı

Dilbilgisi ve Diller

Dilbilgisi ve Diller Dilbilgisi ve Diller Doç.Dr.Banu Diri 1. Her biçimsel dil belirli bir alfabe üzerinde tanımlanır. 2. Alfabe sonlu sayıda simgelerden oluşan bir kümedir. 3. Alfabedeki simgelerin arka arkaya getirilmesi

Detaylı

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN Bilgisayar Mühendisliğine Giriş Yrd.Doç.Dr.Hacer KARACAN PROGRAMLAMA DİLLERİ Programlama Dilleri ni neden öğrenmeliyiz? Programlama alanları Dil değerlendirme kriterleri Dil tasarımı üstündeki etkiler

Detaylı

İÇERİK PROGRAMLAMAYA GİRİŞ ALGORİTMA AKIŞ DİYAGRAMLARI PROGRAMLAMA DİLLERİ JAVA DİLİNİN YAPISI JAVA DA KULLANILAN VERİ TİPLERİ JAVA DA PROGRAM YAZMA

İÇERİK PROGRAMLAMAYA GİRİŞ ALGORİTMA AKIŞ DİYAGRAMLARI PROGRAMLAMA DİLLERİ JAVA DİLİNİN YAPISI JAVA DA KULLANILAN VERİ TİPLERİ JAVA DA PROGRAM YAZMA İÇERİK PROGRAMLAMAYA GİRİŞ ALGORİTMA AKIŞ DİYAGRAMLARI PROGRAMLAMA DİLLERİ JAVA DİLİNİN YAPISI JAVA DA KULLANILAN VERİ TİPLERİ JAVA DA PROGRAM YAZMA BÖLÜM-II ALGORİTMA I. GİRİŞ Bilgisayar dünyasında, insanın

Detaylı

Lambda İfadeleri (Lambda Expressions)

Lambda İfadeleri (Lambda Expressions) Lambda İfadeleri (Lambda Expressions) Lambda İfadeleri, değişkenlere değer atamak için kullanılan sadeleştirilmiş anonim (isimsiz) fonksiyonlardır. Bu fonksiyonlar matematikteki ve bilgisayar bilimlerindeki

Detaylı

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while Değişkenler Değişkenler bir bilginin bellekteki konumunu temsil eden sembolik isimlerdir. Bilgisayarda hemen hemen tüm işlemler bellekte yapılır. Program çalıştırıldığında değişken ve bu değişkenin türüne

Detaylı

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf İçindekiler 1. Giriş... 1 1.2. c++ Programı Yapısı... 2 1.3.Using Direktifi... 5 Bölüm 2. Veri türleri, değişken kavramı, sabit ve değişken bildirimleri ve c++ da kullanımı 7 2.1. Temel veri türleri...

Detaylı

ENF102 TEMEL BİLGİSAYAR BİLİMLERİ VE C/ C++ PROGRAMLAMA DİLİ. Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

ENF102 TEMEL BİLGİSAYAR BİLİMLERİ VE C/ C++ PROGRAMLAMA DİLİ. Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü ENF102 TEMEL BİLGİSAYAR BİLİMLERİ VE C/ C++ PROGRAMLAMA DİLİ Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü Konular Giriş math Kütüphane Fonksiyonları Çok Parametreyle Fonksiyon

Detaylı

Algoritma ve Akış Diyagramları

Algoritma ve Akış Diyagramları Algoritma ve Akış Diyagramları Bir problemin çözümüne ulaşabilmek için izlenecek ardışık mantık ve işlem dizisine ALGORİTMA, algoritmanın çizimsel gösterimine ise AKIŞ DİYAGRAMI adı verilir. 1 Akış diyagramları

Detaylı

Konular. Hafta 5 Veri Tipleri (Devam) BLG339 PROGRAMLAMA DİLLERİ KAVRAMI

Konular. Hafta 5 Veri Tipleri (Devam) BLG339 PROGRAMLAMA DİLLERİ KAVRAMI BLG339 PROGRAMLAMA DİLLERİ KAVRAMI Hafta 5 Veri Tipleri (Devam) Yrd. Doç. Dr. Melike Şah Direkoğlu Konular Dizi Tipleri Kayıt Tipleri Birleşik Tipler Küme Tipleri İşaretçi ve Referans Tipleri Alındığı

Detaylı

Bölüm 2 Varlık-İlişki Veri Modeli: Araçlar ve Teknikler. Fundamentals, Design, and Implementation, 9/e

Bölüm 2 Varlık-İlişki Veri Modeli: Araçlar ve Teknikler. Fundamentals, Design, and Implementation, 9/e Bölüm 2 Varlık-İlişki Veri Modeli: Araçlar ve Teknikler Fundamentals, Design, and Implementation, 9/e Üç Şema Modeli Üç şema modeli 1975 de ANSI/SPARC tarafından geliştirildi Veri modellemeninç ve rolünü

Detaylı

ÇÖZÜMLÜ ÖRNEK 3.5 ÇÖZÜM

ÇÖZÜMLÜ ÖRNEK 3.5 ÇÖZÜM Biçimselleştirme Burada sunulan haliyle bu sembolik gösterim diline önermeler mantığı dili denir. Şimdi günlük dilden çeşitli cümlelerin sembolik biçimler şeklinde nasıl ifadelendirilebileceğini (yani

Detaylı

Özyineleme (Recursion)

Özyineleme (Recursion) C PROGRAMLAMA Özyineleme (Recursion) Bir fonksiyonun kendisini çağırarak çözüme gitmesine özyineleme (recursion), böyle çalışan fonksiyonlara da özyinelemeli (recursive) fonksiyonlar denilir. Özyineleme,

Detaylı

PROGRAMLAMA DİLLERİ. Programlama Dilleri Programlama Dillerinin Önemi Dilleri Sınıflandırılması Anlambilim BNF Notasyonu Kontrol Deyimleri

PROGRAMLAMA DİLLERİ. Programlama Dilleri Programlama Dillerinin Önemi Dilleri Sınıflandırılması Anlambilim BNF Notasyonu Kontrol Deyimleri PROGRAMLAMA DİLLERİ Program Yazılım Geliştirme Süreci Programlama Dilleri Tarihçesi Kod Sözdizimi Nesneye Yönelik Programlama Tür Kontrolü Alt Programlar Programlama Dilleri Programlama Dillerinin Önemi

Detaylı

YZM 2116 Veri Yapıları

YZM 2116 Veri Yapıları YZM 2116 Veri Yapıları Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği BAŞLAMADAN ÖNCE Bu dersi alan öğrencilerin aşağıdaki konuları bildiği

Detaylı

BAĞLAMDAN BAĞIMSIZ VE BAĞLAMDAN BAĞIMSIZ OLMAYAN DİLLER (CONTEXT-FREE AND NON-CONTEXT-FREE LANGUAGES)

BAĞLAMDAN BAĞIMSIZ VE BAĞLAMDAN BAĞIMSIZ OLMAYAN DİLLER (CONTEXT-FREE AND NON-CONTEXT-FREE LANGUAGES) BAĞLAMDAN BAĞIMSIZ VE BAĞLAMDAN BAĞIMSIZ OLMAYAN DİLLER (CONTEXT-FREE AND NON-CONTEXT-FREE LANGUAGES) Context-free dillerin üretilmesi için context-free gramer ler kullanılmaktadır. Context-free dillerin

Detaylı

Pascal Programlama Dili

Pascal Programlama Dili Pascal Programlama Dili Öğr. Gör. Özgür ZEYDAN Z.K.Ü. Çevre Müh. Bölümü Pascal Programlarının Yapısı Program program_adı; Uses unitler type Özel veri tipleri Const Sabitler Label etiketler var değişken

Detaylı

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir DİZİLER (ARRAYS) Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir değişken tanımlamak gereklidir. string gun1,

Detaylı

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say İÇİNDEKİLER 1. Bilgisayarın Yapısı Ve Programlama Dilleri Giriş 1 Bilgisayar ve Programlamanın Kısa Bir Tarihçesi 2 Donanım ve Yazılım Kavramları 3 Bilgisayarın Donanımsal yapısı 4 Giriş Birimi (Input

Detaylı

BİLGİSAYAR PROGRAMLAMA. Algoritma ve Akış Şemaları

BİLGİSAYAR PROGRAMLAMA. Algoritma ve Akış Şemaları BİLGİSAYAR PROGRAMLAMA Algoritma ve Akış Şemaları Algoritma tanımı Algoritma özellikleri Algoritma tasarımı Akış şemaları Dallanma simgeleri Döngü simgeleri Akış şeması tasarımı Akış şeması örnekleri Konu

Detaylı

KARADENİZ TEKNİK ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR SİSTEMLERİ LABORATUARI BISON AYRIŞTIRICI (PARSER) ÜRETECİ

KARADENİZ TEKNİK ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR SİSTEMLERİ LABORATUARI BISON AYRIŞTIRICI (PARSER) ÜRETECİ 1 KARADENİZ TEKNİK ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR SİSTEMLERİ LABORATUARI BISON AYRIŞTIRICI (PARSER) ÜRETECİ Bison, durumdan bağımsız gramerler (CFG, Context-free grammar) için LALR

Detaylı

Oracle Database 11g: Introduction to SQL

Oracle Database 11g: Introduction to SQL Oracle Database 11g: Introduction to SQL Mehmet Salih DEVECI GTECH-Kıdemli Veritabanı Yöneticisi Mehmetsalih.deveci@gtech.com.tr BÖLÜM- 1: SQL E GİRİŞ SELECT ifadesinin kabiliyetlerinin ortaya çıkarılması

Detaylı

Derleyici Kuramı (Compiler Theory)

Derleyici Kuramı (Compiler Theory) Derleyici Kuramı (Compiler Theory) Yrd. Doç. Dr. Şadi Evren ŞEKER Bu sunum, İstanbul Üniversitesi, Bilgisayar Mühendisliği, BMG dersi kapsamında hazırlanmıştır ve kavramlara genel bir giriş yapmayı hedefler.

Detaylı

Bölüm 7. Deyimler ve Atama ifadeleri ISBN

Bölüm 7. Deyimler ve Atama ifadeleri ISBN Bölüm 7 Deyimler ve Atama ifadeleri ISBN 0-321-49362-1 Bölüm 7 Konuları Giriş Aritmetik deyimler Aşırı yüklenmiş operatörler Tip dönüşümleri İlişkisel ve mantıksal deyimler Kısa devre hesaplamalar(short-circuit

Detaylı

En kucuk calisabilir birime satetement denir Statements semicolon (;) ile sonlanir Yalniz basina ; null statement i ifade eder

En kucuk calisabilir birime satetement denir Statements semicolon (;) ile sonlanir Yalniz basina ; null statement i ifade eder C++ Statements C++ control structures En kucuk calisabilir birime satetement denir Statements semicolon (;) ile sonlanir Yalniz basina ; null statement i ifade eder Ornek: while (*str++ = *inbuf++) ; {

Detaylı

Mantıksal İşlemler. 7.1 true, false, nil

Mantıksal İşlemler. 7.1 true, false, nil 7 Mantıksal İşlemler 7.1 true, false, nil Doğru ya da Yanlış değer alan önermelere (ifadelere) mantıksal (logic) deyimler ya da boolean deyimler denilir ([5]). Bir çok dilde mantıksal işlemler true ve

Detaylı

BİL1002 Bilgisayar Programlama PROF.DR.TOLGA ELBİR

BİL1002 Bilgisayar Programlama PROF.DR.TOLGA ELBİR BİL1002 Bilgisayar Programlama PROF.DR.TOLGA ELBİR Bilgisayar Programı Nedir? Program, bilgisayarda belirli bir amacı gerçekleştirmek için geliştirilmiş yöntemlerin ve verilerin, bilgisayarın donanımının

Detaylı

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ Dersin Adı Kodu Sınıf/Y.Y. Ders Saati (T+U+L) Kredi AKTS Programlama Dillerinin Prensipleri BİM-323 3/II 3+0+0 3 4 Dersin

Detaylı

4- Turbo Pascal Bilgisayar Programlamada Kullanılan Şart Yapıları

4- Turbo Pascal Bilgisayar Programlamada Kullanılan Şart Yapıları 4- Turbo Pascal Bilgisayar Programlamada Kullanılan Şart Yapıları Şart yapıları bir bilgisayar programının olmazsa olmazlarındandır. Şart yapıları günlük hayatımızda da çok fazla karşılaştığımız belirli

Detaylı

BTP208 İnternet Programcılığı II XML ve XML Uygulamaları. (2. Kısım)

BTP208 İnternet Programcılığı II XML ve XML Uygulamaları. (2. Kısım) BTP208 İnternet Programcılığı II XML ve XML Uygulamaları (2. Kısım) Hazırlayan Öğr. Gör. Özgür ÖZŞEN İçerik XML DTD Belge Tipi Tanımlamaları 1 Karakter Veri Bir elemanın başlangıç ve bitiş etiketi içindeki

Detaylı

C PROGRAMLAMA YRD.DOÇ.DR. BUKET DOĞAN PROGRAM - ALGORİTMA AKIŞ ŞEMASI

C PROGRAMLAMA YRD.DOÇ.DR. BUKET DOĞAN PROGRAM - ALGORİTMA AKIŞ ŞEMASI C PROGRAMLAMA DİLİ YRD.DOÇ.DR. BUKET DOĞAN 1 PROGRAM - ALGORİTMA AKIŞ ŞEMASI Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi. Algoritma bir sorunun

Detaylı

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ Ders 10 LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ LINUX de Programlama LINUX işletim sistemi zengin bir programlama ortamı sağlar. Kullanıcılara sistemi geliştirme olanağı sağlar.

Detaylı

BİLİŞİM TEKNOLOJİLERİ 6. SINIF DERS NOTLARI 2

BİLİŞİM TEKNOLOJİLERİ 6. SINIF DERS NOTLARI 2 PROGRAMLAMA Bir problemin çözümü için belirli kurallar ve adımlar çerçevesinde bilgisayar ortamında hazırlanan komutlar dizisine programlama denir. Programlama Dili: Bir programın yazılabilmesi için kendine

Detaylı

BİLGİSAYAR PROGRAMLAMA MATLAB

BİLGİSAYAR PROGRAMLAMA MATLAB BİLGİSAYAR PROGRAMLAMA MATLAB Arş. Gör. Ahmet ARDAHANLI Kafkas Üniversitesi Mühendislik Fakültesi Bu hafta? 1. Matlab ve Programlama Ortamı 2. Matlab Komut Penceresi 3. Matlab de değişken tanımlama 4.

Detaylı

BİL-142 Bilgisayar Programlama II

BİL-142 Bilgisayar Programlama II BİL-142 Bilgisayar Programlama II (C/C++) Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Giriş math Kütüphane Fonksiyonları Çok Parametreyle Fonksiyon Tanımı Fonksiyon

Detaylı

! " # $ % & '( ) *' ' +, $ $ - $ (. $- $ ( / $ % / $ 0 -( 1( $ (2- -(

!  # $ % & '( ) *' ' +, $ $ - $ (. $- $ ( / $ % / $ 0 -( 1( $ (2- -( !"#$ %& '()*' ' +. $-$( /$% /$0 -(1($(2--( 3 #*'- # 4(5 (6" #7##0 7 $$(5 (6",7 - #, $$ -$(2,-0 # # *'6' (6" 6(50 #" #06 $8# 0 #0 7" 976 0#$ 6 $$" 76 $:;)8) (6",-07#$87 07" $8#< 6 $ < 6))70" ,-$#',-$#'

Detaylı

VT Sistem Gerçeklemesi. Ders Notları- #8

VT Sistem Gerçeklemesi. Ders Notları- #8 VT Sistem Gerçeklemesi Remote: Kullanıcıdan gelen JDBC isteklerini karşılar. Planner: SQL ifadesi için işleme planı oluşturur ve karşılık gelen ilşkisel cebir ifadesini oluşturur. Parse: SQL ifadesindeki

Detaylı

Algoritmalar ve Karmaşıklık

Algoritmalar ve Karmaşıklık Algoritmalar ve Karmaşıklık Ders 11 Algoritma Ayrık matematikte karşılaşılan bir çok problem sınıfı mevcuttur. Örneğin, verilen tamsayı grubu içindeki en büyük olanının bulunması, verilen bir kümenin bütün

Detaylı

mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar

mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar Algoritma ve Programlamaya Giriş mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar İçerik Algoritma Akış Diyagramları Programlamada İşlemler o o o Matematiksel Karşılaştırma Mantıksal Programlama

Detaylı

YIĞINLAR YIĞINLAR. Yığın İşlemleri Postfix, Prefix, Infix. G. Ü. Bilgisayar Mühendisliği Bölümü

YIĞINLAR YIĞINLAR. Yığın İşlemleri Postfix, Prefix, Infix. G. Ü. Bilgisayar Mühendisliği Bölümü Yığın İşlemleri Postfix, Prefix, Infix Yrd.Doç.Dr. M. Ali Akcayol 1 Yığındaki elemanlardan sadece en son eklenene erişim yapılır. Yığına ilk eklenen eleman en son elde edilir. FILO (First-in-Last-out)

Detaylı

C Programlama Dilininin Basit Yapıları

C Programlama Dilininin Basit Yapıları Bölüm 2 C Programlama Dilininin Basit Yapıları İçindekiler 2.1 Sabitler ve Değişkenler......................... 13 2.2 Açıklamalar (Expresions)........................ 14 2.3 İfadeler (Statements) ve İfade

Detaylı

Bölüm 1. Ön Hazırlıklar ISBN 0-321-49362-1

Bölüm 1. Ön Hazırlıklar ISBN 0-321-49362-1 Bölüm 1 Ön Hazırlıklar ISBN 0-321-49362-1 Bölüm 1 Konular Programlama Dilleri Kavramlarının Çalışılma Nedenleri Programlama Alanları Dil Değelendirme Kriterleri Dil Tasarımındaki Etkileri Dil Kategorileri

Detaylı

Bir seçme komutu yürümekte olan programda iki veya daha fazla yoldan birini seçmemizi sağlar. İki sınıfa ayrılır:

Bir seçme komutu yürümekte olan programda iki veya daha fazla yoldan birini seçmemizi sağlar. İki sınıfa ayrılır: PDP 8 1 Gelişimi FORTRAN I kontrol komutları (aritmetik if) doğrudan IBM 704 donanımını tasarlayanlar tarafından hazırlanmıştır. 1960 lardan 70 lerin ortalarına kadar bu konudaki çalışmalar devam etmiştir.

Detaylı

Bilgisayarda Programlama. Temel Kavramlar

Bilgisayarda Programlama. Temel Kavramlar Bilgisayarda Programlama Temel Kavramlar KAVRAMLAR Programlama, yaşadığımız gerçek dünyadaki problemlere ilişkin çözümlerin bilgisayarın anlayabileceği bir biçime dönüştürülmesi / ifade edilmesidir. Bunu

Detaylı

1 PROGRAMLAMAYA GİRİŞ

1 PROGRAMLAMAYA GİRİŞ İÇİNDEKİLER IX İÇİNDEKİLER 1 PROGRAMLAMAYA GİRİŞ 1 Problem Çözme 1 Algoritma 1 Algoritmada Olması Gereken Özellikler 2 Programlama Dilleri 6 Programlama Dillerinin Tarihçesi 6 Fortran (Formula Translator)

Detaylı

PROGRAMLAMAYA GİRİŞ VE ALGORİTMA «YTÜROK» EĞİTMEN:REHA ÖZGÜR ŞİMŞEK

PROGRAMLAMAYA GİRİŞ VE ALGORİTMA «YTÜROK» EĞİTMEN:REHA ÖZGÜR ŞİMŞEK PROGRAMLAMAYA GİRİŞ VE ALGORİTMA «YTÜROK» EĞİTMEN:REHA ÖZGÜR ŞİMŞEK Giriş-Tanımlamalar Program Nedir? Tanımlanmış bir problemi bilgisayar ortamında çözen ürüne program denir. Programlama Nedir? Tanımlanmış

Detaylı

Veritabanı Tasarımı. Sütunlar, Karakterler ve Satırlar ile Çalışma

Veritabanı Tasarımı. Sütunlar, Karakterler ve Satırlar ile Çalışma Veritabanı Tasarımı Sütunlar, Karakterler ve Satırlar ile Çalışma Amaç Bu ders aşağıdaki hedefleri kapsamaktadır: Bir karakter ifadesi oluşturmak için diğer sütunları, aritmetik ifadeleri ya da sabit değerleri

Detaylı

Bölüm1. İlk Bilgiler ISBN 0-321-49362-1

Bölüm1. İlk Bilgiler ISBN 0-321-49362-1 Bölüm1 İlk Bilgiler ISBN 0-321-49362-1 Bölüm 1 Konuları Niye Programlama Dilleri prensiplerini öğreniyoruz? Programlama alanları Dil değerlendirme kriterleri Dit tasarımına etkiler Dil kategorileri Dil

Detaylı

ENF102 TEMEL BİLGİSAYAR BİLİMLERİ VE C/ C++ PROGRAMLAMA DİLİ. Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

ENF102 TEMEL BİLGİSAYAR BİLİMLERİ VE C/ C++ PROGRAMLAMA DİLİ. Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü ENF102 TEMEL BİLGİSAYAR BİLİMLERİ VE C/ C++ PROGRAMLAMA DİLİ Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü Genel Bilgiler Uzman Mehmet ŞİMŞEK Ofis : Gazi Ünv., Bilgisayar Mühendisliği

Detaylı

Context-Free Grammars and Languages

Context-Free Grammars and Languages Context-Free Grammars and Languages We have seen that many languages cannot be regular. Thus we need to consider larger classes of langs, called Context- Free Languages (CFL). These langs have a natural,

Detaylı

Bilgisayar Programı Nedir?

Bilgisayar Programı Nedir? BİL1002 Bilgisayar Programlama PROF.DR.TOLGA ELBİR Bilgisayar Programı Nedir? Program, bilgisayarda i belirli libir amacı gerçekleştirmek için geliştirilmiş yöntemlerin ve verilerin, bilgisayarındonanımınınyerine

Detaylı

Dekleratif Programlama. Örnek : Aile Ağacı. SWI-Prolog. Prolog Dekleratif programlama dili

Dekleratif Programlama. Örnek : Aile Ağacı. SWI-Prolog. Prolog Dekleratif programlama dili Prolog Programlarının özellikleri: PROgrammig in LOGic Semboller üzerinde çalışma Problemlerin çözümünü tanımlama yerine çıkarım yapma Doğal ğ dille düşünülen ş şeylerin y kodlanması kolay Gerçekler ve

Detaylı

3/7/2011. ENF-102 Jeoloji 1. Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Veri Tanımları ve Mantıksal Đşlemler

3/7/2011. ENF-102 Jeoloji 1. Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Veri Tanımları ve Mantıksal Đşlemler Veri Tanımları ve Mantıksal Đşlemler Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Kullanılacak bütün değişkenlerin kullanılmadan önce C derleyicisine bildirilmeleri gerekir.

Detaylı

Bilgisayar Programlama MATLAB

Bilgisayar Programlama MATLAB What is a computer??? Bilgisayar Programlama MATLAB Prof. Dr. İrfan KAYMAZ What Konular is a computer??? MATLAB ortamının tanıtımı Matlab sistemi (ara yüzey tanıtımı) a) Geliştirme ortamı b) Komut penceresi

Detaylı

YZM 2105 Nesneye Yönelik Programlama

YZM 2105 Nesneye Yönelik Programlama YZM 2105 Nesneye Yönelik Programlama Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği 1 BÖLÜM - 2 C# Programlama Dili Elemanları Bu bölümde;

Detaylı

Genel Programlama II

Genel Programlama II Genel Programlama II 15.02.2011 1 Genel Programlama Tekrar Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi. Önceki bölümde bir problemin çözümü ile

Detaylı

Öğr. Gör. Cansu AYVAZ GÜVEN VERİTABANI-II. Değişken Tanımlama Ve Akış Kontrol Deyimleri

Öğr. Gör. Cansu AYVAZ GÜVEN VERİTABANI-II. Değişken Tanımlama Ve Akış Kontrol Deyimleri Öğr. Gör. Cansu AYVAZ GÜVEN VERİTABANI-II Değişken Tanımlama Ve Akış Kontrol Deyimleri Değişken Nedir? Değişkenler, programın veya kodların icra süresince belirli bir değer tutan ve istenilirse bu değer

Detaylı

BİLGİSAYAR PROGRAMLAMA DERSİ

BİLGİSAYAR PROGRAMLAMA DERSİ BİLGİSAYAR PROGRAMLAMA DERSİ 3. DERS NOTU Konu: MATLAB de Temel İşlemler Hazırlayan: Yrd. Doç. Dr. Ahmet DUMLU 1 MATLAB (Matrix Laboratory) sayısal hesaplama dilidir. MathWorks firması tarafından geliştirilmiş

Detaylı

LINQ (Temel Kavramlar)

LINQ (Temel Kavramlar) LINQ (Temel Kavramlar) Ele Alınacak Başlıklar Temel Kavramlar Lambda İfadeleri (*Lambda Expressions) Query İfadeleri (*Query Expressions) Tür Çıkarsama (*Type Inference) Anonim Türler (*Anonymous Types)

Detaylı

PHP, nesne-yönelimli (object-oriented) bir dil olduğu için, nesne oluşturma imkânına ve bunların kullanılmasını sağlayan metodlara da sahiptir.

PHP, nesne-yönelimli (object-oriented) bir dil olduğu için, nesne oluşturma imkânına ve bunların kullanılmasını sağlayan metodlara da sahiptir. PHP'nin Temelleri PHP Nedir? PHP, bir programlama dili olarak, değişkenler, değişkenlerin değerleriyle bir işlem yapmayı sağlayan işlemciler (operatörler), işlemcilerle oluşturulan deyimler ve nihayet

Detaylı