Dersler

View on GitHub

EEM-119 Algoritma ve Programlama I Dersi

karşılaştırma operatörleri

#include <stdio.h>
int main(int argc, char *argv[]) {
    printf("%d\n", 1>2);
    printf("%d\n", 1<2);
    printf("%d\n", 1<=1);
    printf("%d\n", 2>=2);
    printf("%d\n", 1==2);
    printf("%d\n", 1!=2);
    printf("%d\n", 1!=1);
    return 0;
}
0
1
1
1
0
1
0
#include <stdio.h>
int main(int argc, char *argv[]) {
    printf("%d\n", (1!=2)+5);
    return 0;
}
6
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i=1,j=5,k=4;
    printf("%d\n", i+k<j);
    printf("%d\n", i+(k<j));    
    return 0;
}
0
2
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i=1,j=5,k=4;
    printf("%d\n", i+k==j);  
    return 0;
}
1

Mantık operatörleri

#include <stdio.h>
int main(int argc, char *argv[]) {
    int i=1,j=5;
    printf("%d\n", i!=0 && j/i>3);
    printf("%d\n", i==0 && j/i>3);
    printf("%d\n", i==0 || j/i>3);
    printf("%d\n", !(i==0 || j/i>3));
    return 0;
}
1
0
1
0
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i,j;
    printf("iki sayi giriniz");
    scanf("%d%d",&i,&j);
    if(i>j)
        printf("girilen sayilardan %d sayisi buyuktur",i);
    else if(j>i)
        printf("girilen sayilardan %d sayisi buyuktur",j);
    else
        printf("girilen sayilar esittir",j);
    return 0;
}
iki sayi giriniz
1 1

girilen sayilar esittir

Aşagidaki 3 program if-else if ve else yapılarının farklı kullanımları var.
Bu programlar mantıksal olarak doğru değil. Sadece kullanımları göstermek için ekledik.

#include <stdio.h>
int main(int argc, char *argv[]) {
    int i,j;
    printf("iki sayi giriniz");
    scanf("%d%d",&i,&j);
    if(i>j)
        printf("girilen sayilardan %d sayisi buyuktur",i);
    return 0;
}
iki sayi giriniz
3 5
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i,j;
    printf("iki sayi giriniz");
    scanf("%d%d",&i,&j);
    if(i>j)
        printf("girilen sayilardan %d sayisi buyuktur",i);
    else if(j>i)
        printf("girilen sayilardan %d sayisi buyuktur",j);
    return 0;
}
iki sayi giriniz
5 5
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i,j;
    printf("iki sayi giriniz");
    scanf("%d%d",&i,&j);
    if(i>j)
        printf("girilen sayilardan %d sayisi buyuktur",i);
    else
        printf("girilen sayilar esittir",j);
    return 0;
}
iki sayi giriniz
3 5

girilen sayilar esittir
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i,j;
    printf("iki sayi giriniz");
    scanf("%d%d",&i,&j);
    if(i!=j)
        printf("girilen sayılar eşit değildir.");
    else
        printf("girilen sayılar eşittir");
    return 0;
}
iki sayi giriniz
5 4

girilen sayılar eşit değildir.
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i,j;
    printf("iki sayi giriniz");
    scanf("%d%d",&i,&j);
    if(!(i>j))
        printf("ikinci sayi birinci sayidan buyuktur veya esittir.");
    else
        printf("birinci sayi ikinci sayidan buyuktur.");
    return 0;
}
iki sayi giriniz

 5 5


ikinci sayi birinci sayidan buyuktur veya esittir.
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i,j;
    printf("iki sayi giriniz");
    scanf("%d%d",&i,&j);
    if(!(i>=j))
        printf("ikinci sayi birinci sayidan buyuktur.");
    else
        printf("birinci sayi ikinci sayidan buyuktur veya esittir.");
    return 0;
}
iki sayi giriniz

 5 6


ikinci sayi birinci sayidan buyuktur.
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i,j,k;
    printf("uc sayi giriniz");
    scanf("%d%d%d",&i,&j,&k);
    if(i>=j && i>=k)
        printf("en buyuk girilen: %d",i);
    else if(j>=i && j>=k)
        printf("en buyuk girilen: %d",j);
    else if(k>=i && k>=j)
        printf("en buyuk girilen: %d",k);
    return 0;
}
uc sayi giriniz

 1 5 9


en buyuk girilen: 9
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i,j,k, eb;
    printf("uc sayi giriniz");
    scanf("%d%d%d",&i,&j,&k);
    eb=i;
    if(j>eb)
        eb=j;
    if(k>eb)
        eb=k;
    printf("girilen en buyuk sayi: %d",eb);  
    return 0;
}
uc sayi giriniz

 1 2 3


girilen en buyuk sayi: 3
#include <stdio.h>
// if else hizasi onemli degildir.
// else kendine en yakin if'e aittir.
int main(int argc, char *argv[]) {
    double x,y;
    printf("x>0 ise sonucu gösterecek sekilde\n");
    printf("x/y islemi icin x ve y sayilarini giriniz");
    scanf("%lf%lf",&x,&y);
    if(y!=0)
        if(x>0)
            printf("%.2lf/%.2lf=%.2lf",x,y,x/y);
    else
        printf("y 0'a esit oldugundan bolme islemi yapilmadi.");
    
    return 0;
}
x>0 ise sonucu gösterecek sekilde
x/y islemi icin x ve y sayilarini giriniz

 1 0
#include <stdio.h>
int main(int argc, char *argv[]) {
    double x,y;
    printf("x>0 ise sonucu gösterecek sekilde\n");
    printf("x/y islemi icin x ve y sayilarini giriniz");
    scanf("%lf%lf",&x,&y);
    if(y!=0){
        if(x>0)
            printf("%.2lf/%.2lf=%.2lf",x,y,x/y);
    }else
        printf("y 0'a esit oldugundan bolme islemi yapilmadi.");
    return 0;
}
x>0 ise sonucu gösterecek sekilde
x/y islemi icin x ve y sayilarini giriniz

 1 0


y 0'a esit oldugundan bolme islemi yapilmadi.

ternary operator

#include <stdio.h>
int main(int argc, char *argv[]) {
    int i,j,k;
    i=1;
    j=2;
    //i jeden buyuk ise k'ya i'yi ata değilse k'ya j'yi ata.
    k=i>j?i:j;
    // if(i>j)
    //    k=i;
    // else
    //    k=j;
    
    printf("k: %d",k);
    return 0;
}
k: 2
#include <stdio.h>
#include <math.h> //karekok almak icin: sqrt fonksiyonu math.h kutuphanesinde tanimli
int main(int argc, char *argv[]) {
    float a,b,c, disk, x1, x2;
    printf("2. dereceden esitligin kokleri icin\n");
    printf("a,b ve c katsayilarini giriniz: ");
    scanf("%f%f%f",&a,&b,&c);
    disk=b*b-4*a*c;
    if(disk>=0){
        x1=(-b+sqrt(disk))/(2*a);
        x2=(-b-sqrt(disk))/(2*a);
        printf("%.2fx^2 + %.2fx + %.2f = 0\n",a,b,c);
        printf("x1=%.2f, x2=%.2f",x1,x2);
    }else{
        printf("esitligin kokleri reel degil");
    }
    return 0;
}
2. dereceden esitligin kokleri icin
a,b ve c katsayilarini giriniz: 

 1 -1 -2


1.00x^2 + -1.00x + -2.00 = 0
x1=2.00, x2=-1.00
#include <stdio.h>
int main(int argc, char *argv[]) {
    int a,b,c;
    printf("ucgenin kenarlarini giriniz: ");
    scanf("%d%d%d",&a,&b,&c);
    if(a*a+b*b == c*c || a*a+c*c == b*b || b*b+c*c == a*a)
        printf("ucgen dik ucgendir.");
    else
        printf("ucgen dik ucgen degildir.");   
    return 0;
}
ucgenin kenarlarini giriniz: 

 13 5 12


ucgen dik ucgendir.
#include <stdio.h>
//girilen kenarlardan ucgenin dik ucgen olup olmadgini yazdiran program
int main(int argc, char *argv[]) {
    int a,b,c;
    printf("ucgenin kenarlarini giriniz: ");
    scanf("%d%d%d",&a,&b,&c);
    if(a*a+b*b == c*c)
        printf("ucgen dik ucgendir.");
    else if(a*a+c*c == b*b )
        printf("ucgen dik ucgendir.");
    else if(b*b+c*c == a*a)
        printf("ucgen dik ucgendir.");
    else
        printf("ucgen dik ucgen degildir.");
    return 0;
}
ucgenin kenarlarini giriniz: 

 13 5 12


ucgen dik ucgendir.
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i=1;
    if(i==1)
        printf("i 1'e esit\n");
    
    if(i)
        printf("i 1'e esit\n"); 
    return 0;
}
i 1'e esit
i 1'e esit
#include <stdio.h>
//girilen kenarlardan ucgenin dik ucgen olup olmadgini yazdiran program
int main(int argc, char *argv[]) {
    int i=0;
    if(i!=1)
        printf("i 1'e esit degil\n");
    
    if(!i)
        printf("i 1'e esit degil\n");
    return 0;
}
1:i 1'e esit degil
2:i 1'e esit degil
#include <stdio.h>
int main(int argc, char *argv[]) {
    if(0)
        printf("0:OK\n");
    if(10)
        printf("10:OK\n");
    if(-501)
        printf("-501:OK\n");
    if(1)
        printf("1:OK\n");
    return 0;
}
10:OK
-501:OK
1:OK

while dongusu

#include <stdio.h>
int main(int argc, char *argv[]) {
    int i=10;
    while(i>0){
        printf("%d ",i);
        i--;
    }
    return 0;
}
10 9 8 7 6 5 4 3 2 1 
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i=10;
    while(i>0)
        printf("%d ",i--);
    return 0;
}
10 9 8 7 6 5 4 3 2 1 
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i=10;
    while(i>0)
        printf("%d ",--i); 
    return 0;
}
9 8 7 6 5 4 3 2 1 0 
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i=10;
    while(i-- > 0)
        printf("%d ",--i);
    return 0;
}
8 6 4 2 0 
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i=10;
    while(i--)
        printf("%d ",i);
    return 0;
}
9 8 7 6 5 4 3 2 1 0 
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i=10;
    while(--i)
        printf("%d ",i);
    return 0;
}
9 8 7 6 5 4 3 2 1 
#include <stdio.h>
int main(int argc, char *argv[]) {
    int i=-10;
    while(i)
        printf("%d ",i++);
    return 0;
}
-10 -9 -8 -7 -6 -5 -4 -3 -2 -1 
#include <stdio.h>
int main(int argc, char *argv[]) {
    int a,b,n;
    printf("a'dan b'ye n artan sayilar icin\n");
    printf("a, b, n degerlerini giriniz: ");
    scanf("%d%d%d",&a,&b,&n);
    while(a<=b){
        printf("%d ",a);
        a=a+n;
    }
    return 0;
}
a'dan b'ye n artan sayilar icin
a, b, n degerlerini giriniz: 

 2 25 4


2 6 10 14 18 22 
#include <stdio.h>
int main(int argc, char *argv[]) {
    int n,i=1;
    printf("n degerlerini giriniz: ");
    scanf("%d",&n);
    while(i<=n){
        printf("%4d %4d \n",i,i*i);
        i++;
    }  
    return 0;
}
n degerlerini giriniz: 

 7


   1    1 
   2    4 
   3    9 
   4   16 
   5   25 
   6   36 
   7   49