Welcome to My Blog 👋

Java, Spring Framework, Microservices, Docker, Kubernetes, AWS and Others 🚀
Follow Me

Çanakkale Onsekiz Mart Üniversitesi Bilgisayar Mühendisliği Bölümü yapısal programlama(C) ders notlarım.

#include <stdio.h>
#include <stdlib.h>

int toplama(int sayi){
    if(sayi==0)
    return 0;
    else
    return sayi + toplama(sayi-1);
}

int main()
{
    int sayi,sonuc;
    printf("Lutfen bir sayi giriniz:");
    scanf("%d",&sayi);
    sonuc=toplama(sayi);
    printf("sonuc= %d",sonuc);
    return 0;
}





------------------------------------------------------------------------------------------


#include <stdio.h>
#include <stdlib.h>

void useLocal();
void useStaticLocal();
void useGlobal();
void yazdir(int);
int x=1; //globakl degisken

int main()
{
    int x=5; //local degisken
    printf("\nmain icinde x=%d\n",x);

    //useLocal();
    //useStaticLocal();
    //useStaticLocal();
    useGlobal();
    useGlobal();
    printf("\nmain icinde x=%d\n",x);
/*
    {
        int x=7;
        printf("main icinde ic scope'ta x=%d\n",x);
        x++;
        printf("main icinde ic scope'ta x=%d\n",x);
    }
    printf("main icinde x=%d",x);
*/
    return 0;
}
void yazdir(int x){
    if(x==0) return;
    else{
    printf("******\n");
    yazdir(x-1);
    }
}

void useLocal(){
    int x=25;
    printf("\nuseLocal fonksiyonuna giriste x=%d",x);
    x++;
    printf("\nuseLocal fonksiyonuna cikista x=%d",x);
}
void useStaticLocal(){
        static int x=50;
        printf("\nuseStaticLocal fonksiyonuna giriste x=%d",x);
        x++;
        printf("\nuseStaticLocal fonksiyonuna cikista x=%d",x);
}
void useGlobal(){
        printf("\nuseGlobal fonksiyonuna giriste x=%d",x);
        x*=10;
        printf("\nuseGlobal fonksiyonuna cikista x=%d",x);
}


--------------------------------------------------------------------------------




#include <stdio.h>
#include <stdlib.h>

//void useLocal();
//void useStaticLocal();
//void useGlobal();
//void yazdir(int);
int fibonacci(int);
int x=1; //globakl degisken

int main()
{
    int n;
    printf("\nbir sayi giriniz:");
    scanf("%d",&n);
    printf("\n %d. fibonacci sayisi=%d",n,fibonacci(n));

    //int x=5; //local degisken
    //printf("\nmain icinde x=%d\n",x);

    //useLocal();
    //useStaticLocal();
    //useStaticLocal();
    //useGlobal();
    //useGlobal();
    //printf("\nmain icinde x=%d\n",x);
/*
    {
        int x=7;
        printf("main icinde ic scope'ta x=%d\n",x);
        x++;
        printf("main icinde ic scope'ta x=%d\n",x);
    }
    printf("main icinde x=%d",x);
*/
    return 0;
}
int fibonacci(int n){
    if(n==0){
        return 0;
    }
    else if(n==1){
        return 1;
    }
    else {
        return fibonacci(n-1)+fibonacci(n-2);
    }
}

void yazdir(int x){
    if(x==0) return;
    else{
    printf("******\n");
    yazdir(x-1);
    }
}

void useLocal(){
    int x=25;
    printf("\nuseLocal fonksiyonuna giriste x=%d",x);
    x++;
    printf("\nuseLocal fonksiyonuna cikista x=%d",x);
}
void useStaticLocal(){
        static int x=50;
        printf("\nuseStaticLocal fonksiyonuna giriste x=%d",x);
        x++;
        printf("\nuseStaticLocal fonksiyonuna cikista x=%d",x);
}
void useGlobal(){
        printf("\nuseGlobal fonksiyonuna giriste x=%d",x);
        x*=10;
        printf("\nuseGlobal fonksiyonuna cikista x=%d",x);
}



----------------------------------------------------------------------------------------



1    /* Fig. 5.12: fig05_12.c
2       A scoping example */
3    #include <stdio.h>
4   
5    void useLocal( void );       /* function prototype */
6    void useStaticLocal( void ); /* function prototype */
7    void useGlobal( void );      /* function prototype */
8   
9    int x = 1; /* global variable */
10 
11   /* function main begins program execution */
12   int main()
13   {
14      int x = 5; /* local variable to main */
15 
16      printf("local x in outer scope of main is %d\n", x );
17 
18      { /* start new scope */                                   
19         int x = 7; /* local variable to new scope */             
20                                                                   
21         printf( "local x in inner scope of main is %d\n", x );   
22      } /* end new scope */                                         
23 
24      printf( "local x in outer scope of main is %d\n", x );
25 
26      useLocal();       /* useLocal has automatic local x */
27      useStaticLocal(); /* useStaticLocal has static local x */
28      useGlobal();      /* useGlobal uses global x */
29      useLocal();       /* useLocal reinitializes automatic local x */
30      useStaticLocal(); /* static local x retains its prior value */
31      useGlobal();      /* global x also retains its value */
32 
33      printf( "local x in main is %d\n", x );
34 
35      return 0; /* indicates successful termination */
36 
37   } /* end main */
38 
39   /* useLocal reinitializes local variable x during each call */
40   void useLocal( void )
41   {
42      int x = 25;  /* initialized each time useLocal is called */
43 
44      printf( "\nlocal x in a is %d after entering a\n", x );
45      x++;
46      printf( "local x in a is %d before exiting a\n", x );
47   } /* end function useLocal */
48 
49   /* useStaticLocal initializes static local variable x only the first time
50      the function is called; value of x is saved between calls to this
51      function */
52   void useStaticLocal( void )
53   {
54      /* initialized only first time useStaticLocal is called */
55      static int x = 50;                                           
56 
57      printf( "\nlocal static x is %d on entering b\n", x );
58      x++;
59      printf( "local static x is %d on exiting b\n", x );
60   } /* end function useStaticLocal */
61 
62   /* function useGlobal modifies global variable x during each call */
63   void useGlobal( void )
64   {
65      printf( "\nglobal x is %d on entering c\n", x );
66      x *= 10;
67      printf( "global x is %d on exiting c\n", x );
68   } /* end function useGlobal */


-------SONUC------
local x in outer scope of main is 5
local x in inner scope of main is 7
local x in outer scope of main is 5

local x in a is 25 after entering a
local x in a is 26 before exiting a

local static x is 50 on entering b
local static x is 51 on exiting b

global x is 1 on entering c
global x is 10 on exiting c

local x in a is 25 after entering a
local x in a is 26 before exiting a

local static x is 51 on entering b
local static x is 52 on exiting b

global x is 10 on entering c
global x is 100 on exiting c
local x in main is 5


Çanakkale Onsekiz Mart Üniversitesi Bilgisayar Mühendisliği Bölümü ders notlarım.

Python konu anlatım ders notları.



Çanakkale Onsekiz Mart Üniversitesi Bilgisayar Mühendisliği Bölümü yapısal programlama(C) ders notlarım.

-------------------------Fonksiyon Tanımı----------------------------------------


#include <stdio.h>
#include <stdlib.h>

int kareAlani(int a);

int main()
{
    int kenar;
    int alan;
    printf("Karenin kenar uzunlugu=");
    scanf("%d",&kenar);
    printf("\nAlan=%d",kareAlani(kenar));

    return 0;
}

int kareAlani(int a)
{
    int alan;
    alan=a*a;
    return alan;

    //bu 3 satir yerine sadece return a*a; yazsak ayni hesaba gelirdi


}


--------------------------------Void Kullanımı---------------------------------------
bir şeyler döndürmemiz gerekmeyen fonksiyonlarda kullanılır




#include <stdio.h>
#include <stdlib.h>

int kareAlani(int a);
void hakkinda(void);

int main()
{
    int kenar;
    int alan;
    printf("Karenin kenar uzunlugu=");
    scanf("%d",&kenar);
    printf("\nAlan=%d",kareAlani(kenar));
    hakkinda();

    return 0;
}

int kareAlani(int a)
{
    return a*a;
}

void hakkinda(void)
{

    printf("\nLab 3 Proje\n");
}


-------------------------------------Menü Örneği----------------------------------------


#include <stdio.h>
#include <stdlib.h>

int kareAlani(int a);
void hakkinda(void);

int main()
{
    int kenar;
    int alan;
    int secim;

    do{
    printf("\n1.Kare Alani\n");
    printf("2.Hakkinda\n");
    printf("9.Cikis\n");

    printf ("Seciminizİ:");
    scanf("%d",&secim);

    switch(secim)
    {
        case 1:
            printf("Karenin kenar uzunlugu=");
            scanf("%d",&kenar);
            printf("\nAlan=%d",kareAlani(kenar));
            break;
        case 2:
            hakkinda();
            break;
        case 9:
            printf("\nGule Gule");
            break;
        default:
            printf("Hatali giris!");
    }
    }
    while(secim!=9);
    return 0;



----------------------------------------------------------------------------------------------------


#include <stdio.h>
#include <stdlib.h>

int kareAlani(int a);
void hakkinda(void);
int faktoiyel(int);

int main()
{
    int kenar;
    int secim;
    int f;

    do{
    printf("\n1.Kare Alani\n");
    printf("2.Hakkinda\n");
    printf("3.Faktoriyel\n");
    printf("9.Cikis\n");

    printf ("Seciminizİ:");
    scanf("%d",&secim);

    switch(secim)
    {
        case 1:
            printf("Karenin kenar uzunlugu=");
            scanf("%d",&kenar);
            printf("\nAlan=%d",kareAlani(kenar));
            break;
        case 2:
            hakkinda();
            break;
        case 3:
            printf("\nFaktoriyeli alinacak sayi");
            scanf("%d",&f);
            printf("\nFaktoriyel sonucu=%d",faktoriyel(f));
            break;
        case 9:
            printf("\nGule Gule");
            break;
        default:
            printf("Hatali giris!");
    }
    }
    while(secim!=9);
    return 0;

}
int kareAlani(int a)
{
    return a*a;
}

void hakkinda(void)
{
    printf("\nLab 3 Proje\n");
}

int faktoriyel(int f)
{
    int i;
    int fakt=1;
    for(i=1;i<=f;i++)
    {
        fakt=fakt*i;
    }
    return fakt;
}


--------------------------------------------------------------------------------------



#include <stdio.h>
#include <stdlib.h>

int kareAlani(int a);
void hakkinda(void);
int faktoiyel(int f);
int kombinasyon(int n,int k);

int main()
{
    int kenar;
    int secim;
    int f;
    int n,k;

    do{
    printf("\n1.Kare Alani\n");
    printf("2.Hakkinda\n");
    printf("3.Faktoriyel\n");
    printf("4.Kombinasyon\n");
    printf("9.Cikis\n");

    printf ("Seciminizİ:");
    scanf("%d",&secim);

    switch(secim)
    {
        case 1:
            printf("Karenin kenar uzunlugu=");
            scanf("%d",&kenar);
            printf("\nAlan=%d",kareAlani(kenar));
            break;
        case 2:
            hakkinda();
            break;
        case 3:
            printf("\nFaktoriyeli alinacak sayi");
            scanf("%d",&f);
            printf("\nFaktoriyel sonucu=%d",faktoriyel(f));
            break;
        case 4:
            printf("\niki sayi giriniz:");
            scanf("%d%d",&n,&k);
            printf("\nKombinasyonun sonucu=%d\n",kombinasyon(n,k));
            break;
        case 9:
            printf("\nGule Gule");
            break;
        default:
            printf("Hatali giris!");
    }
    }
    while(secim!=9);
    return 0;

}
int kareAlani(int a)
{
    return a*a;
}

void hakkinda(void)
{
    printf("\nLab 3 Proje\n");
}

int faktoriyel(int f)
{
    int i;
    int fakt=1;
    for(i=1;i<=f;i++)
    {
        fakt=fakt*i;
    }
    return fakt;
}
int kombinasyon(int n,int k)
{
    return faktoriyel(n)/(faktoriyel(k)*faktoriyel(n-k));
}



---------------------------------------------------------------------------------------------------


#include <stdio.h>
#include <stdlib.h>

int kareAlani(int a);
void hakkinda(void);
int faktoiyel(int f);
int kombinasyon(int n,int k);
void dikdortgenCiz(int kenar1,int kenar2);

int main()
{
    int kenar;
    int secim;
    int f;
    int n,k;
    int kenar1,kenar2;

    do{
    printf("\n1.Kare Alani\n");
    printf("2.Hakkinda\n");
    printf("3.Faktoriyel\n");
    printf("4.Kombinasyon\n");
    printf("5.Dikdortgen Ciz\n");
    printf("9.Cikis\n");

    printf ("Seciminizİ:");
    scanf("%d",&secim);

    switch(secim)
    {
        case 1:
            printf("Karenin kenar uzunlugu=");
            scanf("%d",&kenar);
            printf("\nAlan=%d",kareAlani(kenar));
            break;
        case 2:
            hakkinda();
            break;
        case 3:
            printf("\nFaktoriyeli alinacak sayi");
            scanf("%d",&f);
            printf("\nFaktoriyel sonucu=%d",faktoriyel(f));
            break;
        case 4:
            printf("\niki sayi giriniz:");
            scanf("%d%d",&n,&k);
            printf("\nKombinasyonun sonucu=%d\n",kombinasyon(n,k));
            break;
        case 5:
            printf("\nDikdortgen kenarlarini giriniz:");
            scanf("%d%d",&kenar1,&kenar2);
            dikdortgenCiz(kenar1,kenar2);
            break;
        case 9:
            printf("\nGule Gule");
            break;
        default:
            printf("Hatali giris!");
    }
    }
    while(secim!=9);
    return 0;

}
int kareAlani(int a)
{
    return a*a;
}

void hakkinda(void)
{
    printf("\nLab 3 Proje\n");
}

int faktoriyel(int f)
{
    int i;
    int fakt=1;
    for(i=1;i<=f;i++)
    {
        fakt=fakt*i;
    }
    return fakt;
}
int kombinasyon(int n,int k)
{
    return faktoriyel(n)/(faktoriyel(k)*faktoriyel(n-k));
}

void dikdortgenCiz(int kenar1,int kenar2)
{
    int i,j;
    for(i=1;i<=kenar1;i++)
    {
        for(j=1;j<=kenar2;j++)
        {
            printf("X");
        }
        printf("\n");
    }
}







------------------------------------------------------------------------------------------


#include <stdio.h>
#include <stdlib.h>

float cezahesapla(int gun);

int main()
{
    int gun;


    printf("Getirilen gunu giriniz");
    scanf("%d",&gun);

    if(gun<=3)
    {
        printf("Ucret yok");
    }
    else
    {
        printf("toplam ucret=%f",cezahesapla(gun));
    }

}
float cezahesapla(int gun)
    {
        float toplam;
        toplam=gun*0.75;
        return toplam;
    }



Çanakkale Onsekiz Mart Üniversitesi Bilgisayar Mühendisliği Bölümü ders notlarım.

Shell Sort Videolu Anlatım


Çanakkale Onsekiz Mart Üniversitesi Bilgisayar Mühendisliği Bölümü yapısal programlama(C) ders notlarım.


#include <stdio.h>
#include <stdlib.h>

int main()
{
    
    int a;
    a=5;
    
    a+=5;    //a=a+5; ile ayni sey
    
    a-=5;   //a=a-5;  ile ayni sey
    
    a*=5;   //a=a*5;  ile ayni sey
    
    a/=5;   //a=a/5;  ile ayni sey
    
    a%=5    //a=a%5;  ile ayni sey
    
    a++;    //a=a+1   ile kısmen ayni sey
    
    a--;    //a=a-1   ile kısmen ayni sey
    
    ++a;    //a=a+1   ile kısmen ayni sey
    
    --a;    //a=a-1   ile kısmen ayni sey
    
    //a++; ile ++a; arasındaki fark ilkinde önce işlemi yapar sonra arttırır ikincisinde ilk önce arttırılır sonra işlem yapılır
    
    a=1;
    
    printf("sayi= %d",a++);
    
    //ekrana 1 yazdırır ve a'yı iki yapar
    
    a=1;
    
    printf("sayi= %d",++a);
    
    //ekrana 2 yazdırır
    
    
    return 0;
}



-----------------------------While Dongusu-------------------------------------------------------


#include <stdio.h>
#include <stdlib.h>

int main()
{

    int i=0;
    int toplam=0;

    printf("\nWHILE DONGUSU\n");
    while(i<=10)
    {
    toplam=toplam+i;
    i=i+1;
    }
    printf("\nSonuc=%d",toplam);

    return 0;
}


-------------------------------DO While Dongusu----------------------------------------


#include <stdio.h>
#include <stdlib.h>

int main()
{

    int i=0;
    int toplam=0;

    printf("\nDO WHILE DONGUSU\n");


    do
    {
    toplam=toplam+i;
    i++;

    }
    while(i<=10);

    printf("\nSonuc=%d",toplam);

    return 0;
}


-------------------------------------------------------------------------------------------

While ile do while arasında fark her dönüşte do'nun içindeki işlemde yapılır ama önce do'nun içindeki işlem yapılır
sonra while ile koşula bakılır.Koşul sağlanmasa bile do ile işlem yapılır ve koşul atlanıp do while döngüsünden 
çıkar

-----------------------------For Dongusu---------------------------------------------------


#include <stdio.h>
#include <stdlib.h>

int main()
{

    int k;
    int toplam=0;

    printf("\nFor Dongusu\n");
    for(k=0;k<=10;k++)
    {
        toplam=toplam+k;
    }
    printf("\nSonuc=%d",toplam);


    return 0;
}


---------------------------Switch-Case Dongusu-------------------------------------------------


#include <stdio.h>
#include <stdlib.h>

int main()
{

    int s=4;

    printf("\nSWITCH-CASE Dongusu\n");

    switch(s)
    {
        case 1:
        printf("S=%d dir\n",s);
        break;

        case 2:
        printf("S=%d dir\n",s);
        break;

        case 3:
        printf("S=%d dir\n",s);
        break;

        default:
        printf("\nHatali sayi girisi\n");

    }

    return 0;
}

------------------------------------Rasgele Sayı Üretmek-----------------------------------------


#include <stdio.h>
#include <stdlib.h>

#include <time.h>  //rastgele sayı bulma kodunun çalışması için gerekli
int main()
{
    srand(time(NULL));
    
    int sayi;
    
    sayi= 1 + rand()%100;  //32bin küsür sayı üretir mod %100 diyip +1 dememizin nedeni 1 ile 100 arasında sayılır olması için
    

    return 0;
}



-----------------------------------------SORU-------------------------------------------------


Rastgele 1-100 aralığında sayı üretilir

kullanıcı sayı girer

girilen sayı rastgele sayı ile karşılaştırılır

aynı ise doğru tahmin küçük ise tahmin küçüktür büyük ise büyüktür yazılır

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main()
{

    srand(time(NULL));
    int sayi;
    sayi= 1 + rand()%100;

    int tahmin;

    do
    {
    printf("Tahmini girin ");
    scanf("%d",&tahmin);
        if(sayi>tahmin)
            {
                printf("\nTahmin sayidan kucuktur");
            }
        else
            {
                printf("\nTahmin sayidan buyuktur");
            }
    }
    while(sayi!=tahmin);

    printf("Dogru Tahmin");

    return 0;
}

--------------------------------SORU---------------------------------------------------------
n'den k'ya kadar olan sayıların toplamı


#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main()
{

    int k,n;
    int toplam=0;

    printf("toplanicak degeler araliginin alt degeri");
    scanf("%d",&n);
    printf("toplanicak degeler araliginin ust degeri");
    scanf("%d",&k);

    while(n<=k)
    {
        toplam=toplam+n;
        n=n+1;
    }

    printf("n den k ya kadar olan degelerin toplami= %d",toplam);

}