BİLG Dr. Mustafa T. Babagil 1
|
|
- Chagatai İnanç
- 8 yıl önce
- İzleme sayısı:
Transkript
1 BİLG Dr. Mustafa T. Babagil 1
2 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) tanımı idi. Şimdi artık bu temel bilgi tipleri üzerine kendi tanımlayacağımız bilgi tiplerini de ekleyebiliriz. Aslında yapacağımız, bir grup değişkeni tek bir değişkenmiş gibi tanımlamaktır. Bu amaç için de C++ programlama dili bize struct yapısını sunmaktadır Dr. Mustafa T. Babagil 2
3 STRUCT yapısı Bilgi tiplerini birleştirerek yeni bilgi tipleri oluşturmak için struct yapısını kullanacağız. Bu yapı sayesinde C++ birden fazla değişken türünü gruplayarak kullanma olanağı sunar. Genel yapısı; struct <stuctisim> ; değişkentipi1 değişkentipi2... alan1; alan2; Dr. Mustafa T. Babagil 3
4 struct yapısı örneği!.. struct ogrenci int ogrencinumarasi; string isim; short okuldakikacinciyili; double gpa; double cgpa; ; Yapı ismi Yapı elemanları ; her yapının sonunda mutlaka olmalıdır! Dr. Mustafa T. Babagil 4
5 Struct yapısı yalnız başına bellekte bir yer tutamaz. Struct yapısı ile oluşturmuş olduğunuz yeni yapının ismini kullanarak bellekte bir yer tutabilirsiniz. Bundan dolayı, struct yapısı kullanarak oluşturmuş olduğunuz yeni yapının ismini amacınıza göre adlandırınız ve bu ismi bir değişken tipi gibi kullanınız. Bir sonraki salytta bir örnek olarak, öğrencitipi yapısı olarak yeni bir yapı oluşturuldu. Bu yapıda bir dizi bilgi tutulması öngörülmüştür. Birden fazla öğrenci için bunu yapıyoruz ve sonuç olarak da sadece en büyük öğrenci numaralı öğrencinin bilgisini ekrana çıktı olarak Dr. aldık... Mustafa T. Babagil 5
6 #include <iostream.h> struct ogrencitipi char isim[20]; double ogrno; char cinsiyet; char bolum[20]; float GPA; float CGPA; double telno; char adres[20]; ; const max=10; int main() ogrencitipi ogrenci[max]; int i,yer; double enbuyuknumara; // 5 ogrenci için bilgi girisi yapalim ve bu girilen bilgileri ekrana toplu halde yansitalim. for (i=0;i<5;i++) cout << "isim gir--->"; cin>> ogrenci[i].isim; cout << "ogrenci no gir--->"; cin>> ogrenci[i].ogrno; cout << "cinsiyet gir E/K--->"; cin>> ogrenci[i].cinsiyet; cout << "bolum gir--->"; cin>> ogrenci[i].bolum; cout << "GPA gir--->"; cin>> ogrenci[i].gpa; cout << "CGPA gir--->"; cin>> ogrenci[i].cgpa; cout << "telno gir--->"; cin>> ogrenci[i].telno; cout << "Adres gir---> \n"; cin>> ogrenci[i].adres; Dr. Mustafa T. Babagil 6
7 enbuyuknumara=ogrenci[0].ogrno;i=1; while (i < 5 ) if (enbuyuknumara <= ogrenci[i].ogrno) enbuyuknumara=ogrenci[i].ogrno; yer=i; i++; cout << "en buyuk ogrenci numarali ogrenci bilgileri \n"; cout << "isim --->" << ogrenci[yer].isim << "\n"; cout << "ogrenci no --->" << ogrenci[yer].ogrno << "\n"; cout << "cinsiyet --->" << ogrenci[yer].cinsiyet << "\n"; cout << "bolum --->" << ogrenci[yer].bolum << "\n"; cout << "GPA --->" << ogrenci[yer].gpa << "\n"; cout << "CGPA --->" << ogrenci[yer].cgpa << "\n"; cout << "telno --->" << ogrenci[yer].telno << "\n"; cout << "Adres --->" << ogrenci[yer].adres << "\n"; return 0; Dr. Mustafa T. Babagil 7
8 Çalışma 1 Struct yapısını kullanarak kendinize ait yeni bir yapı oluşturunuz. En az 4 alan ve 4 çeşit değişken tipi içersin. Bu değişken tiplerinden birisi sayısal bir değişken olsun. En az 10 tane yeni yapı ile ilgili bilgi tutacak bir dizi tanımlayınız. Program çalıştığı zaman bilgi girişlerini yapınız ve çıktı olarak da bu girilen yeni yapıdaki bilgilerinizi sayısal alan dikkate alarak sıralayıp (büyükten küçüğe doğu) ekrana yansıtsın Dr. Mustafa T. Babagil 8
9 ÖDEV 1 Bir marketteki 50 ürün için, ürün kodu, ürün ismi, ürün fiyatı, ürünün stok miktarı ve ürünün cinsi(temizlik yada gıda olarak adlandırılabilir.) olmak üzere bir yeni yapı tanımlayınız ve bunu bir dizi ile tanımlayınız. Dizi boyutu 50 olsun. Tüm alanlara bilgi girişi yapılsın ve ürün koduna göre sıralama(ister küçükten büyüğe, ister büyükten küçüğe) yapılarak çıktısını ekrana yazdırın.
10 Fonksiyonlarda Struct yapısının kullanılması ve Uygulamaları Fonksiyonlarda daha önceden de anlatmış olduğum gibi, main modülünden yazmış olduğunuz yeni fonksiyona bilgi gönderilmesi işlemi yapılabildiği gibi, yazılan yeni fonksiyon modülüne hiç bilgi gönderilmeden de bu modülü kullanabileceğimizi belirtmiştim Dr. Mustafa T. Babagil 10
11 Fonksiyon kullanımı ile ilgili bilinmesi gereken 2 temel şey ise, Fonksiyona bilgi gönderilip (değişken göndermek), o bilgiyi kullanarak fonksiyonun işlem yapmasını sağlamak; (pass by value!..) Fonksiyona gönderilen değişken üzerinden işlem yapıp, o değişkenin değerinin değişmesini sağlayan yapıdaki fonksiyon tanımlamalarıdır. (pass by reference!..) Bu yapıdaki fonksiyonları kullanırken sonuç olarak ne istediğimize dikkat etmeliyiz ve bu doğrultuda fonksiyonları kullanmalıyız.
12 Bulunduğumuz seviye itibarı ile şu anda 1. tipteki fonksiyon kullanımı ile ilgili uygulamalar yapacağız. Yeni bir fonksiyon yazıp bilgi girişi yaptırıp, sıralama işlemi yapan programımızı hatırlıyorsunuz. Bununla ilgili fonksiyonlu bir örnek aşağıda verilmiştir. Herkes bu programı yazıp, F7 tuşu ile adım adım denemelidir.
13 #include <iostream.h> struct ogrencitipi char isim[20]; double ogrno; char cinsiyet; char bolum[20]; float GPA; float CGPA; double telno; char adres[20]; ; const max=2; ogrencitipi ogrenci[max]; // GLOBAL DEGISKEN TANIMI!.. int i,yer; // BU DEGISKENLER TUM PROGRAM ICIN 1 DEFA TANIMLANIR!.. double enbuyuknumara; void bilgigiris(); void enbuyuk_numarali_ogrenciyi_bul(); void enbuyuk_numarali_ogrenciyi_ekrana_yansit();
14 void bilgigiris() // 5 ogrenci için bilgi girisi yapalim ve bu girilen bilgileri ekrana toplu halde yansitalim. for (i=0;i<max;i++) cout << "isim gir--->"; cin>> ogrenci[i].isim; cout << "ogrenci no gir--->"; cin>> ogrenci[i].ogrno; cout << "cinsiyet gir E/K--->"; cin>> ogrenci[i].cinsiyet; cout << "bolum gir--->"; cin>> ogrenci[i].bolum; cout << "GPA gir--->"; cin>> ogrenci[i].gpa; cout << "CGPA gir--->"; cin>> ogrenci[i].cgpa; cout << "telno gir--->"; cin>> ogrenci[i].telno; cout << "Adres gir---> \n"; cin>> ogrenci[i].adres; void enbuyuk_numarali_ogrenciyi_bul() enbuyuknumara=ogrenci[0].ogrno;i=1; while (i < max ) if (enbuyuknumara <= ogrenci[i].ogrno) enbuyuknumara=ogrenci[i].ogrno; yer=i; i++;
15 void enbuyuk_numarali_ogrenciyi_ekrana_yansit() cout << "en buyuk ogrenci numarali ogrenci bilgileri \n"; cout << "isim --->" << ogrenci[yer].isim << "\n"; cout << "ogrenci no --->" << ogrenci[yer].ogrno << "\n"; cout << "cinsiyet --->" << ogrenci[yer].cinsiyet << "\n"; cout << "bolum --->" << ogrenci[yer].bolum << "\n"; cout << "GPA --->" << ogrenci[yer].gpa << "\n"; cout << "CGPA --->" << ogrenci[yer].cgpa << "\n"; cout << "telno --->" << ogrenci[yer].telno << "\n"; cout << "Adres --->" << ogrenci[yer].adres << "\n"; int main() bilgigiris(); enbuyuk_numarali_ogrenciyi_bul(); enbuyuk_numarali_ogrenciyi_ekrana_yansit(); return 0;
16 Yukarıda verilmiş olan en temel fonksiyon kullanımı ile ilgili uygulama programını değiştirerek fonksiyon kullanımında bir adım daha ileriye gidelim. Yeni uygulamalarımızda hazırlamış olduğumuz modüller içerisine değişken(ler) gönderip bu değişkenler ile işlem yapılmasını sağlayacağız. Buna benzer fonksiyon kullanımlarını BİLG213 dersimizde de yapmıştık. Şimdi bizim tanımlamış olduğumuz yapıları ( struct ile tanımlanmış) da fonksiyona gönderelim.
17 Çalışma sorusu olarak VERİLMİŞ OLAN PROGRAMINIZIN KODU AŞAĞIDAKİ SLAYTLARDA DETAYLI BİR ŞEKİLDE AÇIKLANMIŞTIR
18 #include <iostream.h> struct ogrencitipi char isim[20]; double ogrno; char cinsiyet; char bolum[20]; float GPA; float CGPA; double telno; char adres[20]; ; Yeni tanımladığımız ogrencitipi yapısı const max=3; // GLOBAL DEGISKEN TANIMI!.. // BU DEGISKENLER TUM PROGRAM ICIN 1 DEFA TANIMLANIR!.. ogrencitipi ogrenci[max], gecici; int i,yer,k; double enbuyuknumara,enkucuknumara,numara; char secim; char bulundu; Global değişken tanımları void bilgigiris(); void enbuyuk_numarali_ogrenciyi_bul(); void ogrenciyi_ekrana_yansit(); void enkucuk_numarali_ogrenciyi_bul(); void arama_yap(); void kucuk_buyuk_sirala(); void buyuk_kucuk_sirala(); Fonksiyonların prototiplerinin tanımlandığı yer.
19 void bilgigiris() // max ogrenci için bilgi girisi yapalim ve bu girilen bilgileri ekrana toplu halde yansitalim. for (i=0;i<max;i++) cout << "isim gir--->"; cin>> ogrenci[i].isim; cout << "ogrenci no gir--->"; cin>> ogrenci[i].ogrno; cout << "cinsiyet gir E/K--->"; cin>> ogrenci[i].cinsiyet; cout << "bolum gir--->"; cin>> ogrenci[i].bolum; cout << "GPA gir--->"; cin>> ogrenci[i].gpa; cout << "CGPA gir--->"; cin>> ogrenci[i].cgpa; cout << "telno gir--->"; cin>> ogrenci[i].telno; cout << "Adres gir---> "; cin>> ogrenci[i].adres;cout <<"\n"; void enbuyuk_numarali_ogrenciyi_bul() enbuyuknumara=ogrenci[0].ogrno;i=1; yer=0; while (i < max ) if (enbuyuknumara <= ogrenci[i].ogrno) enbuyuknumara=ogrenci[i].ogrno; yer=i; i++; Bilgi giriş modülü En büyük numaralı öğrenciyi bulan modül
20 void enkucuk_numarali_ogrenciyi_bul() enkucuknumara=ogrenci[0].ogrno;i=1; yer=0; while (i < max ) if (enkucuknumara >= ogrenci[i].ogrno) enkucuknumara=ogrenci[i].ogrno; yer=i; i++; En küçük numaralı ogrenciyi bulan modül void arama_yap() cout << " bir numara gir ----> "; cin>> numara; i=0; bulundu='y'; while (i < max ) if (numara == ogrenci[i].ogrno) bulundu='d'; yer=i; i++; Girilen bir numara için arama yapar ve bulunan pozisyonu yer değişkeni ile tutar.
21 void buyuk_kucuk_sirala() for (i=1;i<max;i++) k=i; while ((ogrenci[k].ogrno>ogrenci[k-1].ogrno) && (k>0)) gecici=ogrenci[k]; ogrenci[k]=ogrenci[k-1]; ogrenci[k-1]=gecici; k--; for(yer=0;yer<max;yer++) cout << "ogrenci bilgileri \n"; cout << "isim --->" << ogrenci[yer].isim << "\n"; cout << "ogrenci no --->" << ogrenci[yer].ogrno << "\n"; cout << "cinsiyet --->" << ogrenci[yer].cinsiyet << "\n"; cout << "bolum --->" << ogrenci[yer].bolum << "\n"; cout << "GPA --->" << ogrenci[yer].gpa << "\n"; cout << "CGPA --->" << ogrenci[yer].cgpa << "\n"; cout << "telno --->" << ogrenci[yer].telno << "\n"; cout << "Adres --->" << ogrenci[yer].adres << "\n"; Girilen bilgileri, Ogrenci numarasına göre küçükten büyüğe sıralayan modül
22 void kucuk_buyuk_sirala() for (i=max-1;i>0;i--) k=i; while ((ogrenci[k].ogrno<ogrenci[k-1].ogrno) && (k<=(max-1))) gecici=ogrenci[k]; ogrenci[k]=ogrenci[k-1]; ogrenci[k-1]=gecici; k++; for(yer=0;yer<max;yer++) cout << "ogrenci bilgileri \n"; cout << "isim --->" << ogrenci[yer].isim << "\n"; cout << "ogrenci no --->" << ogrenci[yer].ogrno << "\n"; cout << "cinsiyet --->" << ogrenci[yer].cinsiyet << "\n"; cout << "bolum --->" << ogrenci[yer].bolum << "\n"; cout << "GPA --->" << ogrenci[yer].gpa << "\n"; cout << "CGPA --->" << ogrenci[yer].cgpa << "\n"; cout << "telno --->" << ogrenci[yer].telno << "\n"; cout << "Adres --->" << ogrenci[yer].adres << "\n"; Girilen bilgileri, Ogrenci numarasına göre büyükten küçüğe sıralayan modül.
23 void ogrenciyi_ekrana_yansit() cout << "ogrenci bilgileri \n"; cout << "isim --->" << ogrenci[yer].isim << "\n"; cout << "ogrenci no --->" << ogrenci[yer].ogrno << "\n"; cout << "cinsiyet --->" << ogrenci[yer].cinsiyet << "\n"; cout << "bolum --->" << ogrenci[yer].bolum << "\n"; cout << "GPA --->" << ogrenci[yer].gpa << "\n"; cout << "CGPA --->" << ogrenci[yer].cgpa << "\n"; cout << "telno --->" << ogrenci[yer].telno << "\n"; cout << "Adres --->" << ogrenci[yer].adres << "\n"; Ogrenci yapısındaki herhangi bir girilmiş bilgiyi ekrana yansıtır.
24 int main() while (secim!= '8') cout << " bilgi girisi icin > 1"<<"\n"; cout << " en buyuk numarali ogrenci > 2"<<"\n"; cout << " en kucuk numarali ogrenci > 3"<<"\n"; cout << " ekrana yansitmak icin > 4"<<"\n"; cout << " arama yapmak icin > 5"<<"\n"; cout << " kucukten buyuge sirala > 6"<<"\n"; cout << " buyukten kucuge sirala > 7"<<"\n"; cout << " cikis icin > 8"<<"\n"; cout << " isleminizi seciniz --->"; cin >> secim; Ekrana bir menü yansıtır. Bu menü her seçenek sonrasında ekrana tekrardan gelir. switch (secim) case'1': bilgigiris(); break; case'2': enbuyuk_numarali_ogrenciyi_bul();break; case'3': enkucuk_numarali_ogrenciyi_bul();break; case'4': ogrenciyi_ekrana_yansit();break; case'5': arama_yap();if (bulundu=='y') cout <<" bulunamadi!.."<<"\n";break; case'6': kucuk_buyuk_sirala();break; case'7': buyuk_kucuk_sirala();break; return 0; Menü seçeneğine göre, yapılması gereken modüle yönlendirilir. SWITCH kullanımına dikkat ediniz.
25 Fonksiyonlara Struct ile tanımlanmış yeni yapıların gönderilmesi Fonksiyonlar içerisine C++ ın kendi değişkenlerini göndermeyi daha önce yapmıştık. Şimdi fonksiyonlar içerisine kendi tanımlamış olduğumuz yapıları gönderip, yazmış olduğumuz yeni modül ile işlem yaptıracağız. Aşağıdaki slaytlarda bilgi girişi için modül yazılmıştır. İnceleyiniz.
26 #include <iostream.h> struct ogrencitipi char isim[20]; double ogrno; char cinsiyet; char bolum[20]; float GPA; float CGPA; double telno; char adres[20]; ; const max=3; ogrencitipi ogrenciler[max]; // GLOBAL DEGISKEN TANIMI!.. int i; // BU DEGISKENLER TUM PROGRAM ICIN 1 DEFA TANIMLANIR!.. char secim; void bilgigiris(ogrencitipi ogrenci); void ogrenciyi_ekrana_yansit(ogrencitipi ogrenci[]);
27 void bilgigiris(ogrencitipi ogrenci) int i; for (i=0;i<max;i++) cout << "isim gir--->"; cin>> ogrenci.isim; cout << "ogrenci no gir--->"; cin>> ogrenci.ogrno; cout << "cinsiyet gir E/K--->"; cin>> ogrenci.cinsiyet; cout << "bolum gir--->"; cin>> ogrenci.bolum; cout << "GPA gir--->"; cin>> ogrenci.gpa; cout << "CGPA gir--->"; cin>> ogrenci.cgpa; cout << "telno gir--->"; cin>> ogrenci.telno; cout << "Adres gir---> "; cin>> ogrenci.adres;cout <<"\n"; ogrenciler[i]=ogrenci; void ogrenciyi_ekrana_yansit(ogrencitipi ogrenci[max]) for (i=0;i<max;i++) cout << "ogrenci bilgileri \n"; cout << "isim --->" << ogrenci[i].isim << "\n"; cout << "ogrenci no --->" << ogrenci[i].ogrno << "\n"; cout << "cinsiyet --->" << ogrenci[i].cinsiyet << "\n"; cout << "bolum --->" << ogrenci[i].bolum << "\n"; cout << "GPA --->" << ogrenci[i].gpa << "\n"; cout << "CGPA --->" << ogrenci[i].cgpa << "\n"; cout << "telno --->" << ogrenci[i].telno << "\n"; cout << "Adres --->" << ogrenci[i].adres << "\n";
28 int main() secim='0'; while (secim!= '3') cout << " bilgi girisi icin > 1"<<"\n"; cout << " ekrana yansitmak icin > 2"<<"\n"; cout << " cikis icin > 3"<<"\n"; cout << " isleminizi seciniz --->"; cin >> secim; switch (secim) case'1': bilgigiris(ogrenciler[1]); break; case'2': ogrenciyi_ekrana_yansit(ogrenciler);break; return 0;
29 Dosya opersyonları (File operations) fstream header kütüğünü eklemek gerekir. ifstream bilgi giriş dosyaları tanımlamak için. ofstream bilgi çıkış dosyaları tanımlamak için. fstream hem bilgi giriş-hem bilgi çıkış dosyaları tanımlamak için kullanılır.
30 << dosyaya yazmak için kullanılır >> dosyadan okumak için kullanılır eof komutu ise giriş dosyası sonunu kontrol etmek için kullanılan bir hazır fonksiyondur. open komutu ile bazı mode lar kullanılmalı örnek mode lar: ios::in giriş (input) ios::out çıkış (output) open çağrıldığı zaman bu mode lar birlikte kullanılabilir: dfile.open("class.txt", ios::in ios::out);
31 // 10 sayıyı dosyalar arasında kopyalar // dosyayı açar fstream girisdosyasi("input.txt", ios::in); fstream cikisdosyasi("output.txt", ios::out); int sayi; for (int i = 1; i <= 10; i++) girisdosyasi >> sayi;// dosyalari kullanir cikisdosyasi << sayi; girisdosyasi.close(); // dosyalari kapatir cikisdosyasi.close();
32 Kabuledilen Dosya Açma Mode ları ifstream: Sadece giriş için dosya açılır dosya yazılabilir mode da değildir open, dosya bulunamazsa başarısız olur ofstream: Sadece çıkış için dosya açılır. Dosya okunabilir değildir. Dosya bulunamazsa, dosya yaratılır. Eğer dosya zaten varsa, dosya içeriği silinir.
33 Örnek File (Dosya, Kütük) Uygulaması #include<iostream.h> #include<iomanip.h> #include<fstream.h> int main() fstream fl1; İnt num; int i; fl1.open("sayidosya.txt", ios::out); num=2; for (i=0;i<10;i++) fl1 << num*i << endl; fl1.close (); return 0; Yandaki Program kodu, sayidosya.txt adında bir text (düz yazı) kütüğü yaratarak içerisine, 0,1,2,3,4,5,6,7,8 ve 9 sayılarının 2 ile çarpımlarını yazmaktadır. Sonra da bu dosyayı yazma işlemini, dosyayı kapatarak bitiriyor.
34 Örnek File (Dosya, Kütük) Uygulaması #include<iostream.h> #include<iomanip.h> #include<fstream.h> int main() fstream fl1,fl2; double num; int i; fl1.open("c:\sayidosya.txt", ios::in); fl2.open("c:\kopyala.txt", ios::out); for (i=0;i<10;i++) fl1 >> num; fl2 << num << endl; fl1.close (); return 0; Yandaki Program kodu, sayidosya.txt adında, daha önce yaratılmış ve içerisine bilgi yazılmış bir text (düz yazı) kütüğünü açarak içerisindeki bilgileri tek tek okuyup yeni dosyaya kopyala.txt ye aktarmaktadır. Sonuç olarak ise 2 tane ayni dosya olacaktır.
35 Asağıdaki kütük bizim tarafımızdan yaratılmış (yazılmış ve kaydedilmiş) bir kütüktür. Kütük ismi ise yine bizim uygun gördüğümüz bir isim ile kaydedilmiştir. Bu kütük istediğiniz bir düz editor yardımı ile hazırlanabileceği gibi, C++ derleyicisinin editörü ile de hazırlanabilir. Hatırlayacağınız gibi, Lab dersimizde birlikte hazırlamış olduğumuz kütüğü C++ editörü ile hazırlamıştık. Kütük adı: isimler.txt
36 Aşağıdakidaki programı birlikte geliştirmiştik. Gereken açıklamaları birlikte yapalım. #include<iostream.h> #include<iomanip.h> #include<fstream.h> int main() fstream fl1; double num; int vz1, vz2, final; float ortalama; int i; // kütük değişkeni // Kütükteki öğrenci numarasının okutulmasında kullanılacak. // Kütükteki sınav notlarını okutmak için kullanılacak değişkenler // vz1, vz2 ve final değişkenleri yardımı ile hesaplama yapacağımız ortalama değişkeni tanımı. // döngü için kullanılacak olan tam sayı değişkeni. fl1.open("isimler.txt", ios::in); // dosya değişkeninin isimler.txt kütüğü için tanımlanıp, okutulmak için açılması. for (i=0;i<4;i++) fl1 >> num; fl1 >> vz1; fl1 >> vz2; fl1 >> final; // dosya değişkeni ile öğrenci numarasının dosyadan okunması // vize 1 notunun okutulması // vize 2 notunun okutulması // final notunun okutulması ortalama=0.3*vz1+0.3*vz2+0.4*final; // Ortalamanın hesaplanması. cout << num << " " << ortalama << " \n"; // ekrana öğrenci numarasının ve ortalamanın yansıtılması fl1.close (); // dosyanın kapatılması. return 0;
37 Şimdi de Yeni bir kütüğe hesaplamış olduğumuz ortalamaları, ve öğrenci numaralarını yazdıralım. #include<iostream.h> #include<iomanip.h> #include<fstream.h> int main() fstream fl1,fl2; // kütük değişkenleri double num; // Kütükteki öğrenci numarasının okutulmasında kullanılacak. int vz1, vz2, final; // Kütükteki sınav notlarını okutmak için kullanılacak değişkenler float ortalama; // vz1, vz2 ve final değişkenleri yardımı ile hesaplama yapacağımız ortalama değişkeni tanımı. int i; // döngü için kullanılacak olan tam sayı değişkeni. fl1.open("isimler.txt", ios::in); // dosya değişkeninin isimler.txt kütüğü için tanımlanıp, okutulmak için açılması. fl2.open("ortalama.txt", ios::out); // dosya değişkeninin ortalama.txt kütüğü için tanımlanıp, yazdırılmak için açılması (yaratılması). for (i=0;i<4;i++) fl1 >> num; // dosya değişkeni ile öğrenci numarasının dosyadan okunması fl1 >> vz1; // vize 1 notunun okutulması fl1 >> vz2; // vize 2 notunun okutulması fl1 >> final; // final notunun okutulması ortalama=0.3*vz1+0.3*vz2+0.4*final; // Ortalamanın hesaplanması. fl2 << num << " " << ortalama << endl; // Yeni dosyaya, (ortalama.txt) öğrenci numarası ve ortalamaların yazdırılması!.. cout << num << " " << ortalama << " \n"; // ekrana öğrenci numarasının ve ortalamanın yansıtılması fl1.close (); fl2.close (); return 0; // dosyaların kapatılması.
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ıEastern Mediterranean University Faculty of Arts & Sciences -- Department Of Mathematics BİLG213 BİLGİSAYAR PROGRAMLAMAYA GİRİŞ
Eastern Mediterranean University Faculty of Arts & Sciences -- Department Of Mathematics BİLG213 BİLGİSAYAR PROGRAMLAMAYA GİRİŞ DÖNEM SONU SINAVI GÜZ 2009-2010 13 Ocak 2010, Sınav Süresi: 120 dakika. İsim
Detaylışeklinde tanımlanmıştır. O halde, dosyaları daha önceki bilgilerimizi kullanarak FILE *Dosya1, *Dosya2;
Dosya İşlemleri Nedir? Programlarınızı girdi (input) olarak aldığı verileri bir text dosyasında yada word dosyasında vb. saklamasıdır. Artık C programınızın yaratıp içine veriler koyacağı text dosyasını
Detaylı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ı10. DOSYA GİRİŞ ÇIKIŞ FONKSİYONLARI
10. DOSYA GİRİŞ ÇIKIŞ FONKSİYONLARI İkincil bellekte tanımlanmış bölgelere dosya denir. Her dosyanın bir ismi vardır. Ancak dosyaların isimlendirme kuralları sistemden sisteme göre değişebilmektedir. Dosya
DetaylıMetin Dosyaları. Metin Dosyaları Dosya Açma ve Kapama Dosya Okuma ve Yazma Rastgele Erişim Standart Girdi/Çıktı Hata Kontrolü
Metin Dosyaları Metin Dosyaları Dosya Açma ve Kapama Dosya Okuma ve Yazma Rastgele Erişim Standart Girdi/Çıktı Hata Kontrolü Metin Dosyaları Metin dosyaları, verileri bir kere hazırlayıp, ikincil saklama
Detaylıişlemler bittikten sonra dosyaların kapatılması uygun olacaktır. Bunun için, fclose(fin);
case 2 : C = 0.5088-0.0011*(B-135); break; case 3 : C = 0.4978-0.0010*(B-145); break; case 4 : C = 0.4878-0.0009*(B-155); break; default : printf("yanlış seçenek\n");} cout
DetaylıFall Object-Oriented Programming Laboratory 03
2017-2018 Fall Object-Oriented Programming Laboratory 03 17.10.2017 1. Çok Dosyalı Proje. Aşağıda, katilimci structure ı için oluşturulmuş bir programın kaynak kodu verilmiştir. Kaynak kodu okuyun ve programın
DetaylıProgramlama Dilleri. C Dili. Programlama Dilleri-ders08/ 1
Programlama Dilleri C Dili Programlama Dilleri-ders08/ 1 Yapısal Veri Tipleri C dili genişletilebilen bir dildir. Var olan veri tipleri kullanılarak yeni veri tipleri tanımlanıp kullanılabilir. Programlama
DetaylıÖrnek: İki fonksiyondan oluşan bir program. Fonksiyon Tanımı
Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar Değer Döndüren Fonksiyonlar Çok Parametreli Fonksiyonlar Değişken Kapsamları Çok Fonksiyonlu Programlar Fonksiyon Tanımı Karmaşıkveuzunprogramları,
Detaylı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ıDeney 7: Fonksiyon Tanımlama ve Parametre Aktarım Yöntemleri
Deney 7: Fonksiyon Tanımlama ve Parametre Aktarım Yöntemleri 7.0. Amaç Ve Kapsam Deneyde C dilinde kullanılan fonksiyon tanımlama ve parametre aktarım yöntemleri hakkında bilgi verilecektir. 7.1. Deneyden
Detaylı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 İşaretçiler ve Diziler Fonksiyon
DetaylıNESNEYE YÖNELİK PROGRAMLAMA C++ a Giriş
Özlem AYDIN NESNEYE YÖNELİK PROGRAMLAMA C++ a Giriş Trakya Üniversitesi Bilgisayar Mühendisliği Bölümü C DİLİNİN BİR ÜST-KÜMESİ OLARAK C++ Genel olarak, C de mevcut olan her şey C++ da da vardır. C dilinde
Detaylı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ıDöngü Komutları. Komutu. while Komutu Diğer Operatörler Bileşik Komut for Komutu. İçiçe Döngüler break ve continue Komutları
Döngüler Döngü Komutları while Komutu Diğer Operatörler Bileşik Komut for Komutu do-while Komutu İçiçe Döngüler break ve continue Komutları while Komutu Döngü komutları komutların bir çok kez yeniden yürülmesini
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, 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ımod ile açılacak olan dosyanın ne amaçla açılacağı belirlenir. Bunlar:
Dosyalama Çoğu programda, bazı verilerin disk üzerinde saklanmasına gerek duyulur. C programlama dilinde, disk dosyasına erişme (okuma ve yazma için) iki farklı yöntemle yapılır. Bunlar üst düzey ve alt
DetaylıSAKARYA ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM BİLİMLERİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2015-2016 GÜZ DÖNEMİ PROGRAMLAMAYA GİRİŞ DERSİ
SAKARYA ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM BİLİMLERİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2015-2016 GÜZ DÖNEMİ PROGRAMLAMAYA GİRİŞ DERSİ Cemil Hoca Grubu PROJE ÖDEVİ ÖDEV TESLİM KURALLARI Ödevin son
DetaylıNESNE TABANLI PROGRAMLAMA Final Sınavı Cevapları
Sayfa1 NESNE TABANLI PROGRAMLAMA 25.01.2011 Final Sınavı Cevapları CEVAPLAR 1. A ve C 3x3 boyutlu kare matrislerdir. Bu matrisler için, iken, işlemini gerçekleştirerek C matrisini oluşturan bir C++ programı
DetaylıPascalda oluşturulacak dosyalar değişkenler gibi programın başında tanımlanır.
DOSYALAMALAR Programlama bilgilerin her zaman ekrana yazdırılması veya değişkenlerde tutulması yeterli olmayabilir. Programın çalışması sonucu girilen yada hesaplanan her bilgi manyetik ortama programda
Detaylı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ıYeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik.
ASP.NET DERS 1 Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik. Gelen ekranda Visual C# seçildikten
DetaylıUzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java da Fonksiyon Tanımlamak Java da Döngüler Java da Şart İfadeleri Uygulamalar Java da Fonksiyon Tanımlamak JAVA DA FONKSİYON TANIMLAMAK 4 Fonksiyonlar;
DetaylıBMB1002 Bilgisayar Programlamaya Giriş. Dosyalar. Prof. Dr. Necmettin Kaya
BMB1002 Bilgisayar Programlamaya Giriş Dosyalar Prof. Dr. Necmettin Kaya Dosyalar, verilen saklanması ve daha sonra okunması için bilgi içeren ve kalıcı olarak saklanabilen ortamlardır. Dosya işlemleri,
Detaylı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ı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ı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ıAlgoritma ve Programlama II Recursive Fonksiyonlar Dosyalama
Algoritma ve Programlama II Recursive Fonksiyonlar Dosyalama Rekürsif Algoritmalar Bir problemin çözümü için döngü kurulması gerekiyorsa bu ihtiyacı karşılamak için birisi çevirimli diğeri rekürsif olarak
DetaylıELN1002 BİLGİSAYAR PROGRAMLAMA 2
ELN1002 BİLGİSAYAR PROGRAMLAMA 2 DOSYALAMA Sunu Planı Veri Hiyerarşisi Dosyalar ve Akımlar(streams) Sıralı Erişim (Sequential Access) dosyalarının oluşturulması Sıralı Erişim Dosyalarından Veri Okuma Rasgele
DetaylıEndüstri Mühendisliği Bölümü Bilgisayar Programlama Ders Notları
8- Turbo Pascal Programlama İle Dosya İşlemleri Dosya işlemleri bilgisayar programlamada verilerin tekrar kullanılması açısından çok önemlidir. Yazılan bilgisayar programlarında elde edilen sonuçlar eğer
Detaylı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ı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ı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 Dosya İşlemleri (Rastgele Erişim)
Detaylı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ı#ifndef VEKTOR_H #define VEKTOR_H. struct vektor_s { double x; double y; double z; }; typedef struct vektor_s vektor_t;
02.10.2018 2018-2019 Güz Object-Oriented Programming Lab 01 Ön Çalışma - 1. soruyu çözün. - 2. soruda istenen fonksiyonların argümanlarına ve return türlerine karar verin. Nedenlerinizi kısaca açıklayın.
DetaylıKOCAELİ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ. BİLGİSAYAR LABORATUVARI II FİNAL SINAVI SORU ve CEVAPLARI(I. ogr)
KOCAELİ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BİLGİSAYAR LABORATUVARI II FİNAL SINAVI SORU ve CEVAPLARI(I. ogr) 1. Kendisine gönderilen iki karakter dizisini birleştirip geriye tek bir dizi döndüren ve
Detaylı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ı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ıenum bolumler{elektronik, insaat, bilgisayar, makine, gida};
BÖLÜM 12: Giriş C programlama dilinde programcı kendi veri tipini tanımlayabilir. enum Deyimi (Enumeration Constants) Bu tip, değişkenin alabileceği değerlerin belli (sabit) olduğu durumlarda programı
DetaylıProgramlama Dilleri Laboratuvarı
2014 2015 Programlama Dilleri Laboratuvarı Ders Sorumlusu: Yrd. Doç. Dr. İsmail KURNAZ Laboratuvar Sorumluları: İÇİNDEKİLER Deney 1: Bilgisayar Kavramları, Algoritma Geliştirme ve Çözümü, Programlamaya
DetaylıSAKARYA ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM BİLİMLERİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ GÜZ DÖNEMİ PROGRAMLAMAYA GİRİŞ DERSİ
SAKARYA ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM BİLİMLERİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2015-2016 GÜZ DÖNEMİ PROGRAMLAMAYA GİRİŞ DERSİ Cemil Hoca nın Grubu 3. ve 4. ÖDEV DOKÜMANI (Bu ödev hem 3.
Detaylı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ıGenel Programlama II
Genel Programlama II 18.04.2011 1 DİSK DOSYALARI İLE ÇALIŞMA DOSYALARIN AÇILMASI C programlama dilinde bir dosyayı kullanabilmek için, öncelikle o dosyanın açılması gerekmektedir. Hem okuma hem de yazma
DetaylıSınav tarihi : Süre : 60 dak.
Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Final Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 31.05.2016 Süre : 60 dak. 1. Ekranda ne görüntülenir? int i =
DetaylıEln 1001 Bilgisayar Programlama I
Eln 1001 Bilgisayar Programlama I GiriŞ / ǹk¹Ş Fonksiyonlar¹ Ne ÖĆreneceĆiz? Temel Giriş/Çıkış Yapısı Giriş Fonksiyonları Karakterler için giriş fonksiyonları Scanf fonksiyonu Formatlı giriş Çıkış Fonksiyonları
DetaylıÖrnek1: #include <iostream> #include <string> using namespace std;
BTEP243 Ders 5 Nesne İşaretçileri İşaretçiler, bildiğiniz gibi bir değişkenin bellekte tutuldukları yerin adresini tutarlar. Nesne işareçtileri konusundaki işaretçiler, nesnelerin bellek üzerinde bulundukları
DetaylıSınav tarihi : Süre : 60 dak. a) ABCDE b) BCDE c) ABCD d) kod hatalı e) BCD
Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Yıliçi Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 13.04.2015 Süre : 60 dak. 1. Hangisi gerçek sayı değişmezi değildir?
Detaylı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ıPROGRAMLAMA TEMELLERİ DERSİ ÖZETİ
Değişkenler PROGRAMLAMA TEMELLERİ DERSİ ÖZETİ C# Programlama Dili Giriş Değişkenler bir programlama dilinde verilerin depolanma alanlarını temsil eder. Tanımlanan her değişkene bellek bölgesinden bir alan
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
İÇİ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ıEBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA
6. HAFTA EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA Öğr. Gör. S. M. Fatih APAYDIN apaydin@beun.edu.tr EMYO Bülent Ecevit Üniversitesi Kdz. Ereğli Meslek Yüksekokulu ALGORİTMA ÖRNEK1: İki sayının toplamı
Detaylı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ıJavascript. 1) Notepad++ aşağıdaki kodları yazıp deneme.html olarak kaydedelim. 2) Biraz önceki sayfa sadece html kodların içeriyordu.
Javascript Html sayfalarının içine yazılarak, sayfayı daha etkileşimli hale getirir. click olayları, uyarı mesajları gibi hareketlerle sayfayı daha dinamik hale getirir. Javascript olmadan yazılan html
DetaylıVeri Yapıları. Amaçlar: Temel Veri Yapılarını Tanımlamalı Veri Yapılarını Veri Modeli ve Türlerini Öğreneceksiniz. İçindekiler:
Veri Yapıları Amaçlar: Temel Veri Yapılarını Tanımlamalı Veri Yapılarını Veri Modeli ve Türlerini Öğreneceksiniz İçindekiler: Giriş Temel Veri Yapıları Tanımlamalı Veri Yapıları Veri Modeli ve Türleri
Detaylı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 Yapılar ve Birlikler enum Deyimi
DetaylıC++ Giriş Ders 1 MSGSU Fizik Bölümü Ferhat ÖZOK Kullanılacak kaynak: Published by Juan Soulié
Kullanılacak kaynak: http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié C++ Nedir? Arttırılmış C demektir ve C dilinin geliştirilmiş halini yansıtır. C++ öğrenmeden önce herhangi bir programlama
DetaylıBÖLÜM 11: YAPISAL VERİ TİPLERİ
BÖLÜM 11: YAPISAL VERİ TİPLERİ I. STRUCTURE-YAPI (struct) TİPİ DEĞİŞKENLER Birbiriyle bağlantılı ve bir küme teşkil eden değerler bir tek değişkenin çatısı altında bu değişkenin alt alanları olarak tanımlanabilirler.
DetaylıÖ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ıTemel Dosya İşlemleri. Kütük Organizasyonu 1
Temel Dosya İşlemleri Kütük Organizasyonu 1 Dosyaların Temel İşlemleri Bilgiler dosyada belirli bir düzen içerisinde yer alırlar Örn: ALAN THARP 100 100 100 JOHN BISHOP 70 80 75 PAUL AUSTER Bir satırda
Detaylı#ifndef COMPLEX_H #define COMPLEX_H
16.10.2018 2018-2019 Güz Object-Oriented Programming Lab 03 Ön Çalışma - Bir kompleks sayının genliğini ve açısını hesaplamak için gerekli C/C++ fonksiyonları bulun, kütüphanelerini ve prototiplerini yazın,
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ü Konular Giriş Data Hiyerarşisi Files (Dosyalar) ve Streams (Kaynaklar)
Detaylı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ıprintf("\nbilgilerini goruntulemek istediginiz ogrencinin numarasini girin: "); scanf("%d",&no);
////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////// ALGORITMA VE PROGRAMLAMA DERSİ-2 // ODEV-2 ////////////////////////
DetaylıKarabük Üniversitesi, Mühendislik Fakültesi...www.ibrahimcayiroglu.com WEB TEKNOLOJİLERİ
WEB TEKNOLOJİLERİ VISUAL STUDIO DA YENİ BİR PROJE OLUŞTURMA Visual Studio (VS) programını çalıştırdığımızda karşımıza boş bir ekran gelir. Yeni bir proje oluştururken File>New>Project yolu kullanılarak
DetaylıKONU 7: DOSYA İŞLEME ( File Processing )
DERS: PROGRAMLAMA DİLLERİ 1 DÖNEM: 2002-2003 Güz yarı yılı KONU 7: DOSYA İŞLEME ( File Processing ) HEDEFLER: 1- Dosyaları yaratabilme, okuyabilme, yazabilme ve güncelleyebilme 2- Sıralı erişim dosyalarını
Detaylıelemanlarının gezilmesine yönelik bir örnek sunulmuştur, inceleyiniz.
Ön bilgi: Dizi tanımlayabilmeli. foreach deyimi bilinmeli. Rastgele sayılar (Random) bilinmeli. 1. Aşağıda tamsayı tipinde iki boyutlu bir dizinin nasıl tanımlandığı, bir fonksiyona parametre olarak nasıl
DetaylıFall Object-Oriented Programming Laboratory 02 - Structures
2017-2018 Fall Object-Oriented Programming Laboratory 02 - Structures 10.10.2017 1. Diziler. Bir tamsayi dizisinin elemanlarını ekrana yazdırmak için void printarr(int arr[], int elem_count) prototipli
Detaylı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ı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ı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 Dosya İşlemleri ASCII Tablosu ve
DetaylıHSancak Nesne Tabanlı Programlama I Ders Notları
DİZİLER Bellekte ard arda yer alan aynı türden nesneler kümesine dizi (array) denilir. Bir dizi içerisindeki bütün elemanlara aynı isimle ulaşılır. Yani dizideki bütün elemanların isimleri ortaktır. Elemanlar
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
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ıBIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ
2017-2018 BaharYarıyılı Balıkesir Üniversitesi Endüstri Mühendisliği Bölümü 7 BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ (Java Programlama Dili ve Algoritmadan Kodlamaya Geçiş) Yrd. Doç. Dr. İbrahim Küçükkoç
DetaylıBM102 BİLGİSAYAR PROGRAMLAMA II LABORATUVAR UYGULAMALARI. 3Hafta
Ön bilgi: Özyineli fonksiyon tanımlanabilmeli. Dizilerin fonksiyon parametresi veya geri dönüş değeri olarak kullanımı bilinmeli. 1. Klavyeden girilen sayı n olmak üzere [1..n] aralığındaki sayıların toplamı
DetaylıELN1001 BİLGİSAYAR PROGRAMLAMA I
ELN1001 BİLGİSAYAR PROGRAMLAMA I DEPOLAMA SINIFLARI DEĞİŞKEN MENZİLLERİ YİNELEMELİ FONKSİYONLAR Depolama Sınıfları Tanıtıcılar için şu ana kadar görülmüş olan özellikler: Ad Tip Boyut Değer Bunlara ilave
DetaylıTemel Bilgisayar Programlama
BÖLÜM 11: : Birçok programda, bazı verilerin disk üzerinde saklanmasına gerek duyulur. Bütün programlama dillerinde, sabit disk sürücüsü (Hard Disk Drive, HDD) üzerindeki verileri okumak veya diske veri
Detaylı7- Turbo Pascal Programlamada Alt Programlar (Procedure)
7- Turbo Pascal Programlamada Alt Programlar (Procedure) Alt programların ana programda yapacağımız ek işlevleri üstlendiğinden daha önceki bölümde bahsetmiştik. Alt programlar genelde ana program bloğu
DetaylıBĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié
BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié DERSİN WEB SİTESİ: http://nucleus.istanbul.edu.tr/~bilprog2/ DeğiĢkenler ve Data Türleri
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İ AD SOYAD : TESLİM TARİHİ : OKUL NO : TESLİM SÜRESİ : 2 hafta Ödev No : 7 ****(ilk 3 soru çıktı üzerinde el
Detaylı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 Tekrarlı Yapılar Algoritmanın belirli bir kısmının, belirli kere ya da belirli durumlar
Detaylı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ıYAPILAR (STRUCTURES)
YAPILAR (STRUCTURES) Yapılar, dizilere benzeyen ancak farklı tipten verileri bir arada tutan bütün olarak tanımlanabilir. Yapıların kullanılmasının esas sebebi de budur. Yapı tipi aslında yeni bir tip
Detaylı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ıJval tipi. Genel veri yapılarını kullanacağımız zaman Jval den faydalanırız.önemli olanlar aşağıda mevcuttur:
Jval tipi /blugreen/homes/plank/cs360/include/jval.h içerisinde bir Jval tipi tanımlanmıştır.büyük bir union yapısı aşağıdadır: typedef union { int i; long l; double d; void *v; char *s; char c; unsigned
DetaylıEln 1002 Bilgisayar Programlama II
Eln 1002 Bilgisayar Programlama II C»de Dosya ğşleme : S¹ral¹ EriŞim Ne ÖĆreneceĆiz? Dosyalar ve Streamler Sequential (sıralı) erişim dosyaların yaratılması Sıralı Erişim Dosyalarından Veri Okuma Sıralı
Detaylı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İ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ş Kontrol Yapıları if Seçme Deyimi if... else Seçme Deyimi while Tekrar
DetaylıDOSYA İŞLEMLERİ Programlama dilleri hafta -
BİLECİK ŞEYH EDEBALİ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ DOSYA İŞLEMLERİ Programlama dilleri 1-10. hafta - Araş. Gör. Nesibe YALÇIN Dosya İşlemleri Programın çalışma esnasında
DetaylıDİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II
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
DetaylıAHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ
AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ TBIL-303-01 Veri Yapıları ve Algoritmalar İki Yönlü Bağlantılı Liste Uygulaması HAZIRLAYAN
DetaylıProgramlama Dilleri 1. Ders 4: Diziler
Programlama Dilleri 1 Ders 4: Diziler Genel Bakış Tanım Dizilerin tanımlanması Dizilere ilk değer verilmesi Yerel ve Global diziler Dizilerin birbirine atanması Diziler ile ilgili örnekler Çalışma soruları
DetaylıÖ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ıArama Algoritmaları. Doğrusal Arama ve Binary Arama
Arama Algoritmaları Doğrusal Arama ve Binary Arama Doğrusal Arama-Örnek Dizi (Array) sayilistesiiçerisindeki sayılar aşağıdaki gibidir: 17 23 5 11 2 29 3 11, verilen dizi içerisinde aranacaksa doğrusal
DetaylıC PROGRAMLAMA D İ L İ
C PROGRAMLAMA DİLİ C Programlama Dilinin Temelleri C Programlama Dili'ni popüler kılan önemli nedenler aşağıda listelenmiştir: C, güçlü ve esnek bir dildir. C ile işletim sistemi veya derleyici yazabilir,
DetaylıELN1002 BİLGİSAYAR PROGRAMLAMA 2
ELN1002 BİLGİSAYAR PROGRAMLAMA 2 DOSYALAMA Sunu Planı Rasgele Erişim (Random Access) Dosyaları Rasgele Erişim Dosyalarına Veri Yazma Rasgele Erişim Dosyalarından Veri Okuma 1 Sıralı Erişim Dosyası Bir
DetaylıKocaeli Üniversitesi Bilgisayar Mühendisliği Programlama 2 Dersi Final Sınavı. A Grubu
Kocaeli Üniversitesi Bilgisayar Mühendisliği Programlama 2 Dersi Final Sınavı A Grubu Ad Soyad: 11.06.2012 Numara: İmza: 1.) Aşağıdaki pointer bildiriminin anlamı hangisidir? int(*(*ptr1)())[2]; A.) ptr
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İ 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ı1 RUBY HAKINDA 1 Ruby nin Gelişim Hikayesi 1 Neden Ruby? 1 Neden Bu Kadar Popüler? 2
İÇİNDEKİLER VII İÇİNDEKİLER 1 RUBY HAKINDA 1 Ruby nin Gelişim Hikayesi 1 Neden Ruby? 1 Neden Bu Kadar Popüler? 2 2 RUBY KURULUMU 3 Windows İçin Ruby Kurulumu 3 Ubuntu ve Debian İçin Ruby Kurulumu 6 Mac
Detaylı