Tantangan Kilas Balik #2
Termasuk bagian Dasar-Dasar dalam perjalanan C di Coddy. Pelajaran 60 dari 63.
Tantangan
MudahMari uji keterampilanmu dalam memanipulasi array di C!
Buat program yang melakukan operasi pada array 2D (matriks):
- Buat fungsi
rotateMatrixyang:- Menerima matriks asli, matriks kedua untuk mengisi hasil rotasi, dan ukurannya
- Memutar matriks 90 derajat searah jarum jam
Gunakan ini untuk memutar matriks:rotated[j][size-1-i] = original[i][j]; - Menuliskan hasil ke matriks kedua (fungsi ini mengembalikan
void;mainyang diberikan akan mencetaknya untukmu)
- Buat fungsi
findElementyang:- Menerima array bilangan bulat 2D, ukurannya, dan nilai target
- Mengembalikan 1 jika target ditemukan dalam matriks, dan 0 jika tidak
Coba sendiri
#include <stdio.h>
void rotateMatrix(int original[][10], int rotated[][10], int size);
int findElement(int matrix[][10], int size, int target);
void rotateMatrix(int original[][10], int rotated[][10], int size) {
// Tulis kodemu di sini
}
int findElement(int matrix[][10], int size, int target) {
// Tulis kodemu di sini
}
// Jangan ubah kode di bawah ini
int main() {
int size;
scanf("%d", &size);
int matrix[10][10];
int rotated[10][10];
int value = 1;
for (int i = 0; i < size; i++) {
for (int j = 0; j < size; j++) {
matrix[i][j] = value++;
}
}
printf("Original Matrix:\n");
for (int i = 0; i < size; i++) {
for (int j = 0; j < size; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
printf("\n");
rotateMatrix(matrix, rotated, size);
printf("Rotated Matrix:\n");
for (int i = 0; i < size; i++) {
for (int j = 0; j < size; j++) {
printf("%d ", rotated[i][j]);
}
printf("\n");
}
printf("\n");
int result = findElement(matrix, size, 10);
if (result) {
printf("Found\n");
} else {
printf("Not found\n");
}
return 0;
}
Semua pelajaran di Dasar-Dasar
2Variabel
Tipe DataBilangan BulatFloat - DoubleKarakterBooleanKonstantaDasar printfAturan Penamaan VariabelKonversi Tipe Bagian 1Konversi Tipe Bagian 2Tantangan Rangkuman3Operator
Operator AritmetikaOperator ModuloInkrementasi/PenurunanOperator PenugasanOperator RelasionalOperator Logika Bagian 1Operator Logika Bagian 2Operator Logika Bagian 3Tantangan RangkumanLatihan sendiri: Compiler C online