C++ Dosya İşlemleri. C++ da Vektörler. C++ Dosya İşlemleri. Hazırlayan:Muhammed Şamil Özer. Vektörler

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

Download "C++ Dosya İşlemleri. C++ da Vektörler. C++ Dosya İşlemleri. Hazırlayan:Muhammed Şamil Özer. Vektörler"

Transkript

1 C++ Dosya İşlemleri C++ Dosya İşlemleri Hazırlayan:Muhammed Şamil Özer C++ da Vektörler Vektörler Vektör standart isim uzayının (std::) bir parçasıdır ve aslında bir sınıf şablonudur. STL (Standart Şablon Kütüphanesi) in bir üyesidir ve dinamik bir dizidir. İçerisinde hemen hemen verileri ve nesneleri tutan bir dizi oluşturmak için kullanılabilir. C++ vektörü ve vektör fonksiyonları kullanabilmemiz için <vector> kütüphanesini #include etmemiz gerekir. C++ da vektörler şu şekilde tanımlanır. vector<değişken tipi>vektör değişkeni; [crayon-5ca65f165531e /] [crayon-5ca65f /] Vektör Fonksiyonları push_back() Veriyi vektörün arkasına ekler.

2 pop_back() elemanını vektörden çıkarır. Son back() Vektördeki son elemanı döndürür. swap() Vektördeki verilerin tümünü bir başa vektördekilerle yer değiştirir. insert() Vektör içinde rastgele bir konuma bir eleman ekler veya çıkarır. erase() Belirtilen konumdan bir eleman çıkarır. size() Vektörün o anki değerini döndürür. begin() Vektörün başlangıcını gösteren bir iteratör döndürür. end() Vektörün sonunu gösteren bir iteratör döndürür. Vektörlerde iteratör kullanımı Vektörlerde iterator vektörün adresine göre işlem yapar. C deki pointer gibi düşünebiliriz. Çeşitli iterator fonksiyonlarından yararlanabiliniz ve vektörü düzenlememizde yardımcı olurlar. C++ da iterator şu şekilde tanımlanır. vector<değişken tipi>::iterator değişken; [crayon-5ca65f165532f /]

3 C++ da Vektör Örnekleri Örnek 1: [crayon-5ca65f /] Örnek 2: [crayon-5ca65f /] Örnek 3: [crayon-5ca65f165533d /] *EK BİLGİ: Vektörlerde sıralama(sort) işlemi yapabilmemiz için #include <algorithm> yapmamız gerekir. Örnek 4: [crayon-5ca65f /] YAZAR: Ömer Can ESKİCİOĞLU Fonksiyonların Aşırı Yüklenmesi (OVERLOADİNG) Aşırı yüklenme aynı isme sahip fonksiyonların farklı parametrelerle oluşturulması ve kullanılmasıdır. Mesela ekrana bir veri yazdırmak istiyorsunuz ve bir fonksiyona ihtiyacınız var. Fonksiyonu aşağıdaki gibi int tipinde tanımladınız. [crayon-5ca65f /] Eğer yukarıdaki fonksiyonu kesirli veya sözel olarak tanımlamak isterseniz hata alırsınız.

4 [crayon-5ca65f /] yaz(5) fonksiyonu int tipinde olduğu için hata vermez ancak yaz( bilimsel ) komutu string tipinde olduğu için hata verir. Bunun nedeni yaz(5) fonksiyonunun sadece int tipinde ki değerleri yazabilecek şekilde oluşturulmasıdır. Eğer yaz() fonksiyonu hem yaz(int x) hem yaz(double x) hem de yaz(string x) şeklinde tanımlanırsa fonksiyona aşırı yüklenmiş oluruz. [crayon-5ca65f165630d /] Eğer yaz() fonksiyonu ile birden fazla parametre yazdırmak istiyorsanız yaz(string ad, int yas) gibi fonksiyonlar yazarak da aşırı yükleme yapabilirsiniz. [crayon-5ca65f /] KAYNAKLAR; FAHRETTİN ERDİNÇ ABAKÜS YAYINLARI C/C++ -fonksiyon-asiri-yuklemesi-2/ HAZIRLAYAN; AYŞE YILDIRIM

5 C++ Örnek Soru Çözümleri Bu soruyu çözmeye başlamadan önce soruyu anlamamız ve algoritma üretmemiz gerekiyor. Bu soru için izleyeceğimiz adımlar sırasıyla şöyledir; Öncelikle bizden istenene odaklanırız ve o sonuca nasıl ulaşabileceğimizi hesaplamalıyız.

6 Anlaşıldığı üzere p(100) ve f(100) bulunursa problemimiz çözülecektir 1-p(100) bulunur. p(100) = [crayon-5ca65f165672b /] gibi basit bir işlemle çözülür. 2-f(100) bulunur. f(100) [crayon-5ca65f /] Kod dünyasının paylaştığı bu sorunun çözümü: [crayon-5ca65f /] şeklindedir. Soru 2

7 [crayon-5ca65f165673c /] şekilde çözüme ulaşılabilir. C++ Dilinde Ctype Kütüphanesi Bu yazının amacı C kütüphanelerinden ctype.h kütüphanesini açıklamaktır. Kütüphane kabaca C dilinde bulunan karakterler (char) üzerinde işlem yapmaya imkan sağlar. Kütüphane ismi de buradan gelmektedir ( char + type = ctype). Amacı bir karakterin tipini algılama veya değiştirmektir.

8 Kütüphane herhangi bir C kodunda aşağıdaki şekilde eklenir. #include <ctype.h> Örnek olarak klavyeden bir dizgi (string) alan ve bu dizgi içerisindeki büyük harfleri küçüğe ve küçük harfleri büyüğe çeviren kodu aşağıdaki şekilde kodlayabiliriz: [crayon-5ca65f1656b /] Kodun örnek çıktısı aşağıda verilmiştir: bir yazı girinizali BABA ve Kirk Haramiler ali baba VE kirk haramiler İnsertion Sort (Eklemeli Sıralama) C++ İnsertion Sort bir dizideki verileri sıralama algoritmasıdır. Bu algoritmada kısaca yapılan işlem dizinin solundaki elaman ile sağındaki elamanı karşılaştırıp küçük olanı sola atmaktır. Dizinin tüm elamanları sırayla tek tek kontrol edilir ve yer değiştirilir böylece dizi küçükten büyüğe sıralanmış olur. Örnek olarak 5 elamanlı bir diziyi küçükten büyüğe sırayalım : #include <iostream> using namespace std; int main() { int indis,i,key,k; int dizi[5]={3,2,4,1,5}; for(indis=0;indis<5;indis++){ key=dizi[indis];

