Форум программистов, компьютерный форум CyberForum.ru

Путем перестановки квадратной веществ. матрицы добиться того, чтобы максимум находился в левом верхнем углу - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Окружение точки http://www.cyberforum.ru/cpp-beginners/thread214222.html
Всем читающим эту тему доброго времени суток! Хоть сам я учусь на программиста, не обходится без трудностей. Вот одна из них: Описание: На плоскости даны точки A1, A2, ..., AN и точка B, никакие две точки не совпадают. Найдите многоугольник минимального периметра с вершинами в точках Ai, содержащий точку B. Стороны многоугольника должны быть меньше либо равны K. Некоторые из точек Ai могут...
C++ Из одномерного массива произвести выборку по условию Выборка по условию Из одномерного массива {ai} длиной n произвести выборку по условию (например, ai>0) его элементов в новый массив {bi}. Элементы массива {bi} плотно упаковать. Длина массива {bi} k ? n . http://www.cyberforum.ru/cpp-beginners/thread214179.html
Рассчитать количество "пиков" массива C++
Всем привет. Задание: Назовем «пиком» массива вещественных чисел его элемент, для которого значения обоих его соседей меньше его собственного значения. Найдите количество таких пиков в массиве. С массивами к сожалению плохо дружу Заранее благодарен
C++ Сортировка массива и запись в файл
Доброго времени суток! Задание: Файл содержит вещественные числа. Записать все положительные числа в порядке возрастания в файл positive.txt, а отрицательные числа в порядке убывания в файл negative.txt. Проблема с сортировкой элементов. Не понимаю в чем дело: #include <stdio.h> #include <stdlib.h> #include <conio.h>
C++ Найти слова, которые начинаются на заданную букву http://www.cyberforum.ru/cpp-beginners/thread213989.html
дана задача. найти слова, которые начинаются на заданную букву. мне нужна функция которая находит эти слова
C++ Ввести и вывести текст на консоль Нужно простая работа с текстом нужно ввести текст(с пробелами т.е. cin - неподойдет) и вывести введенный текст также с пробелами со всем. вот собственно и все. Может кто помочь? подробнее

Показать сообщение отдельно
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4237 / 2770 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
23.12.2010, 15:00     Путем перестановки квадратной веществ. матрицы добиться того, чтобы максимум находился в левом верхнем углу
Могу поделится таким вот кодом (там даже коментарии есть)), думаю вам несложно будет его переделать под свою задачу.\
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
//Сформировать матрицу B(m, n), элементами которой являются случайные
//числа, равномерно распределенные в интервале [-5,5]. Переставляя ее
//строки и столбцы, добиться того, чтобы наибольший элемент матрицы
//оказался в правом нижнем углу.
//////////////////////////////////////////////////////////////////////////
#include<iostream>
#include<ctime>
using namespace std;
void gen_random(int[][6]);//ф-ция для заполнения двумерног массива случайными числами
const int n=5;//константы для размера матрицы
const int m=6;
int main(){
    setlocale( LC_ALL,"Russian" );
    int matrix[n][m];//двумерный массив - т.е. матрица n*m
    gen_random(matrix);//заполняем матрицу
    int a,b, max=matrix[0][0];
    for(int i=0;i<n;i++)//находим максимальный элемент и его координаты в матрице
        for(int j=0;j<m;j++)//двойной цикл, т.к. массив двумерный
            if(matrix[i][j]>max){//если элемент матрицы больше максималького
                max=matrix[i][j];//то максимальным делаем этот элемент
                a=i;//и запоминаем его координаты
                b=j;
            }
    cout<<"Матрица до преобразования:"<<endl;
           for(int i=0;i<n;i++){//вывод содержимого матрицы 
        for(int j=0;j<m;j++)
            cout<<matrix[i][j]<<"   ";
        cout<<endl;
    }
    for(int i=0;i<m;i++){//в цикле меняем местами первый столбец и столбец с максимальным элементом
        int tmp=matrix[i][0];
        matrix[i][0]=matrix[i][b];
        matrix[i][b]=tmp;
    }
    for(int i=0;i<n;i++){//меняем местами последний ряд, и ряд с максимальным элементом
        int tmp=matrix[n-1][i];//таким образом максимальный элемент оказывается 
        matrix[n-1][i]=matrix[a][i];//в правом нижнем углу , как и нужно по заданию
        matrix[a][i]=tmp;
    }
    cout<<"Матрица после преобразования:"<<endl;
    for(int i=0;i<n;i++){
        for(int j=0;j<m;j++)
            cout<<matrix[i][j]<<"   ";
        cout<<endl;
    }
    system("pause");
    return 0;
}
void gen_random(int matr[][6]){//заполняем двумерный массив случайными числами
    srand(time(NULL));
    for(int i=0;i<n;i++)
        for(int j=0;j<m;j++)
            matr[i][j]=rand()%11-5;//эта конструкция заполняет массив числами от -5 до 5
}
 
Текущее время: 00:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru