Skip to content

Instantly share code, notes, and snippets.

@Mervetafrali
Last active April 4, 2017 04:43
Show Gist options
  • Select an option

  • Save Mervetafrali/cd9f0ea6c4d51efcae4be885624871ba to your computer and use it in GitHub Desktop.

Select an option

Save Mervetafrali/cd9f0ea6c4d51efcae4be885624871ba to your computer and use it in GitHub Desktop.

Programlama 2 → 1.Hafta

Matrisler Iki Boyutlu Diziler

Matris Tanımlama

1

/ / baslangic degeri atamadan tanimlama
int matris[3][3];

2

/ / baslangic degeri atayarak tanimlama
int matris[3][3] = { {0, 1, 2}, {3, 4, 5}, {6, 7, 8} };

Matris

3
matris[1][2] = 999; +
3
// matristeki elemanin degerini yazma +
printf("0,2 -> %d\n\n", matris[0][2]); +
4
// matristeki elemanin degerini klavyeden okuma ve yazdırma
printf("2,0. elemana sayi girin:");
scanf("%d", &matris[2][0]);
printf("2,0 -> %d\n\n", matris[2][0]);
5
// matristeki elemanların hepsinin degerini yazdırma
for (satir = 0 ; satir < 3 ; satir++) {
		for (sutun = 0 ; sutun < 3 ; sutun++)
			printf("%d ", matris[satir][sutun]);
			printf("\n");
		}
}
int main() {
	int matris[3][3] = { {0, 1, 2}, {3, 4, 5}, {6, 7, 8} }; // baslangic degeri atayarak tanimlama
	int matris[3][3]; // baslangic degeri atamadan tanimlama
	int satir, sutun;
	for (satir = 0 ; satir < 3 ; satir++) {
		for (sutun = 0 ; sutun < 3 ; sutun++)
			printf("%d ", matris[satir][sutun]);
		printf("\n");
	}
	printf("\n");
	matris[1][2] = 999; // matristeki elemana deger atama
	printf("0,2 -> %d\n\n", matris[0][2]); // matristeki elemanin degerini yazma
	printf("2,0. elemana sayi girin:");
	scanf("%d", &matris[2][0]); // matristeki elemanin degerini klavyeden okuma
	printf("2,0 -> %d\n\n", matris[2][0]);
	for (satir = 0 ; satir < 3 ; satir++) {
		for (sutun = 0 ; sutun < 3 ; sutun++)
			printf("%d ", matris[satir][sutun]);
		printf("\n");
	}
	return 0;
}

Matris Transpozu(Devriği)

6

3*3’luk matrisin degerlerini giriniz

Matrisin [1][1] elemani : 1
Matrisin [1][2] elemani : 2
Matrisin [1][3] elemani : 3
Matrisin [2][1] elemani : 4
Matrisin [2][2] elemani : 5
Matrisin [2][3] elemani : 6
Matrisin [3][1] elemani : 7
Matrisin [3][2] elemani : 8
Matrisin [3][3] elemani : 9

int matris[3][3];
    int satir = 0,sutun = 0;
    for( satir = 0 ;  satir < 3; satir++ ) {
        for ( sutun = 0; sutun< 3; sutun++) {
		      printf("Matrisin [%d][%d] elemani : ",satir+1,sutun+1);
            scanf("%d",&matris[satir][sutun]);
        }
    }

Matris Transpozu

 int transpose[3][3];
    int satir = 0,sutun = 0;
    for( satir = 0 ;  satir < 3; satir++ ) {
        for ( sutun = 0; sutun< 3; sutun++) {
		      transpose[sutun][satir] = matris[satir][sutun];
        }
    }
int matris[3][3];
    int transpose[3][3];
    int satir = 0,sutun = 0;
    for( satir = 0 ;  satir < 3; satir++ ) {
        for ( sutun = 0; sutun< 3; sutun++) {
          printf("Matrisin [%d][%d] elemani : ",satir+1,sutun+1);
          scanf("%d",&matris[satir][sutun]);
          transpose[sutun][satir] = matris[satir][sutun];
        }
    }

Matris

Matris ve Transpozu
1 2 3 1 4 7
4 5 6 2 5 8
7 8 9 3 6 9

    for( satir= 0 ;  satir < 3; satir++ ) {
        for ( sutun = 0; sutun< 3; sutun++) {
            printf("%d ",matris[satir][sutun]);
        }
         printf("\t\t"); // 2 tab boyutu bosluk birakir
        for ( sutun = 0; sutun< 3; sutun++) {
            printf("%d ",transpose[satir][sutun]);
        }
        printf("\n");
    }
 #include <stdio.h>
