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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
BOTTAK
 Аватар для BOTTAK
0 / 0 / 0
Регистрация: 16.10.2010
Сообщений: 59
#1

просматривая поочередно элементы диагоналей двумерного массива - C++

18.02.2011, 13:35. Просмотров 348. Ответов 1
Метки нет (Все метки)

Здравствуйте уважаемые посетители портала CyberForum.ru, хотелось бы обратится к вам с просьбой, написать небольшую программу на С++

Задание: Просматривая поочередно элементы диагоналей двумерного массива, выбрать все положительные числа в одномерный массив и произвести его сортировку методом прямого включения в порядке убывания

Заранее буду благодарен, всем кто отзовется..Спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.02.2011, 13:35     просматривая поочередно элементы диагоналей двумерного массива
Посмотрите здесь:

C++ Переписать поочередно элементы главной и побочной диагоналей матрицы в массив
Положительные элементы двумерного массива разместить в одномерный C++
C++ Составить массив B так, чтобы элементы массива A[0..6, 0..6] следовали в нем в последовательности диагоналей параллельно побочной диагонали
Сортировка диагоналей двумерного массива C++
C++ сортировка диагоналей двумерного массива
C++ Поменять местами элементы двумерного массива
C++ Сдвинуть элементы двумерного массива на k позиций влево
Одинаковые парные элементы двумерного массива по строкам C++
Сравнить элементы в столбцах двумерного массива C++
Обработать элементы двумерного массива по условию C++
Рандомно перемешать элементы двумерного массива C++
Поменять местами элементы двумерного массива C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
fasked
Эксперт C++
 Аватар для fasked
4929 / 2509 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
18.02.2011, 14:18     просматривая поочередно элементы диагоналей двумерного массива #2
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
#include <algorithm>
#include <iterator>
#include <iostream>
#include <iomanip>
#include <cstdlib>
#include <ctime>
 
int main()
{
    const int limit = 100;
    const int rows = 5, columns = 5;
    const int size = rows > columns ? columns : rows;
 
    int matrix [rows][columns];
    int diagonal [size];
    int npos = 0;
 
    // random fill the matrix
    srand((unsigned int)time(NULL));
    for (int i = 0; i < rows; ++i) {
        for (int j = 0; j < columns; ++j)
            matrix[i][j] = std::rand() % limit - std::rand() % limit;
    }
 
    // copy the matrix's main diagonal to the single array
    for (int i = 0; i < size; ++i) {
        if(matrix[i][i] > 0)
            diagonal[npos++] = matrix[i][i];
    }
 
    // sort 
    for (int i = 1; i < npos; ++i) {
        for (int k = i, j = i - 1; j >= 0 && diagonal[j] < diagonal[k]; --j) {
            std::swap(diagonal[k--], diagonal[j]);
        }
    }
 
    // print out the matrix
    for (int i = 0; i < rows; ++i) {
        for (int j = 0; j < columns; ++j) {
            std::cout << std::setw(3) << matrix[i][j] << " ";
        }
 
        std::cout << std::endl;
    }
 
    // print out the sorted diagonal
    std::cout << std::endl;
    std::copy(diagonal, diagonal + npos, std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
 
    system("PAUSE");
    return 0;
}
Yandex
Объявления
18.02.2011, 14:18     просматривая поочередно элементы диагоналей двумерного массива
Ответ Создать тему
Опции темы

Текущее время: 08:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru