1

Тема: Дано цілочислову матрицю А розмірності nxm.

Дано цілочислову матрицю А розмірності nxm. Поміняти місцями ліву і праву половини
масиву.Ось мій приклад але він міняє ліву і перед останю частину матриц


Приклад свого коду я чомусь не може сюди закинуту

2

Re: Дано цілочислову матрицю А розмірності nxm.

#include <stdio.h>
#include <stdlib.h>
int i;
int main()
{
   int array[3][4] = {
    {3, 2, 4, 9},
    {0, 3, 10, 3},
    {0, 3, 10, 3},
 },
    k = 0, p = 2;
int newArray[3] [4];
    
for (int i = 0; i < 3; i ++)
{
     for (int a = 0; a < 4 ; a++)
    {
newArray[i][a]=array[i][a];
}
    }
printf("матриця\n");
for (int a=0; i<3; i ++)
    {
for (int a=0;a<4;a++)
printf("%d\t",array[i][a]);
 printf("\n"); 
        }         
for (int i=0; i<3;i ++)
{
for (int a=0;a<4; a++)
{
if (a==k)
{
newArray[i][a]=array[i][p];
    }
if (a==p)
{
newArray [i][a]=array[i][k];
    }
    }
    }
    
printf("після\n");
for (int i =0;i<3; )
{
for (int a=0; a<4;a++)
printf("%d\t",newArray[i][a]);
    printf("\n");
  return 0;
}
    } 

3

Re: Дано цілочислову матрицю А розмірності nxm.

Половини? Чи все таки 1 і останній стовпці? Можна використати swap для обміну і не створювати клон матриці.

Прихований текст

можливо p = 3?

Подякували: kitsuligor11

4

Re: Дано цілочислову матрицю А розмірності nxm.

Мій код міняє місцями 1 і перед останій стовпчик а потрібно щьоб міняв 1 і останій

5

Re: Дано цілочислову матрицю А розмірності nxm.

Осьо правильний код якщьо комусь потрібно


#include <stdio.h>
#include <stdlib.h>
int i;
int main()
{
   int array[3][4] = {
    {3, 2, 4, 9},
    {0, 3, 10, 3},
    {0, 3, 10, 3},
 },
    k = 0, p = 3;
int newArray[3] [4];
    
for (int i = 0; i < 3; i ++)
{
     for (int a = 0; a < 4 ; a++)
    {
newArray[i][a]=array[i][a];
}
    }
printf("матриця\n");
for (int a=0; i<3; i ++)
    {
for (int a=0;a<4;a++)
printf("%d\t",array[i][a]);
 printf("\n"); 
        }         
for (int i=0; i<3;i ++)
{
for (int a=0;a<4; a++)
{
if (a==k)
{
newArray[i][a]=array[i][p];
    }
if (a==p)
{
newArray [i][a]=array[i][k];
    }
    }
    }
    
printf("після\n");
for (int i =0;i<3; )
{
for (int a=0; a<4;a++)
printf("%d\t",newArray[i][a]);
    printf("\n");
  return 0;
}
    } 
Подякували: Droid 771