Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.11.2016, 18:16   #1
Энтони
Новичок
Джуниор
 
Регистрация: 08.11.2016
Сообщений: 1
Вопрос Дана прямоугольная матрица А.Переместить элементы её периметра на 1 элемент по часовой стрелке

Вот такая вот задача,нужна помощь в написании кода по ней

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <conio.h>
#include <iostream>

#define N 2
#define M 3

#define R 1
int main()
{
setlocale(LC_ALL, "Russian");
double A[M][N], r;
int m, n;
printf("введите число строк\n");
scanf("%d", &m);
printf("введите число столбцов\n");
scanf("%d", &n);

//Ввод матрицы А

printf("\n Введите элементы матрицы А через пробел или Enter\n");

int i, j; //Индексы строк и столбцов
// От i нулевого до j макс
for (i = 0; i<m; i++)
for (j = 0; j<n; j++)
scanf("%lf", &A[i][j]);
/*Вывод мтариц на экран*/
printf("\n Матрица А \n");
for (i = 0; i<m; i++)
{
printf("%d строка: ", i + 1);
for (j = 0; j<n; j++)
printf("%.1lf ", A[i][j]);
printf("\n");
getch();
}


r = A[0][0];
for (int i = 0; i < n - 1; i++)
A[i][0] = A[i + 1][0];
for (i = 0; i < m - 1; i++)
A[n - 1][i] = A[n - 1][i + 1];
for (i = n - 1; i > 0; i--)
A[i][m - 1] = A[i - 1][m - 1];
for (i = m - 1; i > 0; i--)
A[0][i] = A[0][i - 1];
A[0][0] = r;

//вывод
}

Вот получаемый код.Он выводит матрицу,которую ты записываешь,на экран,но элементы не смещаются

Последний раз редактировалось Энтони; 08.11.2016 в 20:36.
Энтони вне форума Ответить с цитированием
Старый 08.11.2016, 18:19   #2
Николай Е
Пользователь
 
Аватар для Николай Е
 
Регистрация: 22.10.2016
Сообщений: 12
По умолчанию Подскажите пожалуйста, на форуме есть кто из программистов, кто создавал сайты для англоговорящих пользователей. Т.е сайт на английском языке.

напишите есть такие кто создавал
Николай Е вне форума Ответить с цитированием
Старый 08.11.2016, 20:48   #3
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Цитата:
Сообщение от Энтони Посмотреть сообщение
Он выводит матрицу,которую ты записываешь,на экран,но элементы не смещаются
на С# я бы смещал как-то так
Код:
  int h = arr[0,0];
            for(int i = 0;i<size-1;i++)
            {
                arr[i,0] = arr[i+1,0];
            }
            for(int i = 0;i<size-1;i++)
            {
                arr[size-1,i] = arr[size-1,i+1];
            }
            for(int i = size-2;i>=0;i--)
            {
                arr[i+1,size-1] = arr[i,size-1];
            }
            for(int i = size-2;i>0;i--)
            {
                arr[0,i+1] = arr[0,i];
            }
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дана целочисленная прямоугольная матрица . В строках, содержащих максимальный элемент Анна997 Паскаль, Turbo Pascal, PascalABC.NET 0 23.05.2016 17:30
Дана целочисленная прямоугольная матрица . В столбцах , элементы которых упорядочены по Анна997 Паскаль, Turbo Pascal, PascalABC.NET 0 23.05.2016 17:28
Дана матрица nxm. Отсортировать по возрастанию элементы стоящие по периметру матрицы, начиная с элемента A(n,1) по часовой стрелке Pr* Паскаль, Turbo Pascal, PascalABC.NET 0 17.06.2015 11:55
Дана целочисленная прямоугольная матрица. Nastasia_NST Помощь студентам 1 10.05.2012 21:23
дана прямоугольная матрица... Avvakymova Паскаль, Turbo Pascal, PascalABC.NET 2 08.05.2011 12:55