HARİTA MÜHENDİSLERİ İÇİN C DİLİ UYGULAMALARI

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

Download "HARİTA MÜHENDİSLERİ İÇİN C DİLİ UYGULAMALARI"

Transkript

1 HARİTA MÜHENDİSLERİ İÇİN C DİLİ UYGULAMALARI C BİLGİSAYAR PROGRAMLAMA DERSLERİ İÇİN UYGULAMALAR HAZIRLAYAN Prof.Dr. İ. Öztuğ BİLDİRİCİ

2 İÇİNDEKİLER 1. PROGRAMLAMA ORTAMI Proje Klasörü Visual Studio.NET EXPRESS BASİT PROGRAMLAR İlk Program printf ile hesaplama Tam Sayılarla Hesaplama Reel Sayılarla Hesaplama Formatlı Sayı Gösterimi İki nokta arasındaki kenar hesabı İki Nokta Arasında Açıklık Açısı Hesabı for Çevrimi ile Toplama Faktöriyel İç İçe for Çevrimi: Çarpım Tablosu Programı Alan Hesabı e Sayısının Hesabı KARAKTER, DİZİ ve POINTER KULLANILAN ÖRNEKLER Dizi Kullanarak Alan Hesabı Pointer Kullanımı Karakter Dizileri Örneği FONKSİYON KULLANILAN PROGRAMLAR Fonksiyonlara Değer Aktarma Açıklık Açısının Fonksiyon Olarak Programlanması Açıklık Açısı ve Kenarı Birlikte Döndüren Fonksiyon Fonksiyonlar Arası Dizi Aktarma Fonksiyon Olarak Alan Hesabı...27 İ.Ö.BİLDİRİCİ,

3 5. DOSYA KULLANIMI Dosyadan Okuma Dosyaya Yazma İki Boyutlu Dizilerle Çalışma: Matris Çarpımı İLERİ TEKNİKLER Struct, Union ve Typedef Struct ve Dosya Kullanımı Komut Satırından Parametre Almak Sisteme Komut Göndermek Header File Kullanmak C++ ÖRNEKLERİ Ekrandan Veri Giriş Çıkışı Dosya İşlemleri Nesneye Yönelik Programlama...41 İ.Ö.BİLDİRİCİ,

4 1. PROGRAMLAMA ORTAMI Metinde verilen uygulamalar herhangi bir yazılım geliştirme ortamına bağlı değildir. Laboratuar uygulamalarında yazılım geliştirme ortamı olarak Microsoft Visual Studio 6.0 ya da Microsoft Visual Studio.Net kullanılmaktadır. Bu bölümde her iki ortamda da console application (komut satırından çalışan program) oluşturma konusunda kısaca bilgi verilecektir. Günümüzde kullanılan tüm yazılım geliştirme ortamları proje mantığına göre çalışırlar. Proje mantığında proje dosyasında projeyi oluşturan kod dosyalarının adresleri ve proje ile ilgili genel ayarlamalar saklanır. Kod dosyaları yanında başka dosyalarda oluştuğundan proje bir klasörde saklanır. 1.1 Proje Klasörü Projeniz için ilk olarak Windows Explorer (Windows Gezgini) ile bir klasör oluşturun. Windows Explorer iki şekilde açılabilir: 1. Masaüstünde My Computer ikonuna sağ tuş ile tıklayın. Burada Explore (Araştır) seçin. 2. Windows tuşu ve e tuşuna birlikte basın. Windows tuşu klavyede sol tarafta Ctrl ve Alt tuşları arasındaki tuştur. Windows tuşu Ctrl Alt Aşağıdaki şekilde Windows Explorer penceresi görülmektedir. Pencerenin sol tarafında bilgisayarınızdaki kayıt ortamları (disket, sabit diskler, CD, masaüstü vb). Sağ tarafta ise sol tarafta seçilen elemanın içeriği görülmektedir. Çalışma klasörü olarak d:\harita\xxxxxxxxx\prjy (x ler yerine numaranızı yazınız, y yerine proje no yazınız) kullanılacaktır. Klasör açmak için sol pencerede D diskini seçin sağ pencerede boş alanda farenin sağ tuşuna basın New Folder (Yeni Klasör) seçin. Kullandığınız bilgisayarda D diski yok ise aynı işlemi C diskinde yapınız. Bu anda New Folder olarak adlandırılmış bir klasör oluşacaktır. Bu yazı seçilmiş durumda iken (karartılmış durumda) klavyeden klasör ismini girip enter tuşuna basın. Klasör ismi değişmiş olacaktır. Fare ile çift tıklayarak bu klasörü açabilirsiniz. Klasör ismi olarak harita girerken mutlaka küçük harflerle yazınız! İ.Ö.BİLDİRİCİ,

5 Disket Sabit diskler CD Bu alanda farenin sağ tuşu ile tıklayın! Klasörler açılmış ise yeniden açmaya çalışmayınız! Örneğin harita klasörü varsa açın, içinde numaranız olup olmadığına bakın yoksa açın. İşlemi doğru yapmış iseniz Windows Explorer penceresi aşağıdaki gibi görünecektir. Pencereyi minimize edip programlama ortamını çalıştırın. İ.Ö.BİLDİRİCİ,

6 Pencereyi minimize etmek için bu ikona tıklayın! Sağ pencerede daha sonra kendi klasörünüz altında oluşturacağınız proje klasörünüzü diskete kopyalamak için sol pencerede proje klasörü üzerinde farenin sağ tuşuna tıklayın. Açılan menüden Send to Floppy seçin. Klasörü seçip, sürükleyip disket sürücü (Floppy A:) ikonu üzerine bırakarak da aynı işlemi yapabilirsiniz. Disketten proje klasörü kopyalamak için ise D diskinde açtığınız klasör (numaranız) görünürken disket sürücü (Floppy A:) ikonuna tıklayın sağ tarafta disketin içeriği görünecektir. Buradan proje klasörünü seçin, sürükleyip D diskinde açtığınız klasöre (numaranız) sürükleyin. 1.2 Visual Studio.NET EXPRESS 2010 Laboratuarda VisualStudio.NET yüklü ise bu bölümdeki açıklamaları takip ediniz. VisualStudio6.0 kullanılıyorsa bu bölümü atlayabilirsiniz. Start (Başlat) > Programs (Programlar) > Microsoft Visual C Express seçerek programı çalıştırın. Yeni projeye başlamak için File > New > Project ile aşağıdaki pencerenin görüntülenmesini sağlayın. İ.Ö.BİLDİRİCİ,

7 Installed templates kısmından Win32 seçin, sağ taraftaki pencereden Win32 Console Application seçin. Location kutusunun yanındaki butona (Browse...) basarak açmış olduğunuz klasörü gösterin (D:\HARITA\), name olarak proje1 girin. Create directory for solution kutusunu işaretlemeyin! OK butonuna basın. Next butonuna bastıktan sonra gelen pencerede Empty Project seçin. İ.Ö.BİLDİRİCİ,

8 Projeniz açılınca, görünüm aşağıdaki gibi olmalıdır. Sol tarafta bulunan Solution Explorer penceresinde Surce Files ikonuna farenin sağ tuşu ile tıklayın, açılan penceren add new item seçin. İ.Ö.BİLDİRİCİ,

9 C++ File seçin ve dosya adı olarak proje1 (ya da başka bir isim) verin. Kod dosyası eklendikten sonra dosya adının üzerine farenin sağ tuşu ile tıklayın. Açılan menüden rename seçerek dosyanın uzantısını c yapın. İ.Ö.BİLDİRİCİ,

10 Benzer şekilde projenize başlık dosyası da (Header File) ekleyebilirsiniz. Yazdığınız kodu derlemek ve bağlamak için (compile & link) build menüsünden build... (kısayol F7), kodu çalıştırmak için ise Debug menüsünden Start Without Debugging... (kısayol Ctrl F5) seçilir. Projenizi kaydetmek için File > Save all seçin. Projenizi sık sık kaydetmeniz sizin yararınızadır! İ.Ö.BİLDİRİCİ,

11 Dikkat: Bir projede yalnızca bir main fonksiyonu olabilir. Bir programı bitirip yeni bir programa geçmek için yeni bir proje oluşturmak gerekir. Önceden kaydettiğiniz projenizi açmak için proje klasöründe oluşan vcxproj ya da sln uzantılı dosyayı (örneğin proje1.sln) açınız. Kod dosyasını (örneğin proje1.c) tıklayarak açmayınız!!! Projenizi yedeklerken geçici olarak proje klasörü altında oluşturulan ve diskte fazla yer kaplayan Debug klasörünü silebilirsiniz. 2. BASİT PROGRAMLAR 2.1 İlk Program Ekrana Merhaba mesajı yazdıran bir program kodu aşağıdaki gibidir: /*prg01*/ #include <stdio.h> main() printf("\nmerhaba"); yukarıdaki kodu inceleyelim: include tanımlamaları hemen her C programının başında yer alır. Burada programda kullanılan fonksiyonların hangi kütüphaneden alınacağı bildirilir. ve ile bir programlama bloğu tanımlanır. Programlama blokları içi içe kullanılabilir. printf ekranda veri görüntülemek için kullanılan temel C fonksiyonlarından biridir. Her ifade ; ile sonlandırılır. C dilinde bir program fonksiyonlardan (alt program parçacıklarından) oluşur. Bir programda en az bir fonksiyon olmak zorundadır. Programın çalışmaya başlayacağı fonksiyon main olarak adlandırılır. Bu ad değiştirilemez. Bu bağlamda bir program tek bir fonksiyondan oluşuyorsa o fonksiyonun adı main olmak zorundadır. /* ve */ işaretleri arasında kalan bölüm derleyici tarafından dikkate alınmaz. Bu bölüme program hakkında notlar yazılabilir. 2.2 printf ile hesaplama printf fonksiyonu altında hesaplama da yapmak mümkündür: /*prg02*/ #include <stdio.h> /* printf fonksiyonu ile hesaplama */ main() printf("\n12*2=%i",12*2); printf("\n12/2=%i",12/2); Buradaki %i ifadesi ile ilgili yerde integer tipli bir değişken görüntüleneceği belirtilmektedir. \n ile ekranda imlecin bir alt satıra geçmesi sağlanır. \t tab anlamında olup imleci sekiz boşluk sağa öteler, \a ise alarm anlamında olup kısa bir ses çalınmasını sağlar. Programın çalışması sonucunda aşağıdaki gibi bir ekran görüntüsü elde edilir: 12*2=24 İ.Ö.BİLDİRİCİ,

12 12/2=6 2.3 Tam Sayılarla Hesaplama Verilen iki sayının toplamını, çıkarmasını, çarpmasını yapan bir program için aşağıdaki kod kullanılabilir: /*prg03*/ #include <stdio.h> int x,y; printf("\n\thesaplayici\n"); printf("\nx="); scanf("%i",&x); printf("\ny="); scanf("%i",&y); printf("\n\nx+y=%i\tx-y=%i",x+y,x-y); printf("\n\nx*y=%i\tx/y=%i",x*y,x/y); Yukarıdaki kodu kısaca inceleyelim. İlk olarak integer (tam sayı) tipinde x ve y değişkenleri tanımlanmıştır. Önceki kodlardan farklı olarak printf içerisinde \t kullanılmıştır. Bunun anlamı ekranda kürsörün sekiz karakter sağa ötelenmesidir. Bunu klavyeden tab tuşuna basılmış gibi düşünebiliriz. scanf fonksiyonunda ise ilk olarak tırnak içerisinde ekrandan okunacak değerin formatı belirtilir. Burada %i bir tamsayı değerin okunacağı anlamına gelir. & işareti ise ileride ayrıntıları verilecek olarak pointer anlamındadır. Burada sadece &x kodunun x değişkenine bellekte ayrılan adresi gösterdiğinin bilinmesi yeterlidir. main fonksiyonunun önünde yer alan int bildirimi main fonksiyonunun geriye tamsayı döndürdüğünü belirtmektedir. Geriye döndürülen değer son satırda return fonksiyonu ile belirtilir. Bu değer bu program için 0 olarak belirlenmiştir. Fonksiyonun geriye bir değer döndürmediği int yerine void ile belirtilebilir. Ancak main fonksiyonu için void bildirimi LINUX gcc derleyicisi tarafından kabul edilmez. 2.4 Reel Sayılarla Hesaplama Tamsayılarla hesap yapan program (prg03) bölme işleminde tam bölünme olmaması durumunda bölme sonucunun ondalıklı kısımlarını vermez. Ondalıklı kısımları elde etmek için reel sayılarla işlem yapılmalıdır. Bu amaçla C iki değişken tipi içermektedir. Reel sayılar için kullanılan değişken tiplerinden float 4 byte, double 8 byte uzunluğundadır. prg03 kodunu bir kez de float tipi kullanarak yazabiliriz. /*prg04*/ #include <stdio.h> float x,y; printf("\n\thesaplayici\n"); printf("\nx="); scanf("%f",&x); printf("\ny="); scanf("%f",&y); printf("\n\nx+y=%f\nx-y=%f",x+y,x-y); printf("\n\nx*y=%f\nx/y=%f",x*y,x/y); İ.Ö.BİLDİRİCİ,

13 scanf ve printf fonksiyonlarında bu kez %i yerine %f geldiğini görüyoruz. %f float değişkenler için kullanılan format tanımlamasıdır. Bu kodu çalıştırdığımızda sayıların ondalık kısımlarının da görüntülendiğini görürüz. Aynı kodu double tipi kullanarak yazmak gerekirse, float yerine double %f yerine ise %lf kullanılması gerekir. Reel sayı kullanılması gereken programlarda yeterli hesap inceliğini riske atmamak için genel olarak float değil double değişken tipi tercih edilir. 2.5 Formatlı Sayı Gösterimi Verilen üç sayının toplamını ve ortalamasını bulan bir program yazarak, sonuçların iki basamaklı olarak gösterilmesi sağlayalım. /*prg05*/ #include <stdio.h> double top=0.0,sayi; printf("\n\thesaplayici\n"); printf("\n1.sayi="); scanf("%lf",&sayi); top=top+sayi; printf("\n2.sayi="); scanf("%lf",&sayi); top=top+sayi; printf("\n3.sayi="); scanf("%lf",&sayi); top=top+sayi; printf("\ntoplam=%.2lf",top); top=top/3; printf("\nortalama=%.2lf",top); Değişken tanımlamalarında, double top=0.0 ifadesi top adlı değişkenin başlangıç değerinin sıfır olarak atandığını ifade etmektedir. C dilinde değişkenlere başlangıç değeri vermek çoğu zaman gerekli ve yararlıdır. Çünkü başlangıç değeri belirtilmemiş değişkenlerin programın başlama anındaki değerleri kullanılan derleyiciye göre sıfır olmayabilir. C bu açıdan diğer pek çok programlama dilinden ayrılır. top=top+sayi şeklinde bir ifade matematiksel açıdan geçersiz olarak düşünülebilir. Matematiksel olarak bu eşitliğin sağlanabilmesi için sayi değişkeninin sıfıra eşit olması gerekir. Ancak buradaki = işareti eşitlik anlamında değil değer ataması anlamında kullanılmıştır. Bu ifade bilgisayar programlama açısından top değişkeninin halihazırdaki değerine sayi değişkeninin değeri ekle ve elde edilen değeri tekrar top değişkenine ata şeklinde anlaşılmalıdır. Bu mantıktan hareketle neden top değişkenine başlangıç değeri atandığı daha kolay anlaşılabilir. printf fonksiyonlarında kullanılan %.2f format bildirimleri, ilgili değişkenin değerinin ondalık kısmının iki basamak olarak gösterilmesini sağlar. Printf fonksiyonunda kullanılan format bildirimleri şunlardır: d desimal o oktal x heksadesimal u unsigned (işaretsiz) c karakter s string (karakter katarı) f float (kayar nokta) İ.Ö.BİLDİRİCİ,

14 Bu harfler, bir yüzde işaretinden sonra kullanırlar. Bu iki harf arasına şunlar ilave edilebilir: - sahasının içinde sola dayanmış (n) minimum saha uzunluğunu belirler. n ile m yi birbirinden ayırır (m) float tipi için noktadan sonraki hane sayısı l 'long' tipi olduğunu belirtmek için Değişik formatlı gösterimler için aşağıdaki programı çalıştırıp inceleyin. /*prg06*/ #include <stdio.h> int a; /* basit tamsayı tipi */ long int b; /* uzun tamsayı tipi */ short int c; /* kısa tamsayı tipi */ unsigned int d; /* işaretsiz (+ - siz) tamsayı */ char e; /* karakter tipi */ float f; /* reel sayı (tek incelikli) */ double g; /* çift incelikli reel sayıkta */ a = 1023; b = 2222; c = 123; d = 1234; e = 'X'; f = ; g = ; printf("a = %d\n",a); /* desimal */ printf("a = %o\n",a); /* oktal */ printf("a = %x\n",a); /* heksadesimal */ printf("b = %ld\n",b); /* uzun desimal */ printf("c = %d\n",c); /* kısa desimal */ printf("d = %u\n",d); /* işaretsiz */ printf("e = %c\n",e); /* karakter */ printf("f = %f\n",f); /* reel sayı */ printf("g = %f\n",g); /* çift incelikli reel sayı */ printf("\n"); printf("a = %d\n",a); /* basit 'int' çıktı */ printf("a = %7d\n",a); /* 7 uzunlukta bir saha kullan*/ printf("a = %-7d\n",a); /* sola dayalı 7 lik saha */ printf("\n"); printf("f = %f\n",f); /* tek incelikli reel sayı */ printf("f = %12f\n",f); /* 12 lik bir saha kullan*/ printf("f = %12.3f\n",f); /* noktadan sonra 3 hane */ printf("f = %12.5f\n",f); /* noktadan sonra 5 hane */ printf("f = %-12.5f\n",f); /* sola dayalı 12 hane */ 2.6 İki nokta arasındaki kenar hesabı Verilen iki noktanın koordinatlarından iki nokta arasındaki kenar, s = 2 ( x x ) + ( y ) y1 ifadesinden hesaplanır. Burada karekök almak için sqrt fonksiyonu, math.h kütüphanesindedir. /*prg07*/ #include<math.h> İ.Ö.BİLDİRİCİ,

15 double x1,y1,x2,y2,s; printf("\nx1="); scanf("%lf",&x1); printf("\ny1="); scanf("%lf",&y1); printf("\nx2="); scanf("%lf",&x2); printf("\ny2="); scanf("%lf",&y2); s=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)); printf("\nkenar=%.2f",s); 2.7 İki Nokta Arasında Açıklık Açısı Hesabı İki nokta arasında açıklık açısı (semt) hesabı, y t = 12 arctan x 2 2 y x 1 1 bağıntısından hesaplanır. Buradan elde edilen açılara bölge düzeltmelerinin getirilmesi gerekir. Bölge düzeltmeleri ise pay ve paydanın negatif ya da pozitif olmasına göre yapılır g g g C de trigonometrik fonksiyonlar yalnızca radyan birimi ile çalışır. π sayısını veren bir kütüphane fonksiyonu yoktur. Bu nedenle yeterli incelikte π sayısı trigonometrik ters fonksiyonlar yardımıyla elde edilebilir. π = 2arcsin(1) /*prg08*/ #include<math.h> double x1,y1,x2,y2,t,pi; printf("\nx1="); scanf("%lf",&x1); printf("\ny1="); scanf("%lf",&y1); printf("\nx2="); scanf("%lf",&x2); printf("\ny2="); scanf("%lf",&y2); pi=2*asin(1.0); x1=x2-x1; y1=y2-y1; t=atan(y1/x1); t=t*200/pi; if(x1<0) t=t+200; if(t<0) t=t+400; İ.Ö.BİLDİRİCİ,

16 printf("\naciklik Acisi=%.5f",t); Yukarıdaki kodu incelersek bölme işleminde, sıfıra bölüm olasılığına karşı bir önlem alınmadığını görürüz. Başka bir deyişle arctan fonksiyonu kullanılmadan önce açıklık açısının 0, 100, 200 ve 300 gibi bir değeri olup olmadığı araştırılmalıdır. Bu düşünceye göre program kodu aşağıdaki gibi değiştirilebilir. /*prg09*/ #include<math.h> double x1,y1,x2,y2,t,pi; printf("\nx1="); scanf("%lf",&x1); printf("\ny1="); scanf("%lf",&y1); printf("\nx2="); scanf("%lf",&x2); printf("\ny2="); scanf("%lf",&y2); pi=2.0*asin(1.0); if(abs(x2-x1)<=1.e-7) if(y2>y1) t=100.0; else t=300.0; else x1=x2-x1; y1=y2-y1; t=atan(y1/x1); t=t*200/pi; if(x1<0) t=t+200; if(t<0) t=t+400; printf("\naciklik Acisi=%.5lf\n",t); 2.8 for Çevrimi ile Toplama for çevrimi kullanılarak kullanıcı tarafından verilen sayıda sayının toplamını ve ortalamasını hesaplayan bir program kodu aşağıda verilmiştir. /*prg10*/ İ.Ö.BİLDİRİCİ,

17 int i,j; double top=0.0,sayi; printf("\n kac sayi toplanacak?"); scanf("%i",&j); for (i=1;i<=j;i=i+1) printf("%i.sayi=",i); scanf("%lf",&sayi); top=top+sayi; printf("\ntoplam=%.2lf\tortalama=%.2lf",top,top/(i-1)); 2.9 Faktöriyel Verilen sayının faktöriyelini hesaplayan program: /*prg11*/ int x,i; double fa=1.0; printf("\nx="); scanf("%i",&x); for (i=x;i>=1;i=i-1) fa=fa*i; printf("\nx!=%.0lf",fa); Matematiksel olarak faktöriyel değeri tam sayı olmasına karşın yukarıdaki program kodunda fa değişkeni double olarak tanımlanmıştır. Bunun nedeni, hızla büyüyen faktöriyel değerini int tipi ile hesaplamadan doğan güçlüktür. fa değişkeni int ve long int olarak da tanımlanarak denenebilir. Bu durumda printf içindeki format ifadesi %.0lf yerine int için %i long int için %ld şeklinde değiştirilmelidir. Ancak yukarıdaki kod belli bir büyüklükten sonra (yaklaşık 168!) double tipi ile de hesaplama yapamayacağından program kırılır. Buna karşı bir önlem olarak program aşağıdaki gibi geliştirilebilir. Aşağıdaki kod, negatif bir sayı verilmedikçe, hesaplamaya da devam etmektedir. /*prg12*/ int x=1,i; double fa=1.0; printf("\a\tfaktoriyel Programi, cikis icin negatif sayi girin"); while(x>=0) fa=1.0; printf("\nx ="); scanf("%i",&x); if(x>=0&&x<=168) for (i=x;i>=1;i=i-1) fa=fa*i; printf("x!=%.0lf",fa); else İ.Ö.BİLDİRİCİ,

18 printf("hesaplanamiyor"); printf("\n\tbitti---"); 2.10 İç İçe for Çevrimi: Çarpım Tablosu Programı Aşağıdaki kısa kod 1 den 10 a kadar sayılar için çarpım tablosunu ekranda gösterir: /*prg13*/ int x,y; for (x=1;x<=10;x=x+1) printf("\n"); for (y=1;y<=10;y=y+1) printf("%4i",x*y); Program çalışması sonucu aşağıdaki ekran görüntüsü elde edilir printf fonksiyonu içinde kullanılan %4i" ifadesi ekranda dört karakterlik yere x*y çarpımının sonucunu sağa dayalı olarak yazdırmaktadır. Sola dayalı yazdırmak için %-4i kullanılmalıdır Alan Hesabı Köşe koordinatları bilinen bir şeklin alanı, 1 2 ( x y x y ) F = n n+ 1 n+ 1 n bağıntısı ile hesaplanır. Buna göre nokta koordinatlarını sıra ile alan, kullanıcı esc tuşuna basınca alanı hesaplayan bir program kodu aşağıdaki gibidir. /*prg14*/ /*Bu program LINUX altinda calismaz!*/ #include<conio.h> #include<math.h> İ.Ö.BİLDİRİCİ,

19 double x1,y1,xn,yn,xm,ym,f=0.0; int i=0,j=0; do j=j+1; printf("\nx%i=",j); scanf("%lf",&xm); printf("\ny%i=",j); scanf("%lf",&ym); if(j==1) x1=xm; y1=ym; else f=f+(xn*ym-xm*yn); yn=ym; xn=xm; printf("\ndevam icin bir tusa basin, cikis esc"); i=_getch(); while(i!=27); f=f+(xm*y1-x1*ym); f=fabs(f)/2.0; printf("\nf=%.2lf",f); Kullanıcıdan nokta sayısı sorularak alan hesaplanmak istenirse kod aşağıdaki gibi değiştirilebilir: /*prg15*/ #include<math.h> double x1,y1,xn,yn,xm,ym,f=0.0; int j,n; printf("\nnokta Sayisi="); scanf("%i",&n); for(j=1;j<=n;j++) printf("\nx%i=",j); scanf("%lf",&xm); printf("\ny%i=",j); scanf("%lf",&ym); if(j==1) x1=xm; y1=ym; else f=f+(xn*ym-xm*yn); yn=ym; xn=xm; f=f+(xm*y1-x1*ym); f=fabs(f)/2.0; printf("\nf=%.2lf",f); Test amacıyla aşağıdaki veriler kullanılabilir: NN Y X İ.Ö.BİLDİRİCİ,

20 F= e Sayısının Hesabı Doğal logaritmanın tabanı olan e sayısı seri yardımıyla hesaplanabilir e = ! 2! 3! double tipinin verebildiği maksimum inceliği elde etmek için, serinin terim değeri den küçük oluncaya kadar hesaplama yapılacaktır. Program doğru çalışırsa 18 terim hesaplanacaktır (derleyici ve işlemciye göre değişebilir). /*prg16*/ int i=0,j; double e=1.0,payda,fark=1.e-15; do i=i+1; payda=1.0; for(j=i;j>=1;j--) payda=payda*j; e=e+1.0/payda; while (1.0/payda>=fark); printf("\n%i terim ile hesaplanan e=%.14lf",i,e); 3. KARAKTER, DİZİ ve POINTER KULLANILAN ÖRNEKLER 3.1 Dizi Kullanarak Alan Hesabı Dizi kullanılarak aşağıdaki gibi bir program yazılabilir: /*prg17*/ #include<conio.h> #include<math.h> #define max 100 double x[max],y[max],f=0.0; int j,n; char cevap='e'; do f=0.0; İ.Ö.BİLDİRİCİ,

21 printf("\nnokta Sayisi(max%i)=",max-2); scanf("%i",&n); if(n>2&&n<max-1) for(j=0;j<=n-1;j++) printf("\nx%i=",j); scanf("%lf",&x[j]); printf("\ny%i=",j); scanf("%lf",&y[j]); x[n]=x[0]; y[n]=y[0]; for(j=0;j<=n-1;j++) f=f+(x[j]*y[j+1]-x[j+1]*y[j]); f=fabs(f)/2.0; printf("\nf=%.2lf",f); printf("\ndevam mi?e/h"); cevap=getch(); while(cevap=='e'); printf("\n----b i t t i---"); #define ile sabitler tanımlanır. Yukarıdaki kodda dizi boyutu max adlı sabit ile tanımlanmıştır. Bu şekilde tanımlamanın avantajı sadece #define satırında değişiklik yapılarak dizi boyutunun değiştirilebilmesidir. C dilinde dizi indisleri sıfırdan başlar. Bu nedenle x ve y dizilerinin indisleri 0-99 arasındadır. 3.2 Pointer Kullanımı Pointer, bir değişkene bellekte ayrılan yerin adresini içeren bir değişken tipidir. /*prg18*/ #include<conio.h> int i; int *ptr; char cvp; do printf("\nbir sayi girin"); scanf("%i",&i); ptr=&i; printf("girdiginiz sayi=%i, adresi=%u",i,ptr); printf("devam mi? e/h"); cvp=getch(); while(cvp=='e' cvp=='e'); 3.3 Karakter Dizileri Örneği char değişken tipi tek bir karakteri tanımlar. Bir kelime ya da cümleyi saklayabilmek için char tipinde bir dizi kullanmak gerekir. Dizi kullanılmasından dolayı, dizi boyutunun yani saklayacağımız karakter bilginin uzunluğunu belirlemek zorunludur. Karakter dizilerinde girilen karakterin bitişi \0 ile belirlenir. Bu karakter ASCII kodu sıfır olan karakter olup, rakam olarak İ.Ö.BİLDİRİCİ,

22 0 ile ilgisi yoktur. Karakterin bitişi bu şekilde belirtilmek zorunda olduğundan tanımlanan uzunluğun tamamı kullanılamaz, bir eksiğine kadar kullanılabilir. Örnek: S e l a m \0 Uzunluğu 6 olan bu dizide son karakter \0 olmak zorunda olduğundan beş karakterlik kısmı kullanılabilir. Yukarıdaki değişkenin uzunluğu 10 olsaydı, S e l a m \0 Dört karakterlik kısım kullanılmazdı. Kullanılamayan kısımlar (6,7,8,9) aslında boş değildir. Buralarda compiler tarafından atanmış rasgele değerler ya da önceden kalma değerler olabilir. Karakter işlemleri için çok sayıda kütüphane fonksiyonu olduğundan, çoğu kez karakterin sonlandırılmasıyla uğraşılmasına gerek kalmaz. Sadece tanımlanan uzunluğun bir karakterinin \0 için kullanılacağının bilinmesi yeterlidir. Aşağıdaki kod kullanıcıya adı ve soyadını sorarak, bir karakter dizisine atamaktadır. Ardından ilk boşluk aranarak (space) onun yerine \0 atanıp, karakterin soyadı kısmı kesilmektedir. /*prg19*/ #include<string.h> #include<conio.h> int i; char cvp, adsoyad[80]; do printf("\nadinizi soyadinizi girin:"); gets(adsoyad); printf("\nadiniz soyadiniz:%s",adsoyad); printf("\nuzunlugu=%i",strlen(adsoyad)); for (i=0;i<=79;i++) if(adsoyad[i]==' ') adsoyad[i]='\0'; break; printf("\nadiniz:%s",adsoyad); printf("\ndevam mi? e/h"); cvp=getch(); while(cvp=='e' cvp=='e'); Yukarıda kullanılan gets ve strlen fonksiyonları, string.h kütüphanesine ait fonksiyonlardır. gets, scanf fonksiyonu gibi çalışır, ekrandan karakter okunmasını sağlar. Strlen ise karakterin geçerli uzunluğunu verir. Yukarıdaki kodda adsoyad dizisinin tanımlı uzunluğu 80 dir. Ancak bu 80 karakterin bir kısmı kullanılır. strlen programın çalışması sırasında kullanıcı tarafından girilen kısmının uzunluğunu verir. Örneğin kullanıcı Ali Kuş şeklinde bir giriş yapmış ise, strlen geriye 7 değerini döndürür. Bunun anlamı ilk 7 karakterlik kısım dolu, sekizinci karakterde \0 mevcut demektir, geri kalan karakterler kullanılmamaktadır. İ.Ö.BİLDİRİCİ,

23 4. FONKSİYON KULLANILAN PROGRAMLAR 4.1 Fonksiyonlara Değer Aktarma Fonksiyonlar arası değer aktarma iki şekilde olabilir. Çağıran fonksiyon çağırılan fonksiyona ilgili değişkenlerin değerini aktarabilir ya da adresini aktarabilir. Değer aktarma durumunda çağırılan fonksiyonda yapılan değişiklik çağıran fonksiyonda etkili olmaz. Değişikliklerin etkili olması için adres aktarması yapmak gereklidir. Bu amaçla pointer kullanılması gereklidir. İki değişkenin değerini değiş tokuş etmek amacıyla aşağıdaki kodu yazalım. /*prg20*/ #include <stdio.h> void degistokus(int, int ); /*fonksiyon prototipi*/ int x,y; printf("\nx="); scanf("%i",&x); printf("\ny="); scanf("%i",&y); degistokus(x,y); /*değer aktarma*/ printf("\nx=%i\ty=%i",x,y); void degistokus(int a, int b) int c; c=a; a=b; b=c; Yukarıdaki kodu çalıştırın. Ana fonksiyonda x ve y değişkenlerine atanan değerlerin degistokus fonksiyonunda değiş tokuş edilmesine rağmen ana fonksiyonda etkili olmadığı görülecektir. Bunun nedeni ana fonksiyondaki değişkenlerin bir kopyalarının alt fonksiyona aktarılmasıdır. Alt fonksiyondaki değişikliğin etkili olması için yukarıdaki kod aşağıdaki şekilde düzenlenmelidir. /*prg21*/ #include <stdio.h> void degistokus(int *, int *); /*fonksiyon prototipi*/ int x,y; printf("\nx="); scanf("%i",&x); printf("\ny="); scanf("%i",&y); degistokus(&x,&y); /*adres aktarma*/ printf("\nx=%i\ty=%i",x,y); void degistokus(int *a, int *b) int c; İ.Ö.BİLDİRİCİ,

24 c=*a; *a=*b; *b=c; Yukarıdaki kodlarda & operatörü kullanılmıştır. Adres operatörü olarak tanımlanan & operatörü bir değişkenin adresini verir. Bunun tersi * operatörüdür. * operatörü verilen adresteki değeri döndürür (içerik alma operatörü). 4.2 Açıklık Açısının Fonksiyon Olarak Programlanması Açıklık açısını hesaplayan kod bir fonksiyon olarak yazılırsa, değişik programlarda kolaylıkla yeniden kullanılabilir. /*prg22*/ #include<conio.h> #include<math.h> double aciklik_acisi(double x1,double y1,double x2,double y2) double pi,t; /* pi sayısı...*/ pi=2.0*asin(1.0); /* açıklık açısı */ if(abs(x2-x1)<=1.e-7) /*payda sıfır ise*/ if(y2>y1) t=100.0; else t=300.0; else x1=x2-x1; y1=y2-y1; t=atan(y1/x1)*200.0/pi; if(x1<0)t=t+200; if(t<0) t=t+400; return(t); double x1,y1,x2,y2,t; char cvp; do printf("\nx1="); scanf("%lf",&x1); printf("y1="); scanf("%lf",&y1); printf("x2="); scanf("%lf",&x2); printf("y2="); scanf("%lf",&y2); t=aciklik_acisi(x1,y1,x2,y2); printf("\naciklik Acisi=%.5lf",t); printf("\ndevam mi?e/h"); cvp=_getch(); while(cvp!='h'); İ.Ö.BİLDİRİCİ,

25 printf("\n---->bitti"); Fonksiyon prototipi kullanılarak yazım: /*prg23*/ #include<conio.h> #include<math.h> double aciklik_acisi(double,double,double,double); double x1,y1,x2,y2,t; char cvp; do printf("\nx1="); scanf("%lf",&x1); printf("y1="); scanf("%lf",&y1); printf("x2="); scanf("%lf",&x2); printf("y2="); scanf("%lf",&y2); t=aciklik_acisi(x1,y1,x2,y2); printf("\naciklik Acisi=%.5lf",t); printf("\ndevam mi?e/h"); cvp=_getch(); while(cvp!='h'); printf("\n---->bitti"); double aciklik_acisi(double x1,double y1,double x2,double y2) double pi,t; /* pi sayısı...*/ pi=2.0*asin(1.0); /* açıklık açısı */ if(abs(x2-x1)<=1.e-7) /*payda sıfır ise*/ if(y2>y1) t=100.0; else t=300.0; else x1=x2-x1; y1=y2-y1; t=atan(y1/x1)*200.0/pi; if(x1<0)t=t+200; if(t<0) t=t+400; return(t); İ.Ö.BİLDİRİCİ,

26 4.3 Açıklık Açısı ve Kenarı Birlikte Döndüren Fonksiyon Bir fonksiyonun iki değer döndürebilmesi için pointer kullanmak gerekir. Fonksiyon geriye direkt olarak bir değer döndürmemekte, çağıran fonksiyondan (main) gönderilen iki değişkenin adresini alarak hesaplanan değerleri bu adresler yoluyla çağıran fonksiyona aktarmaktadır. Öte yandan, fonksiyon kodu main fonksiyonundan sonra yer aldığı için, main fonksiyonundan önce fonksiyonun prototipi verilmiştir. /*prg24*/ #include<conio.h> #include<math.h> void aci_kenar(double,double,double,double,double *,double *); double x1,y1,x2,y2,t,s; char cvp; do printf("\nx1="); scanf("%lf",&x1); printf("y1="); scanf("%lf",&y1); printf("x2="); scanf("%lf",&x2); printf("y2="); scanf("%lf",&y2); aci_kenar(x1,y1,x2,y2,&t,&s); printf("\naciklik Acisi=%.5lf\tkenar=%.2lf",t,s); printf("\ndevam mi?e/h"); cvp=_getch(); while(cvp!='h'); printf("\n---->bitti"); void aci_kenar(double x1,double y1,double x2,double y2,double *t,double *s) double pi; /* kenar hesabı*/ *s=sqrt(pow((x2-x1),2)+pow((y2-y1),2)); /* pi sayısı...*/ pi=2.0*asin(1.0); /* açıklık açısı */ if(abs(x2-x1)<=1.e-7) /*payda==0 mi?*/ if(y2>y1) *t=100.0; else *t=300.0; else x1=x2-x1; y1=y2-y1; *t=atan(y1/x1)*200.0/pi; if(x1<0) *t=*t+200; if(*t<0) İ.Ö.BİLDİRİCİ,

27 *t=*t+400; 4.4 Fonksiyonlar Arası Dizi Aktarma Fonksiyonlara değişkenlerin aktarılmasını daha önce inceledik. Fonksiyonlar arası dizi değişkenlerinin aktarılması biraz farklıdır. Dizi değişkenleri için tanımlanan değişken ismi parantezsiz kullanılırsa o dizinin ilk elemanının pointerını tanımlar. x biri dizi olmak üzere aşağıdaki iki ifade birbiri ile eşdeğerdir. x &x[0] Aşağıdaki örnekte 5 elemanına atama yapılan bir dizinin bir fonksiyona aktarılarak ekranda görüntülenmesi sağlanmaktadır. Burada dizinin aktarılma şekline ve fonksiyon prototipinin nasıl tanımlandığına dikkat edin. /*prg25*/ #include <stdio.h> #define max 100 void diziyaz(double *,int); /*fonksiyon prototipi*/ double x[max]; int i,j; i=5; for(j=0;j<i;j++) x[j]=2*j+1; diziyaz(x,i); void diziyaz (double *x,int i) int j; for(j=0;j<i;j++) printf("\nx(%i)=%.0lf",j,x[j]); Aşağıdaki örnek ise karakter dizileri fonksiyonlara aktarılmaktadır. Buradaki fonksiyonlardan yaz1 de fonksiyona aktarılan karakter dizisinin içeriği, dizi kullanılarak ekrana yazılmakta, yaz2 de ise aynı işlem pointer kullanılarak gerçekleştirilmektedir. Bu örnekte pointer ve dizi kavramlarının birbirleriyle ilişkisi daha açık olarak görülmektedir. /*prg26*/ #include <stdio.h> void yaz1(char *text) int x=0; while(text[x]!='\0') putchar(text[x]); x++; void yaz2(char *text) İ.Ö.BİLDİRİCİ,

şeklinde tanımlanmıştır. O halde, dosyaları daha önceki bilgilerimizi kullanarak FILE *Dosya1, *Dosya2;

ş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ı

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

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ı

C Programlama Dilininin Basit Yapıları

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

Detaylı

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ı

C Konsol Giriş Çıkış Fonksiyonları

C Konsol Giriş Çıkış Fonksiyonları C Konsol Giriş Çıkış Fonksiyonları Öğr. Gör. M. Ozan AKI Rev 1.0 Stringlerde Özel Karakterler \n : Bir sonraki satırın ilk sütununa git \b : Backspace (önceki karakteri sil) \a : Bip sesi \\ : Ters bölü

Detaylı

10. DOSYA GİRİŞ ÇIKIŞ FONKSİYONLARI

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ı

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ı

Temel Dosya İşlemleri. Kütük Organizasyonu 1

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ı

Eln 1001 Bilgisayar Programlama I

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ı

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ı

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ı 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ı

İÇİNDEKİLER İÇİNDEKİLER KODLAB

İÇİNDEKİLER İÇİNDEKİLER KODLAB İÇİ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ı

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA

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ı

Temel Bilgisayar Programlama

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ı

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

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ı

PROGRAMLAMA. Dosyalama İşlemleri. Yrd. Doç. Dr. Bülent Çobanoğlu. Sakarya Üniversitesi Mekatronik Mühendisliği. Yrd.Doç.Dr.

PROGRAMLAMA. Dosyalama İşlemleri. Yrd. Doç. Dr. Bülent Çobanoğlu. Sakarya Üniversitesi Mekatronik Mühendisliği. Yrd.Doç.Dr. PROGRAMLAMA Dosyalama İşlemleri Yrd. Doç. Dr. Bülent Çobanoğlu Sakarya Üniversitesi Mekatronik Mühendisliği Yrd.Doç. Dosyalama İşlemleri Program ve verileri daha sonra kullanabilmek amacı ile kalıcı olarak

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ı

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) 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 PROGRAMLAMA DİLİNE GİRİŞ

C PROGRAMLAMA DİLİNE GİRİŞ C PROGRAMLAMA DİLİNE GİRİŞ C Dilinin Tarihçesi 1972 de Dennis Ritchie tarafından AT&T Bell Laboratuarlarında B dilinden geliştirildi. C dili konusundaki ilk kitap 1978 de Dennis Ritchie ve Brain Kernighan

Detaylı

BÖLÜM 1b: C++ PROGRAMLAMANIN YAPISI. C++, hard diskte TC, BIN, INCLUDE, LIB gibi alt dizinlere yüklenir.

BÖLÜM 1b: C++ PROGRAMLAMANIN YAPISI. C++, hard diskte TC, BIN, INCLUDE, LIB gibi alt dizinlere yüklenir. BÖLÜM 1b: C++ PROGRAMLAMANIN YAPISI C++, hard diskte TC, BIN, INCLUDE, LIB gibi alt dizinlere yüklenir. TC programı çalıştırıldığında C++ çalışma ortamı açılır. C++ çalışma ortamında istenirse yeni bir

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ı

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ı

Deney 7: Fonksiyon Tanımlama ve Parametre Aktarım Yöntemleri

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ı

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

Programlama Dilleri. C Dili. Programlama Dilleri-ders02/ 1 Programlama Dilleri C Dili Programlama Dilleri-ders02/ 1 Değişkenler, Sabitler ve Operatörler Değişkenler (variables) bellekte bilginin saklandığı gözlere verilen simgesel isimlerdir. Sabitler (constants)

Detaylı

PASCAL PROGRAMLAMA DİLİ YAPISI

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

Detaylı

NAZMİYE DEMİREL ORTAOKULU BİLİŞİM TEKNOLOJİLERİ DERSİ 1. DÖNEM 6. SINIFLAR DERS NOTU EXCEL 2007 DERS NOTLARI

NAZMİYE DEMİREL ORTAOKULU BİLİŞİM TEKNOLOJİLERİ DERSİ 1. DÖNEM 6. SINIFLAR DERS NOTU EXCEL 2007 DERS NOTLARI EXCEL 2007 DERS NOTLARI Bir hesap tablosu programıdır. Excel, her türlü veriyi (özellikle sayısal verileri) tablolar ya da listeler halinde tutma ve bu verilerle ilgili ihtiyaç duyacağınız tüm hesaplamaları

Detaylı

BİLG214. 20.10.2009 Dr. Mustafa T. Babagil 1

BİLG214. 20.10.2009 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ı

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ı

Karabük Üniversitesi, Mühendislik Fakültesi...www.ibrahimcayiroglu.com WEB TEKNOLOJİLERİ

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ı

8. İŞARETCİLER (POINTERS)

8. İŞARETCİLER (POINTERS) 8. İŞARETCİLER (POINTERS) Verilerin bilgisayar hafızasında tutulduğu fiziki alan adres olarak tanımlanabilir. Adres, hem donanımla hem de yazılımla ilişkilidir. Donanımsal açıdan adres bellekte yer gösteren

Detaylı

Pascalda oluşturulacak dosyalar değişkenler gibi programın başında tanımlanır.

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ı

PROGRAMLAMA TEMELLER. C Program Yap s

PROGRAMLAMA TEMELLER. C Program Yap s PROGRAMLAMA TEMELLER 1 C Program Yap s 2 Aç klama sat r Program kodlar n makine diline çeviren C dili derleyicisi /* ve */ karakterleri aras nda kalan bölümleri ihmal eder. /* Aç klama Sat r */ Sadece

Detaylı

B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri

B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri 49 Yrd. Doç. Dr. Yakup EMÜL, Bilgisayar Programlama Ders Notları (B02) Çalıştırılabilir C ifadeleri ya bir işlem gerçekleştirir ( girilen verilerin toplanması

Detaylı

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş Yard. Doç. Dr. Alper Kürşat Uysal Bilgisayar Mühendisliği Bölümü akuysal@anadolu.edu.tr Ders Web Sayfası: http://ceng.anadolu.edu.tr/ders.aspx?dersid=101

Detaylı

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

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

Detaylı

C Dosyalama. Öğr. Gör. M. Ozan AKI. Rev 1.0

C Dosyalama. Öğr. Gör. M. Ozan AKI. Rev 1.0 C Dosyalama Öğr. Gör. M. Ozan AKI Rev 1.0 Dosyalama Dosyalar, disk üzerinde verilerin kalıcı olarak saklanmasını ve başka bir ortama kopyalanarak taşınabilmesini sağlayan yapılardır. Dosyalama C Dili ve

Detaylı

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK MATLAB de Bilgisayar Programlama Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK ALT PROGRAMLAR:M-Fonksiyon Yapısı function cikis_ifadesi1, 2,, n =fonksiyon_adi

Detaylı

3- Turbo Pascal Programlamada Giriş Çıkış İşlemleri

3- Turbo Pascal Programlamada Giriş Çıkış İşlemleri 3- Turbo Pascal Programlamada Giriş Çıkış İşlemleri 3.1 Turbo Pascal Bilgisayar Programına Veri Girişi Programlamanın en önemli kısımlarından birisi programa veri girişinin yapılmasıdır. Yazdığımız bir

Detaylı

Microsoft Office Excel 2007

Microsoft Office Excel 2007 2014 Microsoft Office Excel 2007 Öğr. Gör. Serkan KORKMAZ Harran Üniversitesi Birecik Meslek Yüksekokulu İçindekiler MİCROSOFT OFFİCE EXCEL 2007... 4 EXCEL ORTAMINDA ÇALIŞMAK... 4 EXCEL ÇALIŞMA SAYFASI...

Detaylı

Fen ve Mühendislik Uygulamalarında MATLAB

Fen ve Mühendislik Uygulamalarında MATLAB Fen ve Mühendislik Uygulamalarında MATLAB Dosya Yönetimi Fonksiyon Yapısı Doç. Dr. İrfan KAYMAZ MATLAB Ders Notları DOSYA YÖNETİMİ Şu ana kadar bir programda hesaplanan veya elde edilen veriler RAM de

Detaylı

Özyineleme (Recursion)

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

Detaylı

MİCROSOFT WORD. Araç çubukları: menü çubuğundan yapabileceğimiz işlemleri daha kısa zamanda araç çubukları ile yapabiliriz.

MİCROSOFT WORD. Araç çubukları: menü çubuğundan yapabileceğimiz işlemleri daha kısa zamanda araç çubukları ile yapabiliriz. MİCROSOFT WORD Office programlarının içersinde genelde yazı yazmak amaçlı kullanılan bir programdır Microsoft Word. Aşıdaki şekilde çalışma sayfası görülür. Şimdi Word çalışma sayfasını inceleyelim. Microsoft

Detaylı

C Konsol ve Komut Satırı

C Konsol ve Komut Satırı C Konsol ve Komut Satırı Öğr. Gör. M. Ozan AKI Rev 1.0 C:\> Konsol ekranı, işletim sistemi ve dosya yönetiminin metin tabanlı yönetilebilmesini sağlayan arabirimdir. Windows işletim sistemi ortaya çıkmadan

Detaylı

İNTERNET TABANLI PROGRAMLAMA

İNTERNET TABANLI PROGRAMLAMA İNTERNET TABANLI PROGRAMLAMA 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ı

13 Aralık 2007. Đlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL. Đlgili Modül/ler : Raporlar. Kullanıcı Tanımlı Raporlar Bölümünden Yapabildiklerimiz

13 Aralık 2007. Đlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL. Đlgili Modül/ler : Raporlar. Kullanıcı Tanımlı Raporlar Bölümünden Yapabildiklerimiz 13 Aralık 2007 Đlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL Đlgili Modül/ler : Raporlar KULLANICI TANIMLI RAPORLAR Kullanıcı Tanımlı Raporlar Bölümünden Yapabildiklerimiz Kendi isteklerinize özel rapor tasarımları

Detaylı

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

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

Detaylı

MatLab. Mustafa Coşar mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar

MatLab. Mustafa Coşar mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar MatLab Mustafa Coşar mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar Sunum Planı MatLab Hakkında Ekran Yapısı Programlama Yapısı Matlab da Programlamaya Giriş Sorular MatLab Hakkında MatLab;

Detaylı

Örnek: İki fonksiyondan oluşan bir program. Fonksiyon Tanımı

Ö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ı

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ı

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é 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ı

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ş Data Hiyerarşisi Files (Dosyalar) ve Streams (Kaynaklar)

Detaylı

Algoritma Geliştirme ve Veri Yapıları 3 Veri Yapıları. Mustafa Kemal Üniversitesi

Algoritma Geliştirme ve Veri Yapıları 3 Veri Yapıları. Mustafa Kemal Üniversitesi Algoritma Geliştirme ve Veri Yapıları 3 Veri Yapıları Veri yapısı, bilginin anlamlı sırada bellekte veya disk, çubuk bellek gibi saklama birimlerinde tutulması veya saklanması şeklini gösterir. Bilgisayar

Detaylı

DENEME SINAVI CEVAP ANAHTARI

DENEME SINAVI CEVAP ANAHTARI DENEME SINAVI CEVAP ANAHTARI ECDL BAŞLANGIÇ Bilgisayarı Kullanmak ve Dosyaları Yönetmek 1) Bilgisayar ı doğru şekilde kapatıp, açmak için uygun metodu uygulayınız.(bilgisayarı kapatın ve tekrar açın.)

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ı

