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

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

Войти
Регистрация
Восстановить пароль
 
frEEze00
2 / 2 / 1
Регистрация: 10.07.2014
Сообщений: 25
#1

Создать двумерный массив, каждый элемент которого задается случайным образом - C++

19.08.2014, 02:53. Просмотров 403. Ответов 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
55
#include <iostream>;
#include <cstdlib>;
#include <ctime>;
 
using namespace std;
 
void massivMinMax(int razmer, int **mas)
{           //функция, которая ищет максимальный и минимальный элемент на(над) главной и побочной диаганалью
    int i, j;
    int max=mas[0][0], min=mas[0][0];
    for (i=0; i<razmer; i++)
    {
        cout<<"\n";
        for (j=0; j<razmer; j++)
        {   
            if ((i<=j) && (i+j<razmer))
            {
 
                if (mas[i][j] < min) {min=mas[i][j]; }
                if (mas[i][j] > max) {max=mas[i][j]; }
                cout<<mas[i][j]<<" ";
            }
            else {cout<<"  ";}
        }
    }
    cout<<"\nМинимальный:"<<min<<"\n";
    cout<<"Максимальный:"<<max<<"\n";
    
};
int main(){
setlocale(LC_ALL,"RUSSIAN");
int menu, i, j, razmer;
int **mas;
mas = new int *[99];
for (i=0; i<99; i++){mas[i]=new int[99];}
 
        srand(time(NULL));
    razmer=rand() % 5 + 1;   //пусть размер будет до 5
    cout<<"Случайный размер = "<<razmer<<"\n";
    cout<<"Случайная матрица:";
    for (i=0; i<razmer; i++);
    {
        cout<<"\n";
        for (j=0; j<razmer; j++)
        {
            mas[i][j]=rand() % 100 + 1;
            cout<<mas[i][j]<<" ";
        }
    }
 
    massivMinMax(razmer,mas);
 
system("pause");
return 0;
}
проблема в том, что у меня выводит только первую строку матрицы.

Добавлено через 8 минут
вопрос отменяется, в 41 строке лишний символ ";" в конце строки.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.08.2014, 02:53     Создать двумерный массив, каждый элемент которого задается случайным образом
Посмотрите здесь:

Дан двумерный массив размером 5 * 8, заполненный случайным образом. Вставить перед всеми строками, первый элемент которых делится на3,вставить.... - C++
Дан двумерный массив размером 5 * 8, заполненный случайным образом. Вставить перед всеми строками, первый элемент которых делится на 3,...

Заполнить двумерный динамический массив случайным образом - C++
Написать функции для работы с двумерным динамическим массивом: - создать массив указанного размера(строки, столбцы) - заполнить...

Случайным образом заполнить двумерный массив (с++ помогите) - C++
Случайным образом заполнить двумерный массив. Каждую строку упорядочить по возрастанию и сохранить получившийся массив в файл.

Создать массив, каждый элемент которого содержит сумму делителей элементов исходного массива - C++
с клавиатуры вводится масив. создать новый массив в который каждый соответствующий элемент будет содержать сумму делителей соответствующих...

Создать массив, каждый элемент которого равен среднему арифметическому соответствующей строки данной матрицы - C++
Матрица А(5,3) задать по формуле A=-cos(-4,3i-j). Создать новый одномерный массив, каждый элемент которого равен среднему арифметическому...

Дан двумерный массив размером 5х6, заполненный случайным образом - C++
Дан двумерный массив размером 5х6, заполненный случайным образом. Заменить максимальный элемент каждой строки на противоположный по знаку

Дан двумерный массив размером nxm, заполненный случайным образом - C++
23. Дан двумерный массив размером nхm, заполненный случайным образом. Определить, есть ли в данном массиве строка, в которой ровно два...

Заполнить двумерный массив расположив заданное количество единиц случайным образом - C++
Ребята , nомогите додумать , есть двумерный динамический массив , заnолняется рандомно цыфрами 0 и 1 , в чем суть. nользователь вводит ,...

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

Дан двумерный массив размером nm, заполненный случайным образом. Найти сумму отрицательных элементов - C++
Помогите, пожалуйста. Дан двумерный массив размером nm, заполненный случайным образом. Найти сумму отрицательных элементов.


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
19.08.2014, 07:48     Создать двумерный массив, каждый элемент которого задается случайным образом #2
А почему твоя проблема никак не связана с вопросом?
Donnerwetter
40 / 40 / 12
Регистрация: 04.02.2014
Сообщений: 144
19.08.2014, 09:07     Создать двумерный массив, каждый элемент которого задается случайным образом #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
frEEze00, несколько советов по коду:

1. При выводе матрицы используйте выравнивание с помощью функции setw(), тогда диагонали будут нагляднее и удобнее смотреть результат:
C++
1
cout << setw(2) << mas[i][j] << " ";
Аргумент в скобках означает разрядность элементов массива - двух-, трехзначные числа и т.д. Только для работы функции не забудьте подключить #include<iomanip>.

2. Функция massivMinMax у Вас помимо прочего выводит заданный фрагмент, отделите его визуально от исходной матрицы. А то цифры сливаются, я сразу подумал, что "левые" значения выводятся. И вообще вырабатывайте привычку писать отдельные функции для конкретных задач. Допустим, одна - выводит фрагмент матрицы, другая - ищет максимум и минимум. Не смешивайте. Тогда будет проще искать баги и вносить изменения в программу.

3. Из рандома, определяющего размер можно убрать значения 1 и 2, все равно там нет диагоналей. Пусть выводит сразу матрицы от [3][3].
Ответ Создать тему
Опции темы

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