9 i=indis-1; while(i>=0 && dizi[i]>key) { dizi[i+1]=dizi[i]; i=i-1; } dizi[i+1]=key; } for(k=0;k<5;k++){ cout<<dizi[k]<< \n ; } return 0; } program çıktısı : şeklinde olacaktır. Selection Sort (Seçerek

10 Sıralama) C++ Bir dizideki verilerin küçükten büyüğe veya büyükten küçüğe doğru sıralanmasında kullanılan bir sıralama algoritmasıdır. Bu algoritma da dizinin ilk elemanı en küçük olarak kabul edilebilir, sonra dizi içerisindeki en küçük eleman aranır, bulunduğu zaman ilk eleman ile yer değiştirilir, daha sonra kalan elemanlar arasında ikinci en küçük eleman aranır ve ikinci elemanla yer değiştirilir. Bu işlem dizinin son elemanına kadar tekrar edildiğinde dizi küçükten, büyüğe doğru sıralanmış olur. örnek olarak 6 elamanlı bir dizinin sıralanışı: #include <iostream> using namespace std; int main() { int dizi[6]=(4,1,5,3,6,2); int gecici,enkucuk,indis,i; int k; for(indis=0;indis<5;indis++) { enkucuk=indis; for(i=indis;i<6;i++){ if(dizi[i]<dizi[enkucuk])enkucuk=i; } gecici=dizi[indis];//dizinin elamanları yer değişiyor dizi[indis]=dizi[enkucuk];//dizinin elamanları yer değişiyor dizi[enkucuk]=gecici;//dizinin elamanları yer değişiyor } //diziyi yazdıralım for(k=0;k<6;k++){ cout<<dizi[k]<< \n ; } return 0; } Örnekte olduğu gibi dizinin ilk elamanı göz önüne alıp kıyaslayarak sırasıyla en küçük değerler bulunur ve bu değerler sırasıyla yer değiştirir.böylece dizi küçükten büyüğe sıralanmış olur.

11 C++ da Kalıtım (Inheritance) Kalıtım (Inheritance) Kalıtım (Inheritance) Kavramı C++ ın yazılan kodun yeniden kullanılabilir olmasını sağlayan mekanizması kalıtımdır. Yeniden kullanılabilirlikten, bir sınıfın alınıp bir başka yazılım uygulamasında da kullanılabilmesini anlıyoruz. Bu özellik yazılım geliştirme çevrimini kısaltırken aynı zamanda yazılımın daha gürbüz olmasını sağlayacaktır. Kopyala ve Yapıştır + Uyarla + Hata Ayıkla, Tekrar tekrar kullanılan fonksiyonlar için kütüphaneler oluştur, Yeni yazılım projesi Kütüphane Fonksiyonları (Uyarla + Hata Ayıkla) IS A İLİŞKİSİ Nesne Yönelimli Programlama dillerinde, IS A ilişkisi tamamiyle kalıtımla ilişkilidir. Inheritance denilen kavram ise extends anahtar sözcüğü kullanılarak yapılan Class Kalıtımı ya da implements anahtar sözcüğü ile yapılan Interface Kalıtımıdır. Is A ilişkisinde ifade edilen ; BMW bir Araçtır.Kiraz bir

12 meyvadır türünde illişkilerdir. Yani Kiraz, kiraz olabilmesinin yanında aynı zamanda da bir meyvadır. Ancak her meyva aynı zamanda bir kiraz olamayacağı için kalıtım tek yönlü ( uni directional ) bir olaydır. BMW Arac örnegi üzerinden durumu açıklarsak ; BMW adında bir sınıfımız olduğunu düşünelim. Ayrıyetten birde Arac adında bir sınıfımız olduğunu düşünelim. Arac sınıfı, araçlara ait olan ortak özellikleri bulunduran bir sınıftır ve BMW sınıfı bu sınıfı extends anahtar sözcüğü ile kalıtırsa Araç sınıfına ait olan genel özellikleri kalıtmış olmaktadır. BMW sınıfı extend ettiği sınıf içerisindeki methodları override etmeyebilir. Eğer bu methodları override etmez ise, yani aynı isimler ile aynı paramatreler alan bir method oluşturmazsa, bu methodu kendine göre özelleştirmeyip, araç a ait olan genel özellikleri kullanmış olur.

13 Daha iyi kavrayabilmemiz için örneklere bakalım Örnek1: [crayon-5ca65f1656ef /] C++ Kütüphanelerin Kullanım

14 Alanları C++ Kütüphaneleri #include komutu C++ ın içinde gelen birtakım kütüphanelerin (library) başlık (header) dosyalarını programa ekleyerek bu kütüphanelerde yer alan bilgileri kullanmamızı sağlar. Bu header dosyaları.h uzantısına sahiptir. stdio.h, conio.h, math.h gibi C++ ın içerisinde gelen birtakım hazır kütüphane başlık dosyaları mevcuttur. Bunun yanısıra C programcısı kendi kütüphanesini kendisi de yaratabilir ya da büyük projelerde programın uzunluğundan dolayı tanımlamalar için başlık dosyalarını kullanmayı tercih edebilir. Dosya isminin iki yanına < ve > işaretleri koyarsak derleyici yalnızca kendi include klasöründeki başlık dosyalarını arayacaktır. Eğer <..> yerine tırnak işareti kullanacak olursak, derleyici öncelikle o anda bulunduğumuz projemize ait klasörün içinde belirttiğimiz dosyayı arayacak, bulamazsa o zaman kendi include klasörüne bakacaktır. Kısaca.. şeklindeki kullanımı kendi yarattığımız header dosyaları için kullanıyoruz. Örnek: #include <stdio.h> #include <conio.h> #include tanimlar.h C ve C++ arasındaki farklardan biri de C++ ın içerisinde standart C de gelenden daha fazla kütüphane fonksiyonu gelmesidir. Örneğin bundan önceki konudaki örnek programda kullandığımız stdio kütüphanesi bir C kütüphanesidir. C++, C nin tüm kütüphanelerini bulundururken, aynı zamanda onların bazılarına alternatif kütüphaneler de içerir. Merhaba Dünya!!! örneğini stdio.h yerine bir C++ kütüphanesi olan iostream.h kullanarak da yazmamız mümkün. cassert : Makrolar ve programın hatalarının ayıklanmasına

15 yardımcı olacak inceleme araçlarını eklemek için gerekli bilgileri içerir. Bu dosyanın eski adı assert.h idi. cctpye : Karakterlerin bazı özelliklerini test eden fonksiyonların prototiplerini içerir. Ayrıca küçük harfleri büyük harflere çevirmek ya da bunun tam tersini yapmak için kullanılır. Eski adı ctype.h idi. cfloat : Sistemin, float tipindeki sayılar için limitlerini içerir. Eski adı float.h idi. climits : İntegral limitlerini içerir. limits.h yerine kullanılır. cmath : Matematik kütüphane fonksiyonlarının prototiplerini içerir. math.h yerine kullanılır. cstdio: Standart giriş/çıkış kütüphane fonksiyonlarının prototiplerini ve bu fonksiyonlar tarafından kullanılan bilgileri içerir. stdio.h yerine kullanılır. cstdlib : Sayıları metne, metni sayılara çeviren, hafızada yer ayıran, rastgele sayılar üreten ve diğer çeşitli faydalı fonksiyonların prototiplerini içerir. stdlib.h yerine kullanılır. cstring : C tarzı string işleme fonksiyonlarının prototiplerini içerir. string.h yerine kullanılır. ctime : Zamanı ve tarihi yöneten fonksiyonların prototiplerini içerir. time.h yerine kullanılır. iostream : Standart giriş/çıkış fonksiyonlarının prototiplerini içerir. iostream.h yerine kullanılır. iomanip : Veri akışlarını biçimlendirme imkanı sağlayan, akış yönetim fonksiyonlarının prototiplerini içerir. iomanip.h yerine kullanılır. fstream: Disk üzerindeki dosyalara giriş/çıkış işlemleri yapan fonksiyonların prototiplerini içerir. fstream.h yerine kullanılır.

16 utility : Bir çok standart kütüphane öncü dosyasının kullandığı sınıfları ve fonksiyonları içerir. vector, list, deque, queue, stack, map, set, bitset, functional : Bu öncü dosyalar, standart kütüphane taşıyıcılarını sağlayan sınıfları içerir. Taşıyıcılar, programın çalışması sırasında verileri saklamak için kullanılır. functional : Standart kütüphane algoritmaları tarafından kullanılan sınıf ve fonksiyonları içerir. memory : Standart kütüphane taşıyıcılarına hafızada yer ayıran standart kütüphane tarafından kullanılan sınıfları içerir. iterator : Standart kütüphane taşıyıcıları içindeki veriye ulaşmak için kullanılan sınıfları içerir. algorithm : Standart kütüphane taşıyıcılarındaki bilgi üzerinde işlem yapan fonksiyonları içerir. exception : İstisnai durumları işleyen sınıfları içeren öncü dosyalardır. string : Standart kütüphanedeki string sınıfının tanımlanmasını içerir. sstream : Hafızadan string girişi alan veya hafızaya string gönderen fonksiyonların prototiplerini içerir. local: Farklı dillerin doğal hallerindeki bilgileri (para birimleri gibi) işlemek için kullanılan sınıf ve fonksiyonları içerir. limits : Her bilgisayar platformu üzerindeki sayısal veri tiplerinin limitlerini belirleyen sınıfları içerir. typeinfo : Çalışma anı tip yanıma yapmak için kullanılan

17 sınıfları içerir (çalışma anındaki veri tiplerini belirler). Temel Kütüphaneler Ve Örnekleri cstring: strchr,strcmp,strcoll,strcpy,strcspn,strerror,strlen,strncat,s trncmp,strncpy,strpbrk,strrchr,strspn,strstr,strtok,strxfm fonksiyonları bu kütüphanede kullanılabilir. Örnek vermek gerekirse; [crayon-5ca65f /] ctime: asctime, clock,ctime,difftime,gmtime,localtime, mktime,strftime,time fonksiyonları bu kütüphanededir. Örnek vermek gerekirse; [crayon-5ca65f /] cmath : log,sin,cos,tan,ceil,floor,fabs,pow,fmax,fmin, fonksiyonları bu kütüphanededir.örnek vermek gerekirse; [crayon-5ca65f165730d /] iostream: cin,cout,cerr,clog,wcin,wcout,wcerr,wclog fonksiyonları bu kütüphanededir. Örnek vermek gerekirse; [crayon-5ca65f /] cstdio: rename,remove,tmpfile,tmpnam,fclose,fflush,fopen,freopen,setb uf,stvbuf,fprintf,fscanf,printf,scanf,snprintf,sprintf,sscanf, vfprintf,vfscanf,vprintf,vscanf,fgetc,fputs,fgets,getc,getchar,puts,putc,fread,fwrite,fseek,fgetpos,ferror,perror fonksiyonları bu kütüphanede vardır.örnek vermek gerekirse; [crayon-5ca65f165731a /] Yazar: Ömer Can ESKİCİĞLU

18 C++ da Nesne Kavramı 1.Nesne C++ da Nesne Kavramı Nesneye yönelik çözümleme ve tasarım yöntemi de bir dizi tanım, gösterim şekli ve yordam kullanılmaktadır. Bunlar, kullanılan araç veya dile göre küçük farklılıklar gösterseler de temelde aynıdırlar. En önemli ortak özellik olan nesne gerçek dünyadaki varlıkların yazılım alanına uyarlamasında kullanılır. En basit anlamıyla nesne, mantıksal bir varlıktır. Örneğin; kendimizi bir nesne olarak düşünelim. Boyumuz, kilomuz, ten rengimiz, göz rengimiz ve daha bir çok özellik fiziksel görünüşümüzü belirler. İşte bu fiziksel görünüşümüzü belirleyen verilere (değişkenlere) özellik diyoruz. Konuşma, yürüme, koşma gibi eylemler ise yapabildiğimiz işleri metodlarımız belirler. Yazılımda kullanılan nesne ise verileri ve bu veriler üzerinde işlem yapmaya yarayan program kodunu içeren bir varlıktır. Programlama açısından nesneler birer kara kutu niteliğindedir. Her nesnenin bir arayüzü, bir veri yapısı ve bir dizi işlemi vardır Nesne Sınıflandırma Nesnelerin birbirleri arasında ilişki kurmak, ortak özeliklerini belirlemek ve tekrar kullanımı destekleyebilmek için nesnelerin sınıflandırılmasında fayda vardır. Nesneleri kullanıldıkları yerlere ve kullanım amaçlarına göre şu şekilde sınıflandırmak mümkündür:

19 Denetim Nesneler bir yazılım biriminin, yani programın, normal akışı sırasında bilgi işleme denetim unsuru olarak görev yapabilirler. Bilgisayar sistemi, yazılım içinde bir nesne ile gösterilir ve sistemi denetimi bu nesnenin sağladığı arayüz yordamları ile sağlanır. Uygulama Bir yazılım içinde belirli amaçların gerçekleştirilmesi için nesneler kullanılabilir. Çeşitli varlıkların bilgisayar ortamında gösterimi nesnelerle yapılarak soyutlama (abstraction) ve kapsama (encapsulation) sağlanır. Veri Yönetimi Üzerinde işlem yapılacak veriler birer nesne haline getirilir ve bu nesneler üzerinde yapılan yordamlar (method) tanımlanır. Nesneye yönelik veri tabanı yönetim sistemi buna bir örnektir. Arayüz Kullanıcı ile uygulama arasındaki arayüzü de nesnelerle sağlamak mümkündür. Bu da her iki düzey arasında bağımsızlık oluşturduğundan herhangi birinde yapılacak değişiklik veya gelişim diğerini fazla etki etmez Nesne Yapıları Bir nesnenin ana yapısında iki önemli kısım vardır : Öznitelik

20 (attribute) ve işlem (operation). Öznitelikler çözümleme sırasında dikkate alınmak üzere seçilen nesneyi tanımlar ve uygulama alanında anlam taşıyan nesne kavramını oluştururlar. Nesnelerin özniteliklerini değiştirmek ve nesneye bir iş yaptırmak için de işlemler kullanılır. Bu işlemlere yordam ya da metot adı verilmektedir. Öznitelik ve yordamların belirlenmesi nesneye yönelik çözümlemenin temelini oluşturur. Özniteliklerin belirlenmesi, çözümleyicinin nesneleri belirlemede kullandığı yönteme benzer şekilde, problem tanımını anlatan metnin tekrar incelenmesiyle başlar. Nesneye ait olabilecek her şey, genellikle isimler işaretlenir. Hangilerinin birer veri öğesi olabileceği belirlenir. Bileşik tipte olan veri öğeleri de tekil öğeler şeklinde tanımlanır. Bu şekilde bir öznitelik listesi oluşturulur. Yordamlar, nesnenin içinde tutulan bir ya da daha fazla özniteliği değiştirebilirler. Bir kısım yordam yalnızca değişiklik yapabilirken, bir kısım yordam da hesaplama yapabilir. Bazıları da nesnenin iç yapısı hakkında kullanıcısına bilgi sağlar. Yordamlarda öznitelikler gibi problemi anlatan metin içinden çıkartılır. Bir nesneyle ilişkisi olabilecek fiiller, yani eylemler, işaretlenir, seçilir ve listelenir. Yordamların bir kısmı da nesneler arası iletişimi kurmak için kullanılır. Bu amaçla oluşturulan tek ya da çift yönlü düzeneğe ileti, yani mesaj denir. Nesneler bu iletileri birbirlerine aktararak haberleşirler. Gönderici nesneler alıcı nesnelerin ne yapmaları gerektiğini bu iletilerle bildirirler. Çözümleme sırasında, iletişimi sağlayan gönderici ve alıcı nesnelere ait işlemler de belirlenir. Nesnelerin tanımlanmasındaki son aşama nesnelerin yaşam süreleriyle ilgilidir. Nesneler yaratılır, öznitelikleri değiştirilir, belli bir iş yaparlar, işleri bitince de silinirler. Bu amaçla, kullanımı o an için öngörülmese dahi uygun yapıcı ve yokedici işlemlerin de belirlenmesinde fayda vardır.

21 1.3. Nesne Gösterimi Nesneler birbirleriyle ilişkili veri ve işlemleri bir arada tutarak kapsama (cncapsula- tion) ve iyi tanımlanmış bir arayüz ile modülerlik (modularity) ilkelerini desteklerler. Nesnenin genel kısmı herkese açık ve paylaşılır verileri içerirken özel kısmında yalnızca kendisi tarafından kullanılan veriler bulunur. Böylelikle de bilgi gizleme (information hiding) ilkesi desteklenmiş olur.

C de Detaylı Üs Alma Programı

C de Detaylı Üs Alma Programı C de Detaylı Üs Alma Programı Bu uygulama yazısında C de pow() fonksiyonunu kullanmadan üs hesabı yapan programı yazmaya çalıştım. Başta tanımladığım float tipinde 2 fonksiyon sayesinde + lı ve li üs değerleriyle

Detaylı

C++ da Nesne Kavramı

C++ da Nesne Kavramı C++ da Nesne Kavramı 1.Nesne C++ da Nesne Kavramı Nesneye yönelik çözümleme ve tasarım yöntemi de bir dizi tanım, gösterim şekli ve yordam kullanılmaktadır. Bunlar, kullanılan araç veya dile göre küçük

Detaylı

Java da Dizi Tanımlama

Java da Dizi Tanımlama Java da Dizi Tanımlama DİZİLER Dizi, içerisinde aynı tip verilerin tutulduğu bir yapıdır. Diziler ile verilere daha kolay erişim sağlanır. Java daki diziler, diğer dillerden farklı olarak birer nesnedir.

Detaylı

PROGRAMLAMAYA GİRİŞ DERS 2

PROGRAMLAMAYA GİRİŞ DERS 2 PROGRAMLAMAYA GİRİŞ DERS 2 Program editörde oluşturulur ve diske kaydedilir Tipik Bir C Programı Geliştirme Ortamının Temelleri 1. Edit 2. Preprocess 3. Compile 4. Link 5. Load 6. Execute Önişlemci programı

Detaylı

C++ Dersi: Nesne Tabanlı Programlama 2. Baskı

C++ Dersi: Nesne Tabanlı Programlama 2. Baskı C++ Dersi: Nesne Tabanlı Programlama 2. Baskı ³ Bölüm 19: Standart Şablon Kütüphanesi (vector) İçerik 19.1 Standart Şablon Kütüphanesi (STL) 19.2 vector SınıK 19.3 vectortanımı 19.4 vector Elemanlarına

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ı

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-12 Fonksiyonlar. Yrd. Doç. Dr. Ümit ATİLA

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-12 Fonksiyonlar. Yrd. Doç. Dr. Ümit ATİLA BLM-111 PROGRAMLAMA DİLLERİ I Ders-12 Fonksiyonlar Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Fonksiyonlar Fonksiyonlar C de modüller Programlar kullanıcı tanımlı

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ı

PROGRAMLAMAYA GİRİŞ FONKSİYONLAR

PROGRAMLAMAYA GİRİŞ FONKSİYONLAR PROGRAMLAMAYA GİRİŞ FONKSİYONLAR Fonksiyonlar C programlama dili fonksiyon olarak adlandırılan alt programların birleştirilmesi kavramına dayanır. Bir C programı bir ya da daha çok fonksiyonun bir araya

Detaylı

Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır

Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır stringh floath Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır 32 Sorgulama İfadesi - if Deyimi (5 Hafta) Bu deyim sorgulamanın tek basamakta yapılacağı yerlerde

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ı

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ı

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ş Sınıflar, Nesneler, Fonksiyon ve Veri Üyeleri Sınıf ve Fonksiyon Üyeleri

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ı

Hafta 13 Fonksiyonlar

Hafta 13 Fonksiyonlar BLM111 Programlama Dilleri I Hafta 13 Fonksiyonlar Yrd. Doç. Dr. Caner ÖZCAN Fonksiyonlar Fonksiyonlar C de modüller Programlar kullanıcı tanımlı fonksiyonları ve kütüphane fonksiyonlarını birlikte kullanırlar.

Detaylı

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) {

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) { Fonksiyonlar Kendi içinde bağımsız olarak çalışabilen ve belli bir işlevi yerine getiren program modülleridir. C programları bu modüllerden (fonksiyonlar) oluşurlar. Fonksiyonların yazılmasındaki temel

Detaylı

Diziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU

Diziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU Diziler Yrd.Doç.Dr.Bülent ÇOBANOĞLU Dizi (Array) Nedir? Bellekte sürekli yer kaplayan artarda sıralanmış aynı türden verilerin oluşturduğu kümeye dizi (array) denir. Dizi, çok fazla miktardaki tek tip

Detaylı

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism )

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism ) Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism ) BBS-515 Nesneye Yönelik Programlama Ders #9 (16 Aralık 2009) Geçen ders: Java Applet lerde bileşen yerleştirme türleri ( applet layouts

Detaylı

Sınav tarihi : Süre : 60 dak. a) strstr b) strchr c) strcat d) strcpy e) strlen. a) b) d) e) 0

Sınav tarihi : Süre : 60 dak. a) strstr b) strchr c) strcat d) strcpy e) strlen. a) b) d) e) 0 Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Bitirme Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 01.06.2017 Süre : 60 dak. 1. t değişkeni hakkında aşağıdakilerden

Detaylı

String ve Karakter Dizileri. Yrd. Doç. Dr. Fehim KÖYLÜ Erciyes Üniversitesi Bilgisayar Mühendisliği Bölümü

String ve Karakter Dizileri. Yrd. Doç. Dr. Fehim KÖYLÜ Erciyes Üniversitesi Bilgisayar Mühendisliği Bölümü String ve Karakter Dizileri #include Temel giriş çıkış akımları nesnelerinin tanımlandığı kütüphanedir. cin,cout,cerr,clog, wcin,wcout,wcerr,wclog nesneleri içerir. using namespace std; //std

Detaylı

HSancak Nesne Tabanlı Programlama I Ders Notları

HSancak Nesne Tabanlı Programlama I Ders Notları METOTLAR Nesneye yönelik programlama dillerinde genellikle fonksiyonlar metot olarak isimlendirilirler. Metot ve fonksiyon olarak ifade edilecek kavramlar aynı anlamda kullanılacaktır. Her çalışan C# programı

Detaylı

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi Bil101 Bilgisayar Yazılımı I Bilgisayar Yüksek Mühendisi Editör Disk 1)Kaynak kodlar editör aracılığı ile oluşturulur. (.c) Kaynak dosya Önişleyici Disk 2)Önişleyici kodlar içerisindeki ilk işleme işini

Detaylı

ANA SINIF TÜRETİLEN BİRİNCİ SINIF TÜRETİLEN İKİNCİ SINIF

ANA SINIF TÜRETİLEN BİRİNCİ SINIF TÜRETİLEN İKİNCİ SINIF JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java da Kalıtım Kavramı Java da Çok Biçimlilik Kavramı Fonksiyonların Çok Biçimliliği Yapıcı Fonksiyonun Çok Biçimliliği Java da Kalıtım Kavramı 4 Kalıtım;

Detaylı

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Uzaktan Eğitim Uygulama ve Araştırma Merkezi JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java Kodlarına Yorum Satırı Eklemek Java Paket Kavramı Java Kütüphane Kavramı Konsoldan Veri Çıkışı ve JOPtionPane Kütüphanesi JOptionPane Kütüphanesi Kullanarak

Detaylı

YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ. 3. Hafta

YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ. 3. Hafta YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ 3. Hafta YAPILAR Farklı veri tipindeki bilgilerin bir araya gelerek oluşturdukları topluluklara yapı (structure) denir. Yani yapılar, birbiriyle ilişkili değişkenlerin

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 11: Bileşim, Arkadaş ve Diğer Araçlar İçerik Bileşim Arkadaş Fonksiyonlar ve Sınıflar Arkadaş Fonksiyonlar Arkadaş Sınıflar Sabit Nesneler Sabit Üye Fonksiyonlar

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ı

Dizi nin Önemi. Telefon rehberindeki numaralar, haftanın günleri gibi v.b.

Dizi nin Önemi. Telefon rehberindeki numaralar, haftanın günleri gibi v.b. Diziler Dizi Nedir Ortak özelliğe sahip birden fazla bilginin oluşturduğu bütün bilgi kümelerine veya hafızada art arda sıralanmış aynı türden verilerin oluşturduğu yapıya dizi denir. Kısaca; Bellekte

Detaylı

Operatörlerin Aşırı Yüklenmesi

Operatörlerin Aşırı Yüklenmesi Operatörlerin Aşırı Yüklenmesi Operatörlerin Aşırı Yüklenmesi Tıpkı fonksiyonlara yaptığımız gibi öperatörlere de aşırı yükleme yapabiliriz.yani, operatörlere normal görevlerinin yanında farklı görevler

Detaylı

BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN

BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN Basit C Programları: Bir Metni Yazdırmak #include /* program çalışmaya main fonksiyonundan başlar*/ int main() { printf( "C diline hoşgeldiniz!\n"

Detaylı

Programlama Dillerinde Kullanılan Veri Tipleri

Programlama Dillerinde Kullanılan Veri Tipleri Programlama Dillerinde Kullanılan Veri Tipleri Taban/Biçim Basic Paskal C/C++/C#/Java 10 (Decimal ) - - - 16 (Hexadecimal) &hsayı veya &Hsayı $sayı 0xsayı veya 0Xsayı Üstel eüs veya Eüs eüs veya Eüs eüs

Detaylı

Temel Giriş/Çıkış Fonksiyonları

Temel Giriş/Çıkış Fonksiyonları Temel Giriş/Çıkış Fonksiyonları Temel giriş/çıkış fonksiyonları, bütün programla dillerinde mevcuttur. Bu tür fonksiyonlar, kullanıcıya ekrana veya yazıcıya bilgi yazdırmasına, ve bilgisayara klavyeden

Detaylı

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1 Görsel Programlama DERS 03 Görsel Programlama - Ders03/ 1 Java Dili, Veri Tipleri ve Operatörleri İlkel(primitive) Veri Tipleri İLKEL TİP boolean byte short int long float double char void BOYUTU 1 bit

Detaylı

Giriş. ENF102 Jeoloji

Giriş. ENF102 Jeoloji DİZİLER Arrays Giriş Aynı isim altında, aynı türde birden fazla değer tutmak için kullanılan veri yapılarıdır (Data Structure). Dizi bir kümedir; aynı türde verilere tek bir isimle erişmek için kullanılır.

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 BG-213 2/1 2+0+2 2+1 5 Dersin Dili : TÜRKÇE Dersin Seviyesi : LİSANS

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ı

NESNEYE YÖNELİK PROGRAMLAMA

NESNEYE YÖNELİK PROGRAMLAMA NESNEYE YÖNELİK PROGRAMLAMA İŞARETÇİ ELEMANLI SINIFLAR REFERANSLAR OPERATÖRLERİN AŞIRI YÜKLENMESİ ATAMA OPERATÖRÜ Özlem AYDIN Trakya Üniversitesi Bilgisayar Mühendisliği Bölümü İşaretçi Elemanlı Sınıflar

Detaylı

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI İÇİNDEKİLER IX İÇİNDEKİLER 1 GİRİŞ 1 Kitabın Amacı 1 Algoritmanın Önemi 2 Bilgisayarın Doğuşu ve Kullanım Amaçları 3 Programlama Dili Nedir? 3 Entegre Geliştirme Ortamı (IDE) Nedir? 4 2 ALGORİTMA VE AKIŞ

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ı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 14: Çoklu İşlev İçerik Çoklu İşlevin Gerçekleştirilmesi Saf Sanal Fonksiyonlar ve Soyut Sınıflar Sanal Yıkıcı Fonksiyonlar Statik ve Dinamik Bağlama 2 Çoklu İşlev

Detaylı

Algoritma ve Programlama: Karar Yapıları ve Döngüler

Algoritma ve Programlama: Karar Yapıları ve Döngüler Algoritma ve Programlama: Karar Yapıları ve Döngüler Bir algoritma, herhangi bir programlama dili (C, C++, Pascal, Visual Basic, Java gibi) ile kodlandığında program haline gelir. Algoritmada yer alan

Detaylı

BTEP243 Ders 3. class Yazım Kuralı:

BTEP243 Ders 3. class Yazım Kuralı: BTEP243 Ders 3 Sınıflar ve Nesneler Nesne tabanlı programlamada, programlamanın temeli sınıflardır (class). Nesnelerin yaratılmasında taslak (blueprint) görevi görür. Sınıflar; o Nesnelerin özelliklerinin

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 7: Yapılar Diziler İçerik Yapıların Tanımı Yapılara İlk Değer Atama Yapı Elemanlarına Erişim İç içe Yapılar Yapılar ve Fonksiyonlar 2 Yapılar (structures) içinde

Detaylı

İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ

İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ AD SOYAD : TESLİM TARİHİ : OKUL NO : TESLİM SÜRESİ : 1 hafta Ödev No : 5 1. Aşağıdaki programların çıktısı

Detaylı

VERİ YAPILARI DERS NOTLARI BÖLÜM 1 GİRİŞ. Yard. Doç. Dr. Deniz KILINÇ

VERİ YAPILARI DERS NOTLARI BÖLÜM 1 GİRİŞ. Yard. Doç. Dr. Deniz KILINÇ VERİ YAPILARI DERS NOTLARI BÖLÜM 1 GİRİŞ Yard. Doç. Dr. Deniz KILINÇ CELAL BAYAR ÜNİVERSİTESİ, YAZILIM MÜHENDİSLİĞİ 2015-2016 1. DERS İÇERİĞİ VE KAYNAKLAR Veri Yapıları (VY) dersinde görülmesi muhtemel

Detaylı

Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : dak.

Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : dak. Selçuk Üniversitesi Mühendislik Fakültesi Harita Mühendisliği Bölümü ra Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre :13.04.2017 60 dak. Dikkat!!! Soru kitapçığında ve cevap

Detaylı

Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net

Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net Bilgisayar Programlama Ders 6 Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net Fonksiyon Prototipleri Fonksiyon Prototipleri Derleyici, fonksiyonların ilk hallerini (prototiplerini)

Detaylı

3. VERİ GİRİŞ-ÇIKIŞI (4ncü hafta)

3. VERİ GİRİŞ-ÇIKIŞI (4ncü hafta) 3. VERİ GİRİŞ-ÇIKIŞI (4ncü hafta) Bilgisayar belleğine veri aktarılabilmesi (veri okutulması) için scanf() veya cin (consol input un kısaltılmışı) komutları kullanılabilir. Sonuçlarının ekrana aktarılması

Detaylı

5.HAFTA. Sınıf ve Nesne Kavramı, Metot Oluşturma, Kurucu Metot, this Deyimi

5.HAFTA. Sınıf ve Nesne Kavramı, Metot Oluşturma, Kurucu Metot, this Deyimi 5.HAFTA Sınıf ve Nesne Kavramı, Metot Oluşturma, Kurucu Metot, this Deyimi Sınıf Kavramı: Sınıf (class) soyut bir veri tipidir. Nesne (object) onun somutlaşan bir cismidir. Java da sınıf (class) kavramını

Detaylı

... ROBOTİK VE KODLAMA EĞİTİMİ ÇERÇEVESİNDE ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ DERSİ ÜNİTELENDİRİLMİŞ YILLIK DERS PLANI

... ROBOTİK VE KODLAMA EĞİTİMİ ÇERÇEVESİNDE ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ DERSİ ÜNİTELENDİRİLMİŞ YILLIK DERS PLANI ... ROBOTİK VE KODLAMA EĞİTİMİ ÇERÇEVESİNDE 2018 2019 ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ DERSİ ÜNİTELENDİRİLMİŞ YILLIK DERS PLANI Hazırlayan : Özel Öğretim Kurumları Birliği (ÖZKURBİR) Dersin Adı : Bilişim

Detaylı

String Sınıfını Yönetmek

String Sınıfını Yönetmek String Sınıfı String Sınıfını Yönetmek Stringler karakterlerden oluşur. Bir string sabiti çift tırnak arasında verilmiş karakterler listesidir. "Bu örnek bir string dir" 2 Yukardaki string 27 adet karakterden

Detaylı

Bilgisayar Programcılığı. Ögr. Gör. Cansu AYVAZ GÜVEN

Bilgisayar Programcılığı. Ögr. Gör. Cansu AYVAZ GÜVEN Bilgisayar Programcılığı Ögr. Gör. Cansu AYVAZ GÜVEN DİZİLER Kullanım Şekli Dizi Elemanlarını Yeniden Boyutlandırma Dizi Elemanlarına Ulaşım Çok Boyutlu Diziler Array Sınıfı Metodları Array List 2 Diziler

Detaylı

BLM 112- Programlama Dilleri II. Hafta 4 İşaretçiler (Pointers)

BLM 112- Programlama Dilleri II. Hafta 4 İşaretçiler (Pointers) 1 BLM 112- Programlama Dilleri II Hafta 4 İşaretçiler (Pointers) Dr. Öğr. Üyesi Caner Özcan İyilik insanları birbirine bağlayan altın zincirdir. ~Goethe Hafıza Yapısı 2 Bir değişken tanımlandığında arka

Detaylı

ALGORİTMA VE PROGRAMLAMA II

ALGORİTMA VE PROGRAMLAMA II ALGORİTMA VE PROGRAMLAMA II Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1102 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Veri Hiyerarşisi Dosyalara Giriş

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 Bilgisayar Programlama BİM-213 2/I 2+0+2 3 4 Dersin Dili Dersin

Detaylı

BİLG Dr. Mustafa T. Babagil 1

BİLG Dr. Mustafa T. Babagil 1 BİLG214 20.10.2009 Dr. Mustafa T. Babagil 1 Yapısal bilgi türlerinin tanımlanması. (C++ daki struct yapısı. ) Daha önce öğrenmiş olduğumuz bilgi tipleri char, int ve float v.b. değişkenler ile dizi (array)

Detaylı

Görsel Programlama DERS 02. Görsel Programlama - Ders02/ 1

Görsel Programlama DERS 02. Görsel Programlama - Ders02/ 1 Görsel Programlama DERS 02 Görsel Programlama - Ders02/ 1 Kodun Tekrar Kullanımı ve Kalıtım(Inheritance) Nesneye yönelik programlamanın diğer programlama paradigmalarına karşı bir avantajı kodun yeniden

Detaylı

Yrd. Doç. Dr. Caner ÖZCAN

Yrd. Doç. Dr. Caner ÖZCAN Yrd. Doç. Dr. Caner ÖZCAN Diziler ile Pointer Arası İlişki Bir dizi adı sabit bir pointer gibi düşünülebilir. Diziler ile pointer lar yakından ilişkilidir. Pointer lar değişkenleri gösterdikleri gibi,

Detaylı

GENEL GĐRĐŞ-ÇIKIŞ FONKSĐYONLARI. ENF102 Jeoloji 1. #include <stdio.h> printf Fonksiyonu ÖRNEK. printf

GENEL GĐRĐŞ-ÇIKIŞ FONKSĐYONLARI. ENF102 Jeoloji 1. #include <stdio.h> printf Fonksiyonu ÖRNEK. printf Giriş GENEL GĐRĐŞ-ÇIKIŞ FONKSĐYONLARI printf Fonksiyonu scanf Fonksiyonu Verilerin kaybolmaması için hafızada değişkenler içine yerleştirilmeleri gerekir. Bu veriler iki şekilde yerleştirilebilir. Değişkene

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ı

/ C Bilgisayar Programlama Yıliçi Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak.

/ C Bilgisayar Programlama Yıliçi Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak. Selçuk Üniversitesi Mühendislik-Mimarlık Fakültesi Harita Mühendisliği Bölümü Yıliçi Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre :26.11.2012, 60 dak. Dikkat!!! Soru kitapçığında

Detaylı

Java String İşlemleri

Java String İşlemleri Java String İşlemleri Karakterler (Characters) "char" kelimesi bir karakter tanımlamak için kullanılır. Karakter tek tırnak içine alınmalıdır. Bir char'ın aralığı 0 ile 65536 arasındadır. Char türü işaretsiz

Detaylı

Fonksiyonlar (Altprogram)

Fonksiyonlar (Altprogram) Fonksiyonlar (Altprogram) C Programlama Dili fonksiyon olarak adlandırılan alt programların birleştirilmesi kavramına dayanır. Bir C programı bir ya da daha çok fonksiyonun bir araya gelmesi ile oluşur.

Detaylı

Temel Bilgisayar Programlama Final Sınavı Çalışma Notları

Temel Bilgisayar Programlama Final Sınavı Çalışma Notları Diziler Temel Bilgisayar Programlama Final Sınavı Çalışma Notları (Dr. Övünç ÖZTÜRK, Dr. Tahir Emre KALAYCI) (İnşaat Mühendisliği ve Gıda Mühendisliği Grupları İçin) Diziler aynı türden bilgileri saklamak

Detaylı

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Uzaktan Eğitim Uygulama ve Araştırma Merkezi JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java Veri Tipleri ve Özelilkleri Değişken Tanımlama Kuralları Değişken Veri Tipi Değiştirme (Type Casting) Örnek Kodlar Java Veri Tipleri ve Özelilkleri

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 6: Diziler İçerik Diziler Dizi Elemanlarına İlk Atama Diziler ve Fonksiyonlar İki Boyutlu Diziler İki Boyutlu Dizi Tanımı İki Boyutlu Dizi Elemanlarına Erişim

Detaylı

ALGORİTMA VE PROGRAMLAMA I

ALGORİTMA VE PROGRAMLAMA I ALGORİTMA VE PROGRAMLAMA I Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Diziler Dizi Nedir? Dizilerin Bildirimi

Detaylı

C PROGRAMLAMA D İ L İ

C PROGRAMLAMA D İ L İ C PROGRAMLAMA DİLİ Diziler Dizi bir kümedir. Aynı tipteki verilere tek bir isimle erişmek için kullanılır. Bir dizi bildirildikten sonra, dizinin bütün elemanları bellekte peşpeşe saklanır. Bu yüzden dizilere

Detaylı

Telefon Rehberi Uygulaması

Telefon Rehberi Uygulaması Sayfa1 Telefon Rehberi Uygulaması Uygulama, temel düzeyde, telefon rehberi üzerinedir. Kullanıcı, telefon rehberine eklediği her bir kayıt içi ad, soyad, ev telefonu ve üç adet cep telefonu bilgisi girebilmektedir.

Detaylı

Length: metin uzunluğunu yada diğer bir deyişle dizi elaman sayısını döndürür.

Length: metin uzunluğunu yada diğer bir deyişle dizi elaman sayısını döndürür. Programlama Temelleri Trim: metnin başındaki ve sonundaki boşlukları kaldırır. Trim( Selam ) Selam şeklinde çıkar Split: metin içinde ayırma işlemi yapar. Split( ) Metni boşluklarını diziye atar. oşluk

Detaylı

C++ Dilinde Bazı Temel Algoritmalar

C++ Dilinde Bazı Temel Algoritmalar C++ Dilinde Bazı Temel Algoritmalar Bazı eşyalar için her eve lazım derler. Az sonra bahsedeceğimiz algoritmalar da her kodcuya lazım cinsten. Sayının tek mi çift mi olduğuna karar veren programdan, çarpım

Detaylı

İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ

İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ AD SOYAD : TESLİM TARİHİ : OKUL NO : TESLİM SÜRESİ : 2 hafta Ödev No : 7 ****(ilk 3 soru çıktı üzerinde el

Detaylı

DİZİLER 5/4/2010. ENF-102 Jeoloji Giriş. Tek Boyutlu Diziler. Tek Boyutlu Diziler. Örnek. Örnek

DİZİLER 5/4/2010. ENF-102 Jeoloji Giriş. Tek Boyutlu Diziler. Tek Boyutlu Diziler. Örnek. Örnek Giriş DİZİLER Arrays Aynı isim altında, aynı türde birden fazla değer tutmak için kullanılan veri yapılarıdır (Data Structure). Dizi bir kümedir; aynı türde verilere tek bir isimle erişmek için kullanılır.

Detaylı

Yrd. Doç. Dr. Caner ÖZCAN

Yrd. Doç. Dr. Caner ÖZCAN Yrd. Doç. Dr. Caner ÖZCAN Hafıza Yapısı Bir değişken tanımlandığında arka planda bilgisayarın hafızasında bir konuma yerleştirilir. Hafıza küçük hücrelerden oluşmuş bir blok olarak düşünülebilir. Bir değişken

Detaylı

Diziler (Arrays) Çok Boyutlu Diziler

Diziler (Arrays) Çok Boyutlu Diziler Diziler (Arrays) Çok Boyutlu Diziler ÇOK BOYUTLU DİZİLER Birden fazla indis numarası ile elemanlarına ulaşılan dizilere çok boyutlu diziler denir. Bunlardan en sık kullanılanı çift boyutlu dizilerdir.

Detaylı

NESNEYE YÖNELİK PROGRAMLAMA

NESNEYE YÖNELİK PROGRAMLAMA NESNEYE YÖNELİK PROGRAMLAMA Metotlar Şu ana kadar yaptığımız örneklerde hep önceden hazırlanmış ReadLine(), WriteLine() vb. gibi metotları kullandık. Artık kendi metotlarımızı yapmanın zamanı geldi. Bilmem

Detaylı

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 3. Bölüm Veri Tipleri ve Değişkenler

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 3. Bölüm Veri Tipleri ve Değişkenler Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 3. Bölüm Veri Tipleri ve Değişkenler C Programlama Dr. Serkan DİŞLİTAŞ 3.1. Sabitler Sabitler, tanımlanmasıyla birlikte program içerisinde

Detaylı

İçerik. Temel Kavramlar. Nesne Nedir? 1. Nesne : Örnek. Nesne Nedir? 2. Geçen hafta: Bu hafta: BBS-515 Nesneye Yönelik Programlama

İçerik. Temel Kavramlar. Nesne Nedir? 1. Nesne : Örnek. Nesne Nedir? 2. Geçen hafta: Bu hafta: BBS-515 Nesneye Yönelik Programlama İçerik Temel Kavramlar BBS-515 Nesneye Yönelik Programlama Geçen hafta: Nesneye yönelik programlama Ne demektir, nasıl ortaya çıkmıştır? Nesneye yönelik dil olarak JAVA ve ilişkili kavramlar Bu hafta:

Detaylı

ALGORİTMA VE PROGRAMLAMA I

ALGORİTMA VE PROGRAMLAMA I ALGORİTMA VE PROGRAMLAMA I YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Diziler Dizi Nedir? Dizilerin Bildirimi Dizilere Başlangıç Değeri Verme Dizilerde Arama

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 Nesne Yönelimli Programlama BİM-222 2/II 1+0+2 2 3 Dersin Dili

Detaylı

C++ Operatörler (Operators)

C++ Operatörler (Operators) C++ Operatörler (Operators) Konular Operatörler o Aritmetiksel (Matematiksel) Operatörler o Karşılaştırma Operatörleri o Mantıksal Operatörler o Atama Operatörleri o Bit Düzeyinde Operatörler o Özel Amaçlı

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ı

HSancak Nesne Tabanlı Programlama I Ders Notları

HSancak Nesne Tabanlı Programlama I Ders Notları Konsol Uygulaması Oluşturma Konsol uygulaması oluşturmak için program açıldıktan sonra Create: Project ya da New Project seçeneği tıklanabilir. New Project penceresini açmak için farklı yollar da vardır.

Detaylı

Bir dizinin boyutları sabittir ve kullanılmadan önce belirlenmelidir. Dizi boyutunu belirlemek için başka bir değişkende kullanabilirsiniz.

Bir dizinin boyutları sabittir ve kullanılmadan önce belirlenmelidir. Dizi boyutunu belirlemek için başka bir değişkende kullanabilirsiniz. C# da Diziler Diziler için aynı tipteki verilerin tutulduğu bir koleksiyon diyebiliriz. Örneğin integer verinin bir yığın şeklinde tutulması için dizileri kullanırız. C# da diziler referans tipinde değişkenlerdendir.

Detaylı

Diziler İndisli Değişkenler

Diziler İndisli Değişkenler Diziler İndisli Değişkenler Aynı tür bilgileri (öğrenci isimleri, şehir isimleri, kapı numaraları, fakülteler vbg.) bellekte tutmak için kullanabileceğimiz listelere dizi adı verilir. Dizi kullanmanın

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 1: Giriş İçerik Bilgisayar Sistemleri Donanım Yazılım Programlama Program Geliştirme Nesne-tabanlı Programlama C++ Programlama Dili 2 Bilgisayar Sistemleri Kısaca,

Detaylı

MAK 1005 Bilgisayar Programlamaya Giriş C DİLİNE GİRİŞ. Prof. Dr. Necmettin Kaya

MAK 1005 Bilgisayar Programlamaya Giriş C DİLİNE GİRİŞ. Prof. Dr. Necmettin Kaya MAK 1005 Bilgisayar Programlamaya Giriş C DİLİNE GİRİŞ Prof. Dr. Necmettin Kaya C PROGRAMLAMA DİLİ ÖZELLİKLERİ C programlama dili, 1972 yılında Bell Labortuvarı nda Dennis Ritchie tarafından geliştirilmiştir.

Detaylı

BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER,

BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER, BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER, C++ İÇİN UFAK HATIRLATMALAR Değişken adları bir harf ile başlamalıdır. (a-z, A-Z). Değişken adı numara içerebilir.

Detaylı

Dizgiler. C dilinde karakter m şeklinde tek tırnak içerisinde yazılan ifadelerdir. Bu karakterlerin her biri aslında bir tamsayı ile ifade edilir.

Dizgiler. C dilinde karakter m şeklinde tek tırnak içerisinde yazılan ifadelerdir. Bu karakterlerin her biri aslında bir tamsayı ile ifade edilir. DİZGİLER (STRINGS) Dizgiler char tipli karakterlerin gruplanmş haline dizgi(string) denilir. Bazen katar ismide kullanılabilir. C dilinde karakter m şeklinde tek tırnak içerisinde yazılan ifadelerdir.

Detaylı

Pointer Kavramı. Veri Yapıları

Pointer Kavramı. Veri Yapıları Pointer Kavramı Veri Yapıları Pointer Kavramı- Pointer Nedir? Göstericiler, işaretçiler ya da pointer adı da verilmektedir. Gösterici (pointer); içerisinde bellek adresi tutan değişkenlerdir. Şu ana kadar

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 9: Sınıf İçerik Sınıf Tanımı Nesne Tanımı İkili Kapsam Çözme Operatörü UML ile Sınıfların Gösterimi 2 Sınıf kavramı, nesne-tabanlı programlamanın temelini oluşturur.

Detaylı

Bölüm 11. Soyut veri tipleri ve kapsülleme kavramları ISBN 0-321-49362-1

Bölüm 11. Soyut veri tipleri ve kapsülleme kavramları ISBN 0-321-49362-1 Bölüm 11 Soyut veri tipleri ve kapsülleme kavramları ISBN 0-321-49362-1 11. Bölüm konuları Soyutlama kavramı Veri soyutlamasına giriş Soyut veri tipleri için tasarım konuları Dil örnekleri Parametreli

Detaylı

FONKSİYONLAR. Gerçek hayattaki problemlerin çözümü için geliştirilen programlar çok büyük boyutlardadır.

FONKSİYONLAR. Gerçek hayattaki problemlerin çözümü için geliştirilen programlar çok büyük boyutlardadır. C PROGRAMLAMA FONKSİYONLAR Gerçek hayattaki problemlerin çözümü için geliştirilen programlar çok büyük boyutlardadır. Daha büyük programlar yazmanın en kolay yolu onları küçük parçalar halinde yazıp sonra

Detaylı

ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8

ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8 ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8 YZM 1105 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi 6. BÖLÜM 2 Çok Boyutlu Diziler Çok Boyutlu Dizi 3 Bir dizi aşağıdaki gibi bildirildiğinde

Detaylı

Standard Template Library

Standard Template Library Standard Template Library Uluslararası Bilgisayar Enstitüsü Ege Üniversitesi Ahmet Bilgili & Serkan Ergun STL ANSI/ISO Standard C++ ın içerdiği algoritmalar ANSI/ISO Standard C++ ın içerdiği algoritmalar

Detaylı

STRING (SÖZEL) İŞLEMLER. Yrd. Doç.Dr. Bülent Çobanoğlu

STRING (SÖZEL) İŞLEMLER. Yrd. Doç.Dr. Bülent Çobanoğlu STRING (SÖZEL) İŞLEMLER Yrd. Doç.Dr. Bülent Çobanoğlu String ve Karakter Tanımlama Tek bir karakter tanımlamak: char a; Bir karakter dizisi tanımlamak: char a[10]; Pointer kullanarak char *a= ali ; Pointer

Detaylı

Temel Kavramlar BBS-515 Nesneye Yönelik Programlama

Temel Kavramlar BBS-515 Nesneye Yönelik Programlama Temel Kavramlar BBS-515 Nesneye Yönelik Programlama Ders #2 (2 Kasım 2009) İçerikç Geçen hafta: Nesneye yönelik programlama Ne demektir, nasıl ortaya çıkmıştır? Nesneye yönelik dil olarak JAVA ve ilişkili

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 5: Fonksiyonlar İçerik Standart Kütüphane Fonksiyonları Kullanıcı Tarafından Tanımlanan Fonksiyonlar Fonksiyon Tanımı Fonksiyon Prototipi void Fonksiyonları Parametreli

Detaylı