@@ -76,14 +76,124 @@ Aşağıdaki fonksiyonları yazıp main içerisinde seçenek listesi olarak ça
7676
77771 . Değişkenlerin tanımlanması.
78782 . İç içe döngüyle elemanların toplanması.
79- 3 . Toplamın “n2” ye bölünmesi.
79+ 3 . Toplamın n< sup >2</ sup > ye bölünmesi.
80804 . Ortalamanın geri döndürülmesi.
8181
8282
8383<!-- ----------------------------- Kodlar ----------------------------------- -->
8484
8585## 🤖 Kod
8686
87+
88+ [ // ] : ------------------------------------------------------------------------------
89+ <!-- ----------------------------- C++ Kodu ----------------------------------- -->
90+ [ // ] : ------------------------------------------------------------------------------
91+
92+ ### ⚙ C++ Kodu
93+
94+ ``` cpp
95+ #include < iostream>
96+ using namespace std ;
97+ int gir_mat (int ** & A) {
98+ int i, j, n; // Değişkenlerin tanımlanması
99+ cout << "Matrisin boyutunu giriniz: ";
100+ cin >> n; // Boyutun girilmesi
101+ // Matrisin oluşturulması
102+ A = new int * [ n] ;
103+ for (i = 0; i < n; i++)
104+ A[ i] = new int[ n] ;
105+ // İç içe döngüyle elemanların girilmesi
106+ for (i = 0; i < n; i++) {
107+ for (j = 0; j < n; j++) {
108+ cout << "A[ " << i + 1 << "] [ " << j + 1 << " ] =";
109+ cin >> A[ i] [ j ] ;
110+ }
111+ }
112+ return n; // Boyutun geri döndürülmesi
113+ }
114+
115+ void print_mat(int ** & A, int n) {
116+ int i, j; // Sayaçların tanımlanması
117+ cout << "A Matrisi:\n"; // İç içe döngüyle elemanların yazdırılması
118+ for (i = 0; i < n; i++) {
119+ for (j = 0; j < n; j++)
120+ cout << A[ i] [ j ] << " ";
121+ cout << endl;
122+ }
123+ }
124+
125+ void satir_degistir(int ** & A, int n) {
126+ int i, satir1, satir2, temp; // Değişkenlerin tanımlanması
127+ // İstenen satırların girilmesi
128+ cout << "Degistirmek istediginiz satirlari girininz:\n";
129+ cin >> satir1;
130+ cin >> satir2;
131+ // Bir döngüyle istenen satırların elemanlarının geçici değişken kullanarak değiştirilmesi
132+ for (i = 0; i < n; i++) {
133+ temp = A[ satir1 - 1] [ i ] ;
134+ A[ satir1 - 1] [ i ] = A[ satir2 - 1] [ i ] ;
135+ A[ satir2 - 1] [ i ] = temp;
136+ }
137+ cout << satir1 << ". satir &" << satir2 << ". satir degistirildi.\n";
138+ }
139+
140+ void kosegen_degistir(int ** & A, int n) {
141+ int i, temp; // Değişkenlerin tanımlanması
142+ // Bir döngüyle köşegenlerin elemanlarının geçici değişken kullanarak değiştirilmesi
143+ for (i = 0; i < n; i++) {
144+ temp = A[ i] [ i ] ;
145+ A[ i] [ i ] = A[ i] [ n - 1 - i ] ;
146+ A[ i] [ n - 1 - i ] = temp;
147+ }
148+ cout << "Kosegenler degistirildi.\n";
149+ }
150+
151+ float ortalama(int ** & A, int n) {
152+ int toplam = 0, i, j; // Değişkenlerin tanımlanması
153+ float ort;
154+ // İç içe döngüyle elemanların toplanması
155+ for (i = 0; i < n; i++)
156+ for (j = 0; j < n; j++)
157+ toplam += A[ i] [ j ] ;
158+ ort = (float) toplam / (n * n); // Toplamın “n üzeri 2”ye bölünmesi
159+ // Ortalamanın geri döndürülmesi
160+ return ort;
161+ }
162+
163+ int main() {
164+ int n1 = 0, secenek, ** P;
165+ do {
166+ // Seçenek listesinin yazdırılması
167+ cout << "============================== \n1- Yeni Matris girmek\n2- Matrisi yazdirmak\n3- 2 satiri degistirmek\n4- Kosegenleri degistirmek\n5- Elemanlar ortalamasini hesaplamak\n6- Exit\nYukaridakilerden bir tane seciniz:";
168+ // Seçeneğin girilmesi
169+ cin >> secenek;
170+ switch (secenek) {
171+ // Girilen seçeneğe göre istenen fonksiyonun çağrılması
172+ case 1:
173+ n1 = gir_mat(P);
174+ break;
175+ case 2:
176+ print_mat(P, n1);
177+ break;
178+ case 3:
179+ satir_degistir(P, n1);
180+ break;
181+ case 4:
182+ kosegen_degistir(P, n1);
183+ break;
184+ case 5:
185+ cout << "Ortalama= " << ortalama(P, n1) << endl;
186+ break;
187+ case 6:
188+ break;
189+ default:
190+ cout << "Hata!, Girilecek sayi 1,6 arasinda olmalidir!\n";
191+ }
192+ } while (secenek != 6);
193+
194+ }
195+ ```
196+
87197[//]: ------------------------------------------------------------------------------
88198<!-- ----------------------------- Python Kodu ----------------------------------- -->
89199[//]: ------------------------------------------------------------------------------
0 commit comments