DİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II

Benzer belgeler
C PROGRAMLAMA D İ L İ

ALGORİTMA VE PROGRAMLAMA I

ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8

Diziler. Dizi Tanımı Dizi Elemanlarına Değer Atama Diziler ve Göstergeler 2-Boyutlu Diziler

ALGORİTMA VE PROGRAMLAMA I

ALGORİTMA VE PROGRAMLAMA I

ALGORİTMA VE PROGRAMLAMA I

Programlama Dilleri 1. Ders 4: Diziler

Temel Bilgisayar Bilimleri Ders Notu #4-2. kısım

BİL1001 Bilgisayar Bilimlerine Giriş 1

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

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

Giriş. ENF102 Jeoloji

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

ALGORİTMA VE PROGRAMLAMA II

ALFASAYISAL BİLGİLER KARAKTER DİZİLERİ (STRING)

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

C de Detaylı Üs Alma Programı. C# Dilinde Metot Tanımlama ve Yazdırma

Özyineleme (Recursion)

Hafta 12 Karakter Tutan Diziler

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

scanf () Fonksiyonu Klavyeden veri okumak için kullanılır. Yapı olarak printf () fonksiyonu aynıdır. Kullanım biçimi:

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

ALGORİTMA VE PROGRAMLAMA II

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

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

STRİNG DİZİLER(KATARLAR)

BMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler

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

BMT 101 Algoritma ve Programlama I 6. Hafta. Yük. Müh. Köksal Gündoğdu 1

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

ALGORİTMA VE PROGRAMLAMA II

Dr. Fatih AY Tel: fatihay@fatihay.net

ALGORİTMA VE PROGRAMLAMA II

Yrd. Doç. Dr. Caner ÖZCAN

C++ Dersi: Nesne Tabanlı Programlama

BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ LABORATUARI

Diziler. Dizi Tanımı Dizi Elemanlarına Değer Atama Diziler ve Göstergeler 2-Boyutlu Diziler

C Programlama Dilininin Basit Yapıları

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

Pointer Kavramı. Veri Yapıları

Pointers (İşaretçiler)

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

enum bolumler{elektronik, insaat, bilgisayar, makine, gida};

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

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

Göstericiler (Pointers)

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

İstanbul Teknik Üniversitesi IEEE Öğrenci Kolu DİZİLER

BLM 111 ALGORİTMA VE PROGRAMLAMA I

Fonksiyonlar (Altprogram)

C Konsol Giriş Çıkış Fonksiyonları

ÇOK BOYUTLU DİZİLER VE DİNAMİK BELLEK YÖNETİMİ İLE İLGİLİ ÖRNEKLER

BLM 111 ALGORİTMA VE PROGRAMLAMA I

HSancak Nesne Tabanlı Programlama I Ders Notları

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

YZM 2105 Nesneye Yönelik Programlama

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

Diziler (Arrays) Çok Boyutlu Diziler

Yrd. Doç. Dr. Caner ÖZCAN

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.

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

Sınav tarihi : Süre : 60 dak.

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

Programlama Dilleri 1. Ders 5: Göstericiler

Programlama Dilleri. C Dili. Programlama Dilleri-ders08/ 1

Bölüm 6. Diziler (arrays) Temel kavramlar Tek boyutlu diziler Çok boyutlu diziler

Eastern Mediterranean University Faculty of Arts & Sciences -- Department Of Mathematics BİLG213 BİLGİSAYAR PROGRAMLAMAYA GİRİŞ

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri

Yrd. Doç. Dr. Caner ÖZCAN

Veri Yapıları Laboratuvarı

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

BİLG Dr. Mustafa T. Babagil 1

Genel Programlama II

BÖLÜM 5: TEMEL GİRİŞ/ÇIKIŞ FONKSİYONLARI

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

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

8. Bölüm DİZİLER. tip dizi_ismi[eleman_sayısı]; Bütün diziler 0 ile baţlar.

1 PROGRAMLAMAYA GİRİŞ

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

PROGRAMLAMAYA GİRİŞ DERS 2

Bölüm 8, Yrd. Doç. Dr. A. Kadir YALDIR PAÜ Bilgisayar Mühendisliği Bölümü BÖLÜM 8: DİZİLER

Dr. Fatih AY Tel: fatihay@fatihay.net

Programlama Dillerinde Kullanılan Veri Tipleri

Veri Yapıları. Amaçlar: Temel Veri Yapılarını Tanımlamalı Veri Yapılarını Veri Modeli ve Türlerini Öğreneceksiniz. İçindekiler:

Eln 1001 Bilgisayar Programlama I

BÖLÜM 9: POINTERLER (İŞARETÇİLER)

C Programlama Dilinde Değişkenler

C PROGRAMLAMA D İ L İ

JAVADA DİZİ İŞLEMLERİ

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

NESNEYE YÖNELİK PROGRAMLAMA

Diziler & Karakter Katarı (String)

Örnek1: #include <iostream> #include <string> using namespace std;

NESNE TABANLI PROGRAMLAMA Final Sınavı Cevapları

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

Nesne Tabanlı Programlama

mod ile açılacak olan dosyanın ne amaçla açılacağı belirlenir. Bunlar:

BLM111 Programlama Dilleri I. Hafta 10 Diziler. Yrd. Doç. Dr. Caner ÖZCAN

Transkript:

DİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II

DİZİLER Dizi, aynı tipteki verilere tek bir isimle erişmek için kullanılan bir kümedir. Bir dizi bildirildikten sonra, dizinin bütün elemanları bellekte peşpeşe saklanır [1]. Bu yüzden dizilere tek bir isim altında çok sayıda değişken içeren bellek bölgesi de denir. Buna göre, bir diziyi dizi yapan iki temel özellik vardır [2]: dizi elemanların bellekte (program çalıştığı sürece) sürekli biçimde bulunması dizi elemanların aynı türden değişkenler olması

DİZİLERİN BİLDİRİMİ Bir dizinin bildirim işleminin genel biçimi söyledir: veritipi dizi_adı[eleman_sayısı]; Örneğin, 5 elemanlı, kütle verilerini bellekte tutmak için, kutle dizisi şöyle tanımlanabilir: int kutle[5]; veri_tipi dizi_adı eleman_sayısı Bellek Görünümü 0 1 2 3 4 kutle

DİZİLERİN BİLDİRİMİ Bir dizinin bildirim işleminin genel biçimi söyledir: veritipi dizi_adı[eleman_sayısı]; Örneğin, 5 elemanlı, kütle verilerini bellekte tutmak için, kutle dizisi şöyle tanımlanabilir: int kutle[5]; Bu dizinin elemanlarına bir değer atama işlemi şöyle yapılabilir: kutle[0] = 8 kutle[1] = 3 kutle[2] = 9 kutle[3] = 4 kutle[4] = 5 0 1 2 3 4 8 3 9 4 5

DİZİLERİN BİLDİRİMİ

DİZİLERİN BİLDİRİMİ Bildirim sırasında dizilerin eleman sayısı tamsayı türünden bir sabit ifadesiyle belirtilmesi zorunludur. Örneğin: int n = 100; int a[n]; şeklindeki tanımlama, dizi uzunluğunun değişken (n) ile belirtilmesi nedeniyle geçersizdir. Bunun yerine, dizilerin eleman sayısı aşağıdaki gibi sembolik sabitlerle belirtmek mümkündür. #define n 100... int a[n];

DİZİLERİN BİLDİRİMİ Bir dizinin bellekte kapladığı alanın bayt cinsinden karşılığı sizeof operatörü ile öğrenilebilir. int a[5], b, c;... b = sizeof(a); /* bellekte kapladığı alan: b = 4*5 = 20 bayt */ c = sizeof(a) / sizeof(int); /* Dizinin boyutu : c = 20/4 = 5 */

DİZİLERE BAŞLANGIÇ DEĞERİ VERME Bir diziye başlangıç değerleri aşağıdaki gibi kısa formda atanabilir: float kutle[5]= { 8.471, 3.683, 9.107, 4.739, 3.918 }; int maliyet[3] = { 25, 72, 94 }; double a[4] = { 10.0, 5.2, 7.5, 0.0};

DİZİLERE BAŞLANGIÇ DEĞERİ VERME Küme parantezlerinin sonlandırıcı ; karakteri ile bittiğine dikkat ediniz. Bir dizinin uzunluğu belirtilmeden de başlangıç değeri atamak mümkündür. int a[] = { 100, 200, 300, 400 }; float v[] = { 9.8, 11.0, 7.5, 0.0, 12.5}; Derleyici bu şekilde bir atama ile karşılaştığında, küme parantezi içindeki eleman sayısını hesaplar ve dizinin o uzunlukta açıldığını varsayar. Yukarıdaki örnekte, a dizisinin 4, v dizisinin 5 elemanlı olduğu varsayılır.

DİZİLERDE YAZIRMA/OKUMA cout ve cin fonksiyonları bir dizinin okunması ve yazdırılması için de kullanılır. Örneğin bir A dizisinin aşağıdaki gibi bildirildiğini varsayalım: int A[10]; Bu dizinin elemanlarını klavyeden okumak için: for(i=0; i<10; i++) cin>>a[i]; daha sonra bu değerlerini ekrana yazmak için: for(i=0;i<10;i++) cout<<a[i];

DİZİ ELEMALARINA DİREK ULAŞIM int n[10]; cin>>n[3]; cout<<n[3];

ÇOK BOYUTLU DİZİLER Her elemanı bir boyutlu dizi olan yapılara çok boyutlu diziler denir. Bu diziler matris veya tablo olarak da bilinen 2-boyutlu dizilerdir. veri_tipi dizi_ismi[satır_buyuklugu][sütun_buyuklugu]

TANIMLAMA SIRASINDA DEĞER ATAMA satır yönünde atama

TANIMLAMA SONRASINDA DEĞER

ÇOK BOYUTLU DİZİLER VE FONKSİYONLAR Dizi tanımı int a[2][3]={1,2,3,4,5,6}; Fonksiyon Çağırma f1(,a, ); Çağırılan fonksiyon f1(,int b[][3], );

DİZGİLER «Merhaba» «Bu bir dizgi» «B» 7 karakter içeren bir dizgi 12 karakter içeren bir dizgi 1 karakter içeren bir dizgi Boş dizgi

DİZGİ TANIMI char dizi_adi[uzunluk]; char kelime[11]; kelime kelime[0]= A kelime 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10 A

DİZGİ TANIMI kelime[1]= l ; kelime[2]= i ; kelime[3]= \0 ; kelime 0 1 2 3 4 5 6 7 8 9 10 A l i \0 Bir dizginin sonu boş karakter (NULL) olan \0 karakteri ile biter.

DİZGİ GİRDİ İŞLEMLERİ cin>> fonksiyonu girilen değerler içinde boşluk veya enter işareti görünceye kadar okuma işlemine devam eder. Bilgisayar Bilge Sor. Bil B İ L G İ S Y A R \0 B İ L G E \0 B İ L \0

DİZGİ GİRDİ İŞLEMLERİ gets() fonksiyonu enter işareti görünceye kadar okuma işlemine devam eder ve okuduğu değerin sonuna boş karakterini \0 otomatik olarak ekler. gets(dizgi_adi) iyi misin? i y i m i s i n? \0

DİZGİ ÇIKTI İŞLEMLERİ puts() fonksiyonu ekranan dizginin bastrılmasını sağlar ve daha sonra yeni satıra otomatik olarak geçer. puts (dizgi_adı); Örnek: char dizgi1[15]= merhaba ; char dizgi1[]="merhaba"; char dizgi2[]="nasilsin?"; puts(dizgi1); puts(dizgi2); Çıktı: merhaba nasilsin?

DİZGİ FONKSİYONLARI strlen() fonksiyonu bir dizginin içindeki karakter sayısını bulmak için kullanılır. strlen (dizgi_adı); Örnek: int uzunluk; char dizgi[10] = Ali uzunluk = strlen(dizgi); 3

DİZGİ FONKSİYONLARI strcpy() fonksiyonu dizgi kopyalama fonksiyonudur. strcpy (dizgi1_adı, dizgi2_adı);

DİZGİ FONKSİYONLARI strncpy() fonksiyonu dizgi1 içindeki ilk n karakteri dizgi2 içerisine kopyalama fonksiyonudur. strncpy (dizgi1_adı, dizgi2_adı, n);

DİZGİ FONKSİYONLARI strncat() fonksiyonu dizgi1 in sonuna dizgi2 nin ilk n karakterinin yapıştırılmasını sağlar. strncat (dizgi1_adı, dizgi2_adı, n); Örnek: char dizgi1[15]="iyi gunler "; char dizgi2[15]= Nasilsiniz? ; strncat (dizgi1, dizgi2, 5); cout<<dizgi1; cout<<dizgi2; Çıktı: dizgi 1: iyi gunler Nasil dizgi 2: Nasilsiniz?

QUİZ

Quiz-1 Soru 1 Soru 2 3 öğrenciye ait 3 adet dersin not bilgisini tutan bir dizi içerisinden derslerin sınıf ortalamalarını hesap eden C++ kodu oluşturunuz. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Şekli oluşturacak C++ kodunu oluşturunuz

CEVAP Cevap-1 Cevap-2

Quiz-1 Soru 3 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Şekli oluşturacak C++ kodunu oluşturunuz

CEVAP Cevap-3