Программа должна транспонировать матрицу 5 на 3 - C (СИ)
Формулировка задачи:
почему не работает?
Листинг программы
- #include <stdio.h>
- int sampleMatrix[3][5]={
- {7,16,55,13,12},
- {12,10,52,0,7},
- {-2,1,2,4,9}
- };
- int newMatrix[5][3];
- void transpose(int sampleMatrix[3][5],int newMatrix[5][3]){
- int rows=3;
- int column=5;
- for(int i=0;i<rows;i++)
- for(int z=0;z<column;z++)
- newMatrix[column][rows]=sampleMatrix[rows][column];
- }
- int main(void){
- int rows=5;
- int column=3;
- transpose(sampleMatrix,newMatrix);
- for(int i=0;i<rows;i++)
- for(int z=0;z<column;z++)
- printf("%i\n",newMatrix[column][rows]);
- }
Решение задачи: «Программа должна транспонировать матрицу 5 на 3»
textual
Листинг программы
- #include <stdio.h>
- int sampleMatrix[3][5] = {
- { 7, 16, 55, 13, 12 },
- { 12, 10, 52, 0,7 },
- { -2, 1, 2, 4, 9 }
- };
- int newMatrix[5][3];
- void transpose(int sampleMatrix[3][5], int newMatrix[5][3]) {
- int rows = 3;
- int column = 5;
- for (int i = 0; i<rows; i++)
- for (int z = 0; z<column; z++)
- newMatrix[z][i] = sampleMatrix[i][z];
- }
- int main(void)
- {
- int rows = 5;
- int column = 3;
- transpose(sampleMatrix, newMatrix);
- printf("\n\n");
- for (int i = 0; i<rows; i++)
- {
- for (int z = 0; z<column; z++)
- {
- printf("%i ", newMatrix[i][z]);
- }
- printf("\n");
- }
- }
Объяснение кода листинга программы
В данном коде представлена программа для транспонирования матрицы 5 на 3. Список действий:
- Объявление и инициализация исходной матрицы
sampleMatrix
и новой матрицыnewMatrix
. - Определение функции
transpose
, которая выполняет транспонирование матрицы. - В функции
main
задаются размеры матрицыrows
иcolumn
. - Вызывается функция
transpose
с передачей исходной матрицыsampleMatrix
и новой матрицыnewMatrix
. - Выводится транспонированная матрица с помощью цикла
for
и функцииprintf
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д