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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 31.03.2012, 14:29   #1
Alex_And
Новичок
Джуниор
 
Регистрация: 31.03.2012
Сообщений: 1
По умолчанию Функции и многомерные массивы в С++

Используя функции сформировать двумерный массив и вывести его на печать.Все четные строки матрицы сдвинуть циклически на К элементов вправо.

Я первую часть задания сделал. Но со второй не получается у меня.

Код:
#include <conio.h>
#include <stdlib.h>
#include <math.h>
#include <iostream.h>
#include <iomanip.h>

void mass(int n, int m)
{
 int a[100][100]; 
 int i;
 cout <<"Исходный массив:"<<"\n";
 srand(time(NULL));
  for  (i=0; i<n; i++)
  {
       for (int j=0; j<m; j++)
       {
       a[i][j]=rand()%50;
       cout << a[i][j] << "\t"; 
       }
        cout <<"\n"; 
  }
}


int main()
{
int n,m;
cout << "Введите число строк: ";
cin >> n;
cout << "Введите число столбцов: ";
cin >> m;
mass(n,m);
getch();
return 0;
}
Alex_And вне форума Ответить с цитированием
Старый 31.03.2012, 16:41   #2
Крот
Пользователь
 
Регистрация: 15.03.2012
Сообщений: 57
По умолчанию

Код:
#include "stdafx.h"
#include "iostream"
#include "stdlib.h"
#include "time.h"

using namespace std;

const int ROWS = 3;		// кол-во строк в массиве
const int COLS = 5;		// ... столбцов

void fillArray(int arr[][COLS], int rows);               // заполнить массив случайными числами
void printArray(int arr[][COLS], int rows);	           // печать массива
void rorOneArray(int arr[][COLS], int rows);         // циклический сдвиг всех четных строк впрао на 1
void rorArray(int arr[][COLS], int rows, int k);      // циклический сдвиг всех четных строк вправо на k




int _tmain(int argc, _TCHAR* argv[])
{
	setlocale(LC_ALL, "russian");
	srand( time(NULL) );

	int a[ROWS][COLS] = { 0 };

	fillArray(a, ROWS);
	printArray(a, ROWS);

	// сдвинем на 2
	rorArray(a, ROWS, 2);
	printArray(a, ROWS);



	cin.get();
	cin.get();
	return 0;
}



void printArray(int arr[][COLS], int rows)
{
	for (int r=0; r<rows; r++)
	{
		for (int c=0; c<COLS; c++)
			cout << arr[r][c] << '\t';

		cout << endl;
	}

	cout << endl;
}


void fillArray(int arr[][COLS], int rows)
{
	for (int r=0; r<rows; r++)
		for (int c=0; c<COLS; c++)
			arr[r][c] = rand() % 50;
}


void rorOneArray(int arr[][COLS], int rows)
{
	int temp;

	for (int r=0; r<rows; r += 2)
	{
		temp = arr[r][COLS-1];

		for (int c=COLS-1; c>=1; c--)
			arr[r][c] = arr[r][c-1];

		arr[r][0] = temp;
	}

}


void rorArray(int arr[][COLS], int rows, int k)
{
	for (int i=1; i<=k; i++)
		rorOneArray(arr, rows);
}

Последний раз редактировалось Крот; 31.03.2012 в 16:48.
Крот вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Python3]Многомерные массивы Sna1L Python 1 31.03.2012 04:37
Многомерные массивы! GoogleDOt PHP 6 15.09.2011 09:33
Многомерные массивы Zina123 Помощь студентам 1 12.12.2010 21:51
одномерные и многомерные массивы. С# junita Помощь студентам 0 03.12.2010 17:19
Многомерные массивы DDP Помощь студентам 1 19.12.2009 19:37