Skip to content

Commit f77975c

Browse files
committed
C++ kodu tamamlandı 🤸‍♀️
1 parent 4c29fcb commit f77975c

File tree

2 files changed

+226
-47
lines changed

2 files changed

+226
-47
lines changed
Lines changed: 115 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,118 @@
1-
#import <iostream>
2-
3-
using namespace std;
4-
5-
int main(){
6-
int secenek;
7-
cin>>secenek;
8-
switch(secenek) {
9-
case 1 :
10-
gir_mat();
11-
break;
12-
case 2 :
13-
statement(s);
14-
break;
15-
case 3 :
16-
statement(s);
17-
break;
18-
case 4 :
19-
statement(s);
20-
break;
21-
case 5 :
22-
statement(s);
23-
break;
24-
case 6 :
25-
statement(s);
26-
break;
1+
#include <iostream>
2+
3+
using namespace std;
4+
5+
int gir_mat(int ** & A) {
6+
// Değişkenlerin tanımlanması
7+
int i, j, n;
8+
9+
// Boyutun girilmesi
10+
cout << "Matrisin boyutunu giriniz: ";
11+
cin >> n;
12+
13+
// Matrisin oluşturulması
14+
A = new int * [n];
15+
for (i = 0; i < n; i++)
16+
A[i] = new int[n];
17+
// İç içe döngüyle elemanların girilmesi
18+
for (i = 0; i < n; i++) {
19+
for (j = 0; j < n; j++) {
20+
cout << "A[" << i + 1 << "][" << j + 1 << "]=";
21+
cin >> A[i][j];
22+
}
23+
}
24+
// Boyutun geri döndürülmesi
25+
return n;
2726
}
2827

29-
int** gir_mat(){int boyut;
30-
cout<<"Kare matrisin boyutunu giriniz: ";
31-
cin>>boyut;
32-
int** matris;
33-
int boyut;
34-
matris = new int* [boyut];
35-
int i;
36-
for(i=0; i < boyut; i++){
37-
matris[i] = new int [boyut];
28+
void print_mat(int ** & A, int n) {
29+
// Sayaçların tanımlanması
30+
int i, j;
31+
32+
// İç içe döngüyle elemanların yazdırılması
33+
cout << "A Matrisi:\n";
34+
for (i = 0; i < n; i++) {
35+
for (j = 0; j < n; j++)
36+
cout << A[i][j] << " ";
37+
cout << endl;
38+
}
39+
}
40+
41+
void satir_degistir(int ** & A, int n) {
42+
// Değişkenlerin tanımlanması
43+
int i, satir1, satir2, temp;
44+
45+
// İstenen satırların girilmesi
46+
cout << "Degistirmek istediginiz satirlari girininz:\n";
47+
cin >> satir1;
48+
cin >> satir2;
49+
50+
// Bir döngüyle istenen satırların elemanlarının geçici değişken kullanarak değiştirilmesi
51+
for (i = 0; i < n; i++) {
52+
temp = A[satir1 - 1][i];
53+
A[satir1 - 1][i] = A[satir2 - 1][i];
54+
A[satir2 - 1][i] = temp;
3855
}
39-
int girdi;
40-
cout<<"Elemanlari teker teker giriniz."<<endl;
41-
for(int i = 0; i < boyut; ++i){
42-
for(int j = 0; j < boyut; ++j){
43-
matris[i][j] = girdi;
44-
}
45-
}
46-
}
47-
48-
}
49-
56+
cout << satir1 << ". satir &" << satir2 << ". satir degistirildi.\n";
57+
}
58+
59+
void kosegen_degistir(int ** & A, int n) {
60+
// Değişkenlerin tanımlanması
61+
int i, temp;
62+
// Bir döngüyle köşegenlerin elemanlarının geçici değişken kullanarak değiştirilmesi
63+
for (i = 0; i < n; i++) {
64+
temp = A[i][i];
65+
A[i][i] = A[i][n - 1 - i];
66+
A[i][n - 1 - i] = temp;
67+
}
68+
cout << "Kosegenler degistirildi.\n";
69+
}
70+
71+
float ortalama(int ** & A, int n) {
72+
// Değişkenlerin tanımlanması
73+
int toplam = 0, i, j;
74+
float ort;
75+
// İç içe döngüyle elemanların toplanması
76+
for (i = 0; i < n; i++)
77+
for (j = 0; j < n; j++)
78+
toplam += A[i][j];
79+
80+
// Toplamın “n üzeri 2”ye bölünmesi
81+
ort = (float) toplam / (n * n);
82+
83+
// Ortalamanın geri döndürülmesi
84+
return ort;
85+
}
86+
87+
int main() {
88+
int n1 = 0, secenek, ** P;
89+
do {
90+
// Seçenek listesinin yazdırılması
91+
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:";
92+
// Seçeneğin girilmesi
93+
cin >> secenek;
94+
switch (secenek) {
95+
// Girilen seçeneğe göre istenen fonksiyonun çağrılması
96+
case 1:
97+
n1 = gir_mat(P);
98+
break;
99+
case 2:
100+
print_mat(P, n1);
101+
break;
102+
case 3:
103+
satir_degistir(P, n1);
104+
break;
105+
case 4:
106+
kosegen_degistir(P, n1);
107+
break;
108+
case 5:
109+
cout << "Ortalama= " << ortalama(P, n1) << endl;
110+
break;
111+
case 6:
112+
break;
113+
default:
114+
cout << "Hata!, Girilecek sayi 1,6 arasinda olmalidir!\n";
115+
}
116+
} while (secenek != 6);
117+
118+
}

N-KareMatrisİşlemleri/README.md

Lines changed: 111 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,14 +76,124 @@ Aşağıdaki fonksiyonları yazıp main içerisinde seçenek listesi olarak ça
7676

7777
1. Değişkenlerin tanımlanması.
7878
2. İç 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.
8080
4. 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

Comments
 (0)