Algoritma ve Programlamaya Giriş

Slides:



Advertisements
Benzer bir sunumlar
Bölüm 2 C Dilinin Temelleri
Advertisements

switch - case Yapısı Döngü Yapıları
Kontrol Çevrimleri FOR WHILE DO-WHILE IF-ELSE SWITCH-CASE-DEFAULT
Bölüm 2: Program Denetimi
Soru1: kuvvet(taban,us) Şeklinde bir yinelenen fonksiyon yazın
Program Kontrol İfadeleri
PHP'de Program Denetimi
PROGRAM DENETİM DEYİMLERİ
The if statement. if Şartlı kontrol Koşul değimi doğru (1) yada yanlış (0) değeri üretir. Şartın doğru olması durumunda if satırından sonraki değimler.
Bölüm 2 C Diline Genel Bir Bakış. 1/29 /* Örnek1- toplama.c Klavyeden girilen iki tamsayının toplamını bulup ekrana yazar. Erkan Yasan */ #include.
Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz.
2. HAFTA 2. Hafta.
Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz.
Algoritma.  Algoritma, belirli bir görevi yerine getiren sonlu sayıdaki işlemler dizisidir.  Başka bir deyişle; bir sorunu çözebilmek için gerekli olan.
BİLGİSAYAR PROGRAMLAMA Ders 8: Fonksiyonlar Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar Mühendisliği.
BÖLÜM 4 PROGRAMLAMA DİLLERİ. PROGRAMLAMA DİLLERİNDE KULLANILAN VERİ TİPLERİ Bilgisayarda işlenen veriler iki türdür: Sayısal Alfasayısal.
BİLGİSAYAR PROGRAMLAMA Ders 11: İşaretçi (Pointer) Kullanımı Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar Mühendisliği.
BİLGİSAYAR PROGRAMLAMA MATLAB Yrd.Doç.Dr. Cengiz Tepe.
TC Windows Editörü DevC++. KURULUM PROGRAMIN KURULACAĞI YER BURADA BELİRLENİYOR.
Bölüm 4 Seçme Komutları Alıştırmalar
Örnek Sorular Bilgisayar Programlama BIL 107. Soru 1: Ekran çıktısında 66 yazması için boşlukları doldurunuz ______ i = 'A'; printf(____, i__); CEVAP:
Bölüm 5 Döngü Komutları while Komutu while Komutu Diğer Operatörler (Bileşik atama, artırma ve azaltma operatörleri ) Diğer Operatörler (Bileşik atama,
Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz.
1 Bölüm 3 Atama ve Girdi/Çıktı Komutları Alıştırmalar Bu bölümdeki problemler “C Dersi Çözümlü Problem Kitabı”, N. E. Ça ğ ıltay, C. E. Selbes, G. Tokdemir,
1 Bölüm 2 C Dilinin Temelleri Alıştırmalar Bu bölümdeki problemler “C Dersi Çözümlü Problem Kitabı”, N. E. Ça ğ ıltay, C. E. Selbes, G. Tokdemir, ve Ç.
Algoritma ve Programlamaya Giriş Ders 5. C Programlama Dili - 2.
Bölüm 2 C Dilinin Temelleri
BİLGİSAYAR PROGRAMLAMA DERSİ
Bilgisayar Programlama BIL 107
Printf Bu komut ekrana çıktı veren komuttur. Pascalda kullanılan writeln komutuyla aynı anlamdadır.
C Programlama Dili Bilgisayar Mühendisliği.
C Programlama Dili Çağdaş Hakan Aladağ.
Algoritma ve Programlamaya Giriş
EETE233 Mikrodenetleyiciler ArduIno ile Programlama
BİLGİSAYAR PROGRAMLAMA Ders 3: C ile Programlamaya Giriş
BÖLÜM 4 FONKSİYONLAR Fonksiyonlar programların etkinliğini, kolay yazılmasını, anlaşılmasını ve bellekte daha az yer kaplamasını sağlayan bloklardır. Yazılan.
Veri Yapıları ve Algoritmalar
BÖLÜM 5 POINTER’LER (İŞARETÇİLER)
C Programlama Yrd.Doç.Dr. Ziynet PAMUK BMM211-H03
C Programlama Diline Giriş
BİLGİSAYAR PROGRAMLAMA Ders 5: Döngüler
BİLGİSAYAR PROGRAMLAMA Ders 11: İşaretçi (Pointer) Kullanımı
Algoritma ve Programlamaya Giriş
C PROGRAMLAMADA AKIŞ KONTROLÜ
NBP103 Programlama Temelleri Öğr. Gör. Mahmut Kılıçaslan
BİLGİSAYAR PROGRAMLAMA Ders 4: Koşula Göre İşlem Yapma
Bölüm 2 C Dilinin Temelleri
Bölüm 3 Atama ve Girdi/Çıktı Komutları
3.hafta METODLAR.
Bölüm 7 İfadeler ve atamalar.
BİLGİSAYAR programlama II
BİLGİSAYAR programlama II
NİŞANTAŞI ÜNİVERSİTESİ
YAPISAL PROGRAMLAMA Hafta-4
Bölüm 2: Program Denetimi
ÖLÇME-DEĞERLENDİRME 1.DERS
Bilgisayar Bilimi Koşullu Durumlar.
Bölüm 4 Seçme Komutları Koşul İfadesi if Komutu Bileşik Komut
?: KARŞILAŞTIRMA OPERATÖRÜ
Bilgisayar Bilimi Fonksiyon Yazma.
Öğr. Gör. Sümeyye korkmaz
WHILE DÖNGÜSÜ while (şart) { ifade 1; ifade 2; }
NİŞANTAŞI ÜNİVERSİTESİ
Bölüm 2 C Dilinin Temelleri
NİŞANTAŞI ÜNİVERSİTESİ
BLM-111 PROGRAMLAMA DİLLERİ I Ders-10 Diziler
MTM216 GÖRSEL PROGRAMLAMA
Bölüm 4 Seçme Komutları Koşul İfadesi if Komutu Bileşik Komut
BLP 4210 PLATFORM BAĞIMSIZ PROGRAMLAMA
C Programlama Diline Giriş
Sunum transkripti:

Algoritma ve Programlamaya Giriş Ders 4

İlk C Kodu /* ilk.c: ilk C programi */ #include <stdio.h> main() { printf("Merhaba Dunya!\n"); }

C Kodlarının Temel Özellikleri Kullanılacak her kütüphane fonksiyonu için ilgili başlık (header) dosyası programın başına eklenmelidir. Her C programı mutlaka bir main() fonksiyonu içermelidir. Program içinde kullanılacak olan değişkenler ve sabitler mutlaka tanımlanmalıdır. Satırın sonuna ; işareti konmalıdır. Her bloğun ve fonksiyonun başlangıcı ve bitişi sırasıyla { ve } sembolleridir. C dilinde yazılan kodlarda büyük-küçük harf ayrımı vardır (case sensitive). Örneğin; A ile a derleyici tarafından farklı değerlendirilir. Açıklama operatörü /* */ sembolleridir.

Kodda Açıklama (Yorum Satırı) /*Çok satırlı bir açıklama. Yıldızlar arasında kalan bütün alan, yorum olarak değerlendirilir ve derleyici tarafından işlenmez. */ #include<stdio.h> int main( void ) { //Tek satırlık bir açıklama. printf("Merhaba Dünya\n"); }

Değişken Tanımlama - 1 #include<stdio.h> int main(void) { int a; printf("a sayısı %d",a); return 0; }

Değişken Tanımlama - 2 #include<stdio.h> int main(void) { int a; int b; int toplam; a = 25; b = 18; toplam = a + b; printf("a sayısı %d ve b sayısı %d, Toplamı %d.\n", a, b, toplam); return 0; }

scanf fonksiyonu - 1 #include<stdio.h> int main( void ) { int sayi; printf("Değer giriniz> "); scanf("%d",&sayi); printf("Girilen değer: %d\n",sayi); return 0; }

TİP DEKLARASYON printf( ); scanf( ); Minimum Maksimum Byte  Karakter  char degisken;  printf("%c",degisken);   scanf("%c",&degisken);  -128 127 1  Kısa Tam Sayı  short degisken;  printf("%d",degisken);   scanf("%d",&degisken);  -32768 32767 2  Tamsayı  int degisken; Uzun Tamsayı long int degisken; printf("%ld",degisken); scanf("%ld",&degisken); -2147483648 2147483647 4 İşaretsiz Tamsayı unsigned int degisken; printf("%u",degisken); scanf("%u",&degisken); 65535 İşaretsiz Uzun Tamsayı long unsigned degisken; printf("%lu",degisken); scanf("%lu",&degisken); 4294967295 Virgüllü Sayı float degisken; printf("%f",degisken); scanf("%f",&degisken); 1,17549e-38 3,40282e+38 Uzun Virgüllü Sayı double degisken; printf("%lf",degisken); scanf("%lf",&degisken); 2,22504e-308 1,79769e+308 8

scanf fonksiyonu - 2 #include<stdio.h> int main( void ) { int saat; float ucret, toplam_ucret; char bas_harf; printf("Çalışanın baş harfini giriniz> "); scanf("%c",&bas_harf); printf("Çalışma saatini giriniz> "); scanf("%d",&saat); printf("Saat ücretini giriniz> "); scanf("%f",&ucret); toplam_ucret = saat * ucret; printf("%c başharfli çalışanın, alacağı ücret: %f\n",bas_harf,toplam_ucret); return 0; }

scanf fonksiyonu - 2 #include<stdio.h> int main( void ) { float sayi1,sayi2,ortalama; printf("İki sayı giriniz> "); scanf("%f%f",&sayi1,&sayi2); ortalama = ( sayi1 + sayi2 ) / 2; printf("Ortalama sonucu: %f'dir",ortalama); return 0; }

#define ile Sabit Tanımlama #include <stdio.h> #define UZUNLUK 10 #define GENISLIK 5 #define YENISATIR '\n' int main() { int alan; alan = UZUNLUK * GENISLIK; printf("ALAN DEGERI: %d", alan); printf("%c", YENISATIR); return 0; }

const ile Sabit Tanımlama #include <stdio.h> int main() { const int UZUNLUK = 10; const int GENISLIK = 5; const char YENISATIR = '\n'; int alan; alan = UZUNLUK * GENISLIK; printf("alan degeri: %d", alan); printf("%c", YENISATIR); return 0; }

Örnek #include<stdio.h> int main( void ) { int bolunen = 12, bolen = 8; float bolum; bolum = bolunen / bolen; printf("Sonuc: %f\n",bolum); return 0; } Çıktı: Sonuc: 1.000000

Tip Dönüşümü (Casting) - 1 #include<stdio.h> int main( void ) { int bolunen = 12, bolen = 8; float bolum; bolum = (float) bolunen / bolen; printf("Sonuc: %f\n",bolum); return 0; } Çıktı: Sonuc: 1.500000

Tip Dönüşümü (Casting) - 2 #include<stdio.h> int main( void ) { float girilen_sayi; printf("Lütfen bir sayı giriniz> "); scanf("%f",&girilen_sayi); printf("Sayının yuvarlanmış hali: %d\n", (int)(girilen_sayi+0.5)); return 0; }

Koşullu İfadeler – if-else yapısı if( koşul ) { komut(lar) } if( koşul ) { komut(lar) } else {

İlişkisel ve Bileşik Operatörler < Küçüktür > Büyüktür == Eşittir <= Küçük eşittir >= Büyük eşittir != Eşit değildir && and ve || or veya ! not tersi

Koşullu İfadeler - 1 #include<stdio.h> int main( void ) { int girilen_sayi; printf("Lütfen bir tam sayı giriniz> "); scanf("%d",&girilen_sayi); if( girilen_sayi > 100 ) printf("Girilen sayı 100'den büyüktür\n"); return 0; }

Koşullu İfadeler - 2 #include<stdio.h> int main( void ) { int girilen_sayi; printf("Lütfen bir tam sayı giriniz> "); scanf("%d",&girilen_sayi); if( girilen_sayi > 100 ) printf("Girilen sayı 100'den büyüktür\n"); else printf("Girilen sayı 100'den küçüktür\n"); return 0; }

Örnek // Kendisine verilen iki tam sayıyla bölme işlemi yapan program. #include<stdio.h> int main( void ) { int bolunen, bolen; float sonuc; printf("Bölünecek sayıyı giriniz> "); scanf("%d",&bolunen); printf("Bölen sayıyı giriniz> "); scanf("%d",&bolen); // Bolenin 0 olmaması gerekiyor. if( bolen != 0 ) { sonuc = (float)bolunen / bolen; printf("Sonuc: %f\n",sonuc); } else printf("Hata: Sayı 0'a bölünemez!\n");

Örnek /* Girilen yaşın, 18 ile 65 arasında olup olmadığını belirler. */ #include<stdio.h> int main( void ) { int girilen_yas; printf("Lütfen yaşınızı giriniz> "); scanf("%d",&girilen_yas); if( girilen_yas >= 18 && girilen_yas <= 65 ) printf("Girilen yaş, 18 ile 65 arasındadır.\n"); //Girilen yaş 18 ile 65 arasında değilse, aşağıdaki else //bloğu çalışır. else { //Girilen yaş 18'den küçükse if( girilen_yas < 18 ) printf("Girilen yaş, 18'den küçüktür.\n"); //Girilen yaş 65'ten büyükse else printf("Girilen yaş, 65'ten büyüktür.\n"); }

If-else if if( koşul 1 ) { komut(lar) 1 } else if( koşul 2 ) { . else if( koşul n ) { komut(lar) n } else { komut(lar) n+1 }

#include<stdio.h> int main( void ) { int girilen_yas; printf("Lütfen yaşınızı giriniz> "); scanf("%d",&girilen_yas); if( girilen_yas < 18 ) printf("çocuk \n"); if( girilen_yas >= 18 && girilen_yas <= 30 ) printf("genc \n"); if( girilen_yas > 30 && girilen_yas <= 50 ) printf("orta yas \n"); return 0; }

#include<stdio.h> int main( void ) { int girilen_yas; printf("Lütfen yaşınızı giriniz> "); scanf("%d",&girilen_yas); if( girilen_yas < 18 ) printf("cocuk \n"); else { if( girilen_yas >= 18 && girilen_yas <= 30 ) printf("genc \n"); if( girilen_yas > 30 && girilen_yas <= 50 ) printf("orta yas\n"); } return 0;

#include<stdio.h> int main( void ) { int girilen_yas; printf("Lütfen yaşınızı giriniz> "); scanf("%d",&girilen_yas); if( girilen_yas < 18 ) printf(" cocuk\n"); else if( girilen_yas >= 18 && girilen_yas <= 30 ) printf(" genc\n"); else if( girilen_yas > 30 && girilen_yas <= 50 ) printf(" orta yas\n"); else printf("HATA: Girilen yaş tanımlı değildir!\n"); return 0; }

#include<stdio.h> int main( void ) { int sayi_1, sayi_2, sayi_3; printf("Üç sayı giriniz> "); scanf("%d %d %d", &sayi_1, &sayi_2, &sayi_3); if( sayi_1 >= sayi_2 && sayi_1 > sayi_3 ) printf("%d en büyük sayıdır!\n", sayi_1); else if( sayi_2 >= sayi_1 && sayi_2 >= sayi_3 ) printf("%d en büyük sayıdır!\n", sayi_2); else if( sayi_3 >= sayi_1 && sayi_3 >= sayi_1 ) printf("%d en büyük sayıdır!\n", sayi_3); return 0; }

Switch-case switch( degisken ) { case sabit1: komut(lar) [break] . case sabitN: default: komut(lar); }

#include<stdio.h> int main( void ) { int not; printf("Lütfen notu giriniz> "); scanf("%d",&not); switch( not / 10 ) { case 10: case 9: printf("NOT: A\n"); break; case 8: printf("NOT: B\n"); break; case 7: printf("NOT: C\n"); break; case 6: printf("NOT: D\n"); break; case 5: case 4: case 3: case 2: case 1: case 0: printf("NOT: F\n"); break; default: printf("HATA: Bilinmeyen bir değer girdiniz!\n"); } return 0;

#include<stdio.h> int main( void ) { int sayi_1, sayi_2; char operator_simgesi; printf("Lütfen işlem simgesi giriniz> "); scanf("%c",&operator_simgesi); printf("Lütfen birinci sayıyı giriniz> "); scanf("%d",&sayi_1); printf("Lütfen ikinci sayıyı giriniz> "); scanf("%d",&sayi_2); switch( operator_simgesi ) { case '+': printf("%d %c %d = %d\n",sayi_1,operator_simgesi, sayi_2, sayi_1 + sayi_2); break; case '-': printf("%d %c %d = %d\n",sayi_1,operator_simgesi, sayi_2, sayi_1 - sayi_2); break; case '%': printf("%d %c %d = %d\n",sayi_1,operator_simgesi, sayi_2, sayi_1 % sayi_2); break; case '*': printf("%d %c %d = %d\n",sayi_1,operator_simgesi, sayi_2, sayi_1 * sayi_2); break; case '/': printf("%d %c %d = %.2f\n",sayi_1,operator_simgesi, sayi_2, (float)sayi_1 / sayi_2);break; default: printf("HATA: Tanımsız bir operatör girdiniz!\n"); } return 0;