
28.01.2008, 23:06
|
|
Постоянный
Регистрация: 15.08.2006
Сообщений: 404
Провел на форуме: 3811682
Репутация:
641
|
|
Нужна помощь!
Задание такое:
Матрица А из N стpок и N столбцов размещена в одномерном массиве по строкам. Поменять местами К-й и L-й столбцы матрицы (К и L заданы). Результат напечатать по строкам.
Написал прогу:
Код:
#include "stdafx.h"
#include <iostream> // for cin/cout
#include <string> // for string
using namespace std;
int main()
{
// enter data
int n;
cout << "Enter N: ";
cin >> n;
cout << "Enter matrix (" << n*n << " numbers):\n";
int a[10000]; // matrix by lines
for (int i=0; i<n*n; ++i)
cin >> a[i];
int k, l;
cout << "Enter K: ";
cin >> k;
cout << "Enter L: ";
cin >> l;
// swap k and l columns
for (int i=0; i<n; ++i)
swap (a[i*n+k-1], a[i*n+l-1]); // swap Matr[i][k] and Matr[i][l]
// output result
cout << "Result:\n";
for (int i=0; i<n; ++i)
{
for (int j=0; j<n; ++j)
cout << a[i*n+j] << ' ';
cout << '\n';
}
getchar();
getchar();
return 0;
}
Но забыл, что нужно не вводить числа в матрицу, а случайно генерировать....
Пример получения случайного числа:
Код:
#include <time.h>
#include <iostream>
srand(time(0));// случайные числа зависят от времени
A[i][j]=rand()%10; //Случайное число от 0 до 10
Сделайте, чтобы прога работала с случайной генерацией.
Просто нет сейчас возможности самому эти коды совместить. Заранее спасибо!
|
|
|