int main() {
    int matris[3][3];
    int transpose[3][3];
    int satir = 0,sutun = 0;
    printf("\n3*3'luk matrisin degerlerini giriniz \n\n");
    for( satir = 0 ;  satir < 3; satir++ ) {
        for ( sutun = 0; sutun< 3; sutun++) {
            printf("Matrisin [%d][%d] elemani : ",satir+1,sutun+1);
            scanf("%d",&matris[satir][sutun]);
            transpose[sutun][satir] = matris[satir][sutun];
        }
    }
    printf("\nMatris\tve\tTranspozu\n");
    for( satir= 0 ;  satir < 3; satir++ ) {
        for ( sutun = 0; sutun< 3; sutun++) {
            printf("%d ",matris[satir][sutun]);
        }
        printf("\t\t"); // 2 tab boyutu bosluk birakir
        for ( sutun = 0; sutun< 3; sutun++) {
            printf("%d ",transpose[satir][sutun]);
        }
        printf("\n");
    }
    return 0;
}
7
8
int i, j;
int N= 8;
for (i = 0 ; i < N ; i++) {
	for (j = 0 ; j < N ; j++) {
		T[i][j] = '.';
	}
}
9
int i, j;
int N= 8;
for (i = 0 ; i < N ; i++) {
	for (j = 0 ; j < N ; j++) {
		T[i][j] = '.';
	T[3][3] = 'S';
	T[4][4] = 'O';
	T[5][5] = 'S';
}
}
int i, j;
int N= 8;
for (i = 0 ; i < N ; i++) {
	for (j = 0 ; j < N ; j++) {
		T[i][j] = '.';
	T[3][3] = 'S';
	T[4][4] = 'O';
	T[5][5] = 'S';
ciz();
}
}
void ciz() {
	int i, j;
	for (i = 0 ; i < N ; i++) {
		for (j = 0 ; j < N ; j++) {
			printf("%c ", T[i][j]);
		}
		printf("\n");
	}
	printf("\n");
}
#include <stdio.h>
#define N 8
//  8x8 T matrisi global degisken olarak tanimlandi
char T[N][N];
// fonksiyon prototipi
void ciz();
int main() {
	int i, j;
	for (i = 0 ; i < N ; i++) {
		for (j = 0 ; j < N ; j++) {
			T[i][j] = '.';
		}
	}
	T[3][3] = 'S';
	T[4][4] = 'O';
	T[5][5] = 'S';
	ciz();
	return 0;
}
void ciz() {
	int i, j;
	for (i = 0 ; i < N ; i++) {
		for (j = 0 ; j < N ; j++) {
			printf("%c ", T[i][j]);
		}
		printf("\n");
	}
	printf("\n");
}
9
#include <stdio.h>
#define N 8
char T[N][N];
void ciz();

int main() {
	int i, j;
	for (i = 0 ; i < N ; i++) {
		for (j = 0 ; j < N ; j++) {
			T[i][j] = '.';
		}
	}
	while (1) {
		ciz();
		oyuncudan_giris_iste();
		// Oyun bittimi?
	}
	return 0;
}
// oyuncudan yapacagi hamlenin koordinatini ve secimi ister
void oyuncudan_giris_iste() {
	int x, y;
	while (1) {
		printf("(x y): ");
		scanf("%d %d", &x, &y);

		if (x < 0 || x >= N || y < 0 || y >= N) {
			// 0'dan kucuk ya da N'e buyuk esit bir yer girilirse hata ver
			printf("yanlis giris!!! ");
		} else if (T[x][y] != '.') {
			printf("dolu!!! ");
		} else {
			// dogru giris yapildi
			break; // donguyu durdur
		}
	}
	printf("S / O ? ");
	char c;
	scanf(" %c", &c);
	// FIXME: kullanici baska harf girebilir. giris kontrol edilmeli
	T[x][y] = c;
}
10
void ciz() {
	int i, j;
	// ekrani temizleme komutu:
	// system("clear"); // GNU/Linux
	// system("cls"); // Windows

	printf("\n   ");
	for (i = 0 ; i < N ; i++)
		printf("%d ", i);
	printf("\n");

	for (i = 0 ; i < N ; i++) {
		printf("%d  ", i);
		for (j = 0 ; j < N ; j++) {
			printf("%c ", T[i][j]);
		}
		printf("\n");
	}
	printf("\n");
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment