TEK BOYUTLU DİZİLER Diziye girilen 10 sayıdan tek ve çift olanların sayısını veren program: int dizi[10],tek=0,cift=0; for(int i=0;i<10;i++) printf("dizinin %d. elemanini girin:",i+1); scanf("%d",&dizi[i]); for(int i=0;i<10;i++) if(dizi[i]%2==0) cift++; else tek++; printf("\ngirilen tek sayi adedi:%d",tek); printf("\ngirilen cift sayi adedi:%d",cift);
Diziye girilen 10 sayının ortalamasını hesaplayıp, ortalamadan büyük ve küçük olan sayı adedini gösteren program: float dizi[10],toplam=0,ortalama; int buyuk=0,kucuk=0; for(int i=0;i<10;i++) printf("dizinin %d. elemanini girin:",i+1); scanf("%f",&dizi[i]); toplam=toplam+dizi[i]; ortalama=toplam/10; printf("ortalama=%.2f",ortalama); for(int i=0;i<10;i++) if(dizi[i]>=ortalama) buyuk++; else kucuk++; printf("\nortalamadan buyuk olan sayilarin adedi:%d",buyuk); printf("\nortalamadan kucuk olan sayilarin adedi:%d",kucuk);
Verilen iki diziyi birleştirip tek bir dizi haline getiren program: int int M=5, N=3, a=0; int dizi1[m]=1,0,5,6,3,dizi2[n]=4,2,7, yeni_dizi[m+n]; for (int i = 0; i < M; i++) yeni_dizi[i]=dizi1[i]; for (int j = M; j < M+N; j++) yeni_dizi[j] = dizi2[a]; a++; printf("1. dizi:\n"); for (int i=0; i < M; i++) printf("%d ",dizi1[i]); printf("\n2. dizi:\n"); for (int i=0; i < N; i++) printf("%d ",dizi2[i]); printf("\nyeni dizi:\n"); for (int i=0; i < M+N; i++) printf("%d ",yeni_dizi[i]);
Verilen 5 elemanlı bir dizideki en büyük ve en küçük elemanı bulan program: int dizi[5]=12,56,42,90,30,enb,enk; enb=dizi[0]; enk=dizi[0]; for(int i=1;i<5;i++) if(dizi[i]>enb) enb=dizi[i]; if(dizi[i]<enk) enk=dizi[i]; printf("dizideki en buyuk eleman: %d, en kucuk eleman:%d",enb,enk); Verilen 10 elemanlı bir dizide 2 ye ve 3 e tam bölünen sayıları ve adedini gösteren program: int dizi[10]=12,52,62,14,58,96,17,45,72,88,sayac=0; for(int i=0; i<10; i++) if(dizi[i]%2==0 && dizi[i]%3==0) printf("%d ",dizi[i]); sayac++; printf("\n2'ye ve 3'e bolunen %d tane sayi vardir.",sayac);
İKİ BOYUTLU DİZİLER 3x3 lük bir matrisin satır ve sütunlarının toplamını veren program: int matris[3][3]=6,1,2,0,4,5,2,1,0, satir_top, sutun_top; for(int i=0;i<3;i++) for(int j=0;j<3;j++) printf("%d ",matris[i][j]); // Matrisi gösterme kodu for(int i=0;i<3;i++) satir_top=0; for(int j=0;j<3;j++) satir_top+=matris[i][j]; printf("\n%d. satirin toplami = %d", i+1, satir_top); //satir toplami for(int j=0;j<3;j++) sutun_top=0; for(int i=0;i<3;i++) sutun_top+=matris[i][j]; printf("\n%d. sutunun toplami = %d", j+1, sutun_top); //sutun toplami
Verilen bir 4x4 kare matrisin köşegen elemanlarını toplayan program: int matris[4][4]=2,1,3,6,4,0,-1,0,4,4,2,1,-5,1,8,3,toplam=0; for(int i=0;i<4;i++) for(int j=0;j<4;j++) printf("%d\t",matris[i][j]); if(i==j) toplam=toplam+matris[i][j]; printf("kosegenler toplami: %d ",toplam);
Verilen 3x2 lik 2 matrisi toplayan ve farkını alan program: int mat1[3][2]=2,1,3,6,4,0, mat2[3][2]=4,2,1,-5,1,8, toplam[3][2], fark[3][2]; printf("toplama sonucu:\n"); for(int i=0;i<3;i++) for(int j=0;j<2;j++) toplam[i][j]=mat1[i][j]+mat2[i][j]; printf("%d\t",toplam[i][j]); printf("\ncikarma sonucu:\n"); for(int i=0;i<3;i++) for(int j=0;j<2;j++) fark[i][j]=mat1[i][j]-mat2[i][j]; printf("%d\t",fark[i][j]);
3x2 ve 2x2 boyutlarındaki iki matrisi çarpan program: int mat1[3][2]=2,1,3,6,4,0, mat2[2][2]=4,2,1,-5, carpim[3][2]=0; for(int i=0;i<3;i++) for(int j=0;j<2;j++) for(int k=0;k<2;k++) carpim[i][k]+=mat1[i][j]*mat2[j][k]; for(int i=0;i<3;i++) for(int j=0;j<2;j++) printf("%d\t",carpim[i][j]);
Dışarıdan boyutu girilen kare matriste alt üçgen matris (aşağıdaki örneğe bakın) elde etmek için gerekli olan kod: int N; printf("kare matrisin boyutunu giriniz:"); scanf("%d",&n); int dizi[n][n]; for(int i=0;i<n;i++) for(int j=0;j<n;j++) if(i>=j) dizi[i][j]=1; else dizi[i][j]=0; printf("%d ",dizi[i][j]);
Aşağıdaki matrisi elde etmek için yazılması gereken program: int N,ortaNokta; printf("matris boyutunu tek sayi olarak giriniz:"); scanf("%d",&n); ortanokta=(n-1)/2; int dizi[n][n]; for(int i=0;i<n;i++) for(int j=0;j<n;j++) if(i==ortanokta j==ortanokta) dizi[i][j]=1; else dizi[i][j]=0; printf("%d ",dizi[i][j]);
İndisler toplamı tek sayı olduğunda 1, çift sayı olduğunda 0 değerini alan kare matrisi hesaplayan ve gösteren program: int N; printf("kare matrisin boyutunu giriniz:"); scanf("%d",&n); int dizi[n][n]; for(int i=0;i<n;i++) for(int j=0;j<n;j++) if((i+j)%2==1) dizi[i][j]=1; else dizi[i][j]=0; printf("%d ",dizi[i][j]);
DİZİLERDE ARAMA Beş elemanlı bir dizide, dışardan girilen bir elemanın olup olmadığını ve varsa hangi indekste yer aldığını gösteren program: int dizi[5], durum= 0, arama_degeri, i; for (int i = 0; i < 5; i++) printf("%d. sayiyi giriniz: ",i+1); scanf("%d",&dizi[i]); printf("aramak istediginiz degeri giriniz: "); scanf("%d", &arama_degeri); for (i = 0; i < 5; i++) if (dizi[i] == arama_degeri) durum = 1; break; if (durum == 1) printf("aradiginiz deger dizinin %d. indisinde bulundu", i); else printf("aradiginiz deger bulunamadi");
10 elemanlı bir dizide her elemandan kaç tane olduğunu bulan ve gösteren program: int dizi[10]=1,2,3,0,1,5,6,2,0,5,sayac[10]=0; for(int i=0; i<10; i++) for(int j=0; j<10; j++) if(dizi[i]==dizi[j]) sayac[i]++; for(int i=0; i<10; i++) printf("%d ---> %d \n", dizi[i],sayac[i]);
DİZİLERDE SIRALAMA Dışardan girilen N-boyutlu dizinin elemanlarını küçükten büyüğe sıralayan program: int N,gecici; printf("dizi boyutunu girin:"); scanf("%d",&n); int dizi[n]; for(int i=0;i<n;i++) printf("%d. eleman:",i+1); scanf("%d",&dizi[i]); for(int i=0;i<n-1;i++) for(int j=i+1;j<n;j++) if(dizi[i]>dizi[j]) gecici=dizi[i]; dizi[i]=dizi[j]; dizi[j]=gecici; for(int i=0;i<n;i++) printf("%d ",dizi[i]);
Bubble Sort algoritmasına göre sıralama: int N,gecici; printf("dizi boyutunu girin:"); scanf("%d",&n); int dizi[n]; for(int i=0;i<n;i++) printf("%d. eleman:",i+1); scanf("%d",&dizi[i]); for(int i=0;i<n-1;i++) for(int j=0;j<n-1;j++) if(dizi[j]>dizi[j+1]) gecici=dizi[j]; dizi[j]=dizi[j+1]; dizi[j+1]=gecici; for(int i=0;i<n;i++) printf("%d ",dizi[i]);