SM 100 Terazi Ayarları. Digi SM 100. SM 100 Terazi Ayarları

SM 100 Terazi Ayarları. Digi SM 100. SM 100 Terazi Ayarları Digi SM 100 SM 100 Terazi Ayarları Digi SM 100 Terazi Ayarları Teraziyi ayarlamaya başlamak için öncelikle X S Z ENTER Raporlar Program Ayarlar FONKSIYON Bölümlerine geçiş yapabilmemiz gerekmektedir. Bunun

Detaylı

Bigisayar Programlama

Bigisayar Programlama Bigisayar Programlama (GÜZ 2015) DERS-02: C de Programlamaya Giriş Yrd. Doç Dr. Yakup EMÜL Cumhuriyet Üniv., Teknoloji Fakültesi Yazılım Mühendisliği Bölümü yakupemul@cumhuriyet.edu.tr Ofis Saatleri :

Detaylı

Göstericiler (Pointers)

Göstericiler (Pointers) C PROGRAMLAMA Göstericiler (Pointers) C programlama dilinin en güçlü özelliklerinden biridir. Göstericiler, işaretçiler yada pointer adı da verilmektedir. Gösterici (pointer); içerisinde bellek adresi

Detaylı

GİRİŞ/ÇIKIŞ VE TANIMLAMA DEYİMLERİ

GİRİŞ/ÇIKIŞ VE TANIMLAMA DEYİMLERİ GİRİŞ/ÇIKIŞ VE TANIMLAMA DEYİMLERİ Giriş/Çıkış deyimlerine neden gerek vardır? Biçimli giriş/çıkış deyimleri, Klavye den veri girişi Dosya dan veri okuma ve dosyaya yazma Ekrana sonuçları yazdırma, Yazıcı,

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ı

Matematiksel Operatörler

Matematiksel Operatörler Matematiksel Operatörler Genel olarak matematiksel işlemlerde kullanılan operatörlerdir. Operatör Anlamı Açıklama ^ Üs Alma C^3 Matematikdeki üs operatörüdür. Verilen ilk sayının ikinci sayı kadar kuvvetini

Detaylı

int printf (const char *format [, argument,...]);

int printf (const char *format [, argument,...]); 1 printf (): Fonksiyonu Sayısal ve alfanümerik değerleri ekrana (çıkış elemanı olarak tanımlı ise) göndermek için kullanılan formatlı çıkış fonksiyonudur. Bu fonksiyon stdio.h başlık dosyası altında tanımlıdır.

Detaylı

SIMAN KULLANIM KILAVUZU

SIMAN KULLANIM KILAVUZU SIMAN KULLANIM KILAVUZU Önder Öndemir SIMAN Simülasyon programı Model Çatı ve Deneysel Çatı olmak üzere iki kısımdan oluşur. Model çatı genel itibariyle modullerin ve işlem bloklarının yazıldığı kısımdır.

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ü 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ı

Döngü (Loop) Deyimleri / Veri Belirleyicileri / Matematiksel Fonksiyonlar

Döngü (Loop) Deyimleri / Veri Belirleyicileri / Matematiksel Fonksiyonlar Bölüm 5 Döngü (Loop) Deyimleri / Veri Belirleyicileri / Matematiksel Fonksiyonlar İçindekiler 5.1 Formatlı Yazdırma............................ 34 5.2 Döngü Deyimleri............................. 34 5.2.1

Detaylı

Değişkenler tanımlanırken onlara ne tür veriler atanabileceği de belirtilir. Temel veri türleri oldukça azdır:

Değişkenler tanımlanırken onlara ne tür veriler atanabileceği de belirtilir. Temel veri türleri oldukça azdır: C VERİ TÜRLERİ BASİT VERİ TÜRLERİ Değişkenler, program içinde üzerinde işlem yapılan, veri saklanan ve durumlarına göre programın akışı sağlanan nesnelerdir. C de bir değişken kullanılmadan önce tanımlanmalıdır.

Detaylı

İŞLETMELERDE BECERİ EĞİTİMİ DERSİ MİCROSOFT WORD 2007 ÇALIŞMALARI

İŞLETMELERDE BECERİ EĞİTİMİ DERSİ MİCROSOFT WORD 2007 ÇALIŞMALARI 1 2 3 Microsoft Office Word Belgesinde çalışmamızı tamamladıktan sonra simgesine tıkladığımızda açılan menüde dosyamızı kaydedebiliriz veya yazıcıdan çıktısını alabiliriz. Çalışmamızda değişiklik yapmak

Detaylı

T.C. istanbul ÜNiVERSiTESi ÖĞRENCi BiLGi SiSTEMi. ÖĞRETiM ELEMANI KULLANIM KILAVUZU

T.C. istanbul ÜNiVERSiTESi ÖĞRENCi BiLGi SiSTEMi. ÖĞRETiM ELEMANI KULLANIM KILAVUZU T.C. istanbul ÜNiVERSiTESi ÖĞRENCi BiLGi SiSTEMi ÖĞRETiM ELEMANI KULLANIM KILAVUZU 1 1. Sisteme Giriş Nokta Üniversite Otomasyonu sistemini kullanabilmek için öncelikle Windows işletim sisteminde bulunan

Detaylı

Big Endian & Little Endian K.Atilla Toker İzmir Üniversitesi Meslek Yüksek Okulu Bilgisayar Programcılığı 11-2009 Ver:01

Big Endian & Little Endian K.Atilla Toker İzmir Üniversitesi Meslek Yüksek Okulu Bilgisayar Programcılığı 11-2009 Ver:01 Bilgisayar i Mimarisii i Big Endian & Little Endian K.Atilla Toker İzmir Üniversitesi Meslek Yüksek Okulu Bilgisayar Programcılığı 11-2009 Ver:01 İZMIR ÜNIVERSITESI İZMIR ÜNIVERSITESI MYO BILGISAYAR PROGRAMLAMA

Detaylı

Internet Programming II. Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı

Internet Programming II. Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı Internet Programming II Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı Öğr. Gör. Murat KEÇECĠOĞLU 11-14 May. 2014 Form Form İşlemleri Tarayıcıdan bilgi alarak işlem gerçekleştirme FORM elemanları

Detaylı

Bilgisayar Programlama

Bilgisayar Programlama Bilgisayar Programlama M Dosya Yapısı Kontrol Yapıları Doç. Dr. İrfan KAYMAZ Matlab Ders Notları M-dosyası Genel tanıtımı : Bir senaryo dosyası (script file) özel bir görevi yerine getirmek için gerekli

Detaylı

Sunum İçeriği. Programlamaya Giriş 22.03.2011

Sunum İçeriği. Programlamaya Giriş 22.03.2011 Programlamaya Giriş Nesne Tabanlı Programlamaya Giriş ve FONKSİYONLAR Sunum İçeriği Nesne Tabanlı Programlama Kavramı Fonksiyon tanımlama ve kullanma Formal Parametre nedir? Gerçel Parametre nedir? Fonksiyon

Detaylı

DENEME SINAVI. ECDL BAŞLANGIÇ Hesap Tablosu

DENEME SINAVI. ECDL BAŞLANGIÇ Hesap Tablosu DENEME SINAVI ECDL BAŞLANGIÇ Hesap Tablosu 1. Hesap Çizelgesi (Microsoft Office - Excel) uygulamasını açınız. Başlat > Programlar > Microsoft Office > Microsoft Office Excel 2003 yolu izlenerek Excel programı

Detaylı

Programlama Dilleri Laboratuvarı

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ı

Algoritmalar ve Programlama. Algoritma

Algoritmalar ve Programlama. Algoritma Algoritmalar ve Programlama Algoritma Algoritma Bir sorunu / problemi çözmek veya belirli bir amaca ulaşmak için gerekli olan sıralı mantıksal adımların tümüne algoritma denir. Algoritma bir sorunun çözümü

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ı

ASP.NET ile Bir Web Sitesi Oluşturma

ASP.NET ile Bir Web Sitesi Oluşturma 29,30 Eylül 2011 ASP.NET ile Bir Web Sitesi Oluşturma ASP.NET sitesi oluşturmak için File menüsündeki, New açılır listesindeki, Web Site komutuna tıklıyoruz Açılan pencereden C# içindeki ASP.NET Web Site

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.

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ı

İŞLETİM SİSTEMLERİ. İŞLETİM SİSTEMİ Kavramı. Klasör ve Dosya Mantığı. Klasör ve Dosya Mantığı

İŞLETİM SİSTEMLERİ. İŞLETİM SİSTEMİ Kavramı. Klasör ve Dosya Mantığı. Klasör ve Dosya Mantığı İŞLETİM SİSTEMİ Kavramı İŞLETİM SİSTEMLERİ İşletim sistemini, bir bilgisayar sisteminde kullanıcı ile iletişim kurarak, donanım ve yazılım nitelikli kaynakların kullanıcılar arasında adil bir biçimde paylaştırılmasını

Detaylı

C# Programlama Dili. İlk programımız Tür dönüşümü Yorum ekleme Operatörler

C# Programlama Dili. İlk programımız Tür dönüşümü Yorum ekleme Operatörler C# Programlama Dili İlk programımız Tür dönüşümü Yorum ekleme Operatörler 1 İlk Programımız Bu program konsol ekranına Merhaba dünya! yazıp kapanır. Programı geçen derste anlatıldığı gibi derleyin, sonra

Detaylı

BM 102 Bilgisayar Programlama II. Windows Form Application

BM 102 Bilgisayar Programlama II. Windows Form Application BM 102 Bilgisayar Programlama II Windows Form Application Uygulama 1 İki TextBox girilien sayıların toplamı. Uygulama 1 Windows Form Uygulaması projesi açma Forma iki TextBox ile bir Label ekleme Forma

Detaylı

Ecza Depolarına Ait E-Fatura Aktarım Modülü

Ecza Depolarına Ait E-Fatura Aktarım Modülü Bilge Elektronik Ltd. Şti. Eczanem Otomasyon Sistemi Ecza Depolarına Ait E-Fatura Aktarım Modülü 1 1. SELÇUK/AS/NEVZAT/DİLEK Ecza Depoları E-Fatura Aktarımı.. 3 2. HEDEF Ecza Deposu E-Fatura Aktarımı..

Detaylı

1. MİCROSOFT EXCEL 2010 A GİRİŞ

1. MİCROSOFT EXCEL 2010 A GİRİŞ 1. MİCROSOFT EXCEL 2010 A GİRİŞ 1.1. Microsoft Excel Penceresi ve Temel Kavramlar Excel, Microsoft firması tarafından yazılmış elektronik hesaplama, tablolama ve grafik programıdır. Excel de çalışılan

Detaylı

ELN1001 BİLGİSAYAR PROGRAMLAMA I

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ı

Bilgisayar Programlama MATLAB

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

Detaylı

Temel Giriş/Çıkış Fonksiyonları (Devam) Örnek :

Temel Giriş/Çıkış Fonksiyonları (Devam) Örnek : Temel Giriş/Çıkış Fonksiyonları (Devam) Örnek : scanf() Fonksiyonu Birçok programda ekrana verilerin yazdırılması yanısıra klavyeden veri okunması gerekebilir. scanf() fonksiyonu klavyeden veri okumak

Detaylı

10 LU SAYISAL SİSTEMİ İLE 2 Lİ SAYISAL SİSTEMİ ARASINDA ÇEVİRİM UYGULAMASI

10 LU SAYISAL SİSTEMİ İLE 2 Lİ SAYISAL SİSTEMİ ARASINDA ÇEVİRİM UYGULAMASI 10 LU SAYISAL SİSTEMİ İLE 2 Lİ SAYISAL SİSTEMİ ARASINDA ÇEVİRİM UYGULAMASI Sayısal Sistemler Sayısal sistem, sayıları temsil eden simgeler için bir yazma sistemi yani matematiksel bir gösterim sistemidir.

Detaylı

Sıralı bir dosyayı açmak için FileOpen komutundan faydalanılır. Bu komutun genel kullanılış biçimi aşağıdaki gibidir:

Sıralı bir dosyayı açmak için FileOpen komutundan faydalanılır. Bu komutun genel kullanılış biçimi aşağıdaki gibidir: DOSYALAR Visual Basic de Sıralı ve Rasgele olmak üzere iki tür dosya vardır. Dosyalar en basit ifadesi ile verileri disk üzerinden (hard disk, disket vs.) işlemek amacıyla kullanılırlar ve bu yönü ile

Detaylı

VISUAL BASIC DE İŞLETİM SİSTEMİ DENETİM KOMUTLARI VE FONKSİYONLARI

VISUAL BASIC DE İŞLETİM SİSTEMİ DENETİM KOMUTLARI VE FONKSİYONLARI VISUAL BASIC DE İŞLETİM SİSTEMİ DENETİM KOMUTLARI VE FONKSİYONLARI Visual basic kodları yazılırken, yapılması istenen işlerin yanı sıra sistem ile ilgili bazı işlerin yapılması da (klasör oluşturma silme,

Detaylı

UFRS ANALİZ DOKÜMANI

UFRS ANALİZ DOKÜMANI UFRS ANALİZ DOKÜMANI Versiyon 7.0.7 MatriksMatriksMatriksMatriksMa 25.10.2013 triksmat Bilgi Dağıtım Hizmetleri A.Ş. riksmatriksmatriksmatriksmatriksiksmatr iksmatriksmatriksmatriksmatriksmatriks İÇİNDEKİLER

Detaylı

Hafta 2 EkLab 1. C ye Giriş. Ozan ŞENYAYLA Çağrı YENİCE

Hafta 2 EkLab 1. C ye Giriş. Ozan ŞENYAYLA Çağrı YENİCE Hafta 2 EkLab 1 C ye Giriş Ozan ŞENYAYLA Çağrı YENİCE http://ozansenyayla.com/programlama.php KAYNAK: Görkem Paçacı / İlker Korkmaz / Kaya Oğuz - İEU BT Hafta 2 GİRİŞ EkLab 1 Programlama, genel olarak,

Detaylı

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

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ı

BM102 BİLGİSAYAR PROGRAMLAMA II LABORATUVAR UYGULAMALARI. 3Hafta

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ı

// hataları işaret eden referans

// hataları işaret eden referans System sınıfı java.lang.object java.lang.system public final class System extends Object System sınıfı, java.lang paketi içindedir. Platformdan bağımsız olarak sistem düzeyindeki eylemleri belirleyen dingin

Detaylı

Nesneye Dayalı Programlama Laboratuvarı

Nesneye Dayalı Programlama Laboratuvarı 2013 2014 Nesneye Dayalı Programlama Laboratuvarı Ders Sorumlusu: Yrd. Doç. Dr. Salih GÖRGÜNOĞLU Laboratuvar Sorumluları: M. Zahid YILDIRIM İÇİNDEKİLER Deney 1: Visual Studio ve C++'a Giriş Uygulamaları...

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 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ı

Değişken atama Kullanıcıdan veri girişi istendiğinde kullanılır. 1. Bir değişkene değer atama (örn: a=4 gibi) 2. Klavyeden veri girme

Değişken atama Kullanıcıdan veri girişi istendiğinde kullanılır. 1. Bir değişkene değer atama (örn: a=4 gibi) 2. Klavyeden veri girme Değişken atama Kullanıcıdan veri girişi istendiğinde kullanılır 1. Bir değişkene değer atama (örn: a=4 gibi) 2. Klavyeden veri girme 3. Bilgisayar belleğinde saklanan verileri bir dosyadan okumak 1. Bir

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 1 Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net Bilgisayar Programlamaya C ile Programlamaya Yazılım: Bilgisayarın işlemler yapması ve karar vermesi

Detaylı

Adı Soyadı : Öğrenci No :

Adı Soyadı : Öğrenci No : Adı Soyadı : Öğrenci No : Soru 1 2 3 4 Toplam Not F.Ü TEKNOLOJİ FAKÜLTESİ YAZILIM MÜHENDİSLİĞİ BÖL. YMT111 VİZE SINAVI 2013 2014 Güz (03 Aralık 2013) SORULAR Toplam 4 soru 110 Puan, cevaplarınızı soru

Detaylı

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

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ı

www.elektrikogretmenleri.com

www.elektrikogretmenleri.com FIREWORKS (MENU OLUŞ TURMA) 1 Önce Başlat menüsü Programlar Adobe Web Premium CS3 Adobe Fireworks CS3 kısayol simgesi ile Fireworks programı açılır. 2 Fireworks programı açıldığında Karşımıza gelen Yeni

Detaylı