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

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

Восстановить пароль Регистрация
 
frEEze00
2 / 2 / 1
Регистрация: 10.07.2014
Сообщений: 25
19.08.2014, 02:53     Создать двумерный массив, каждый элемент которого задается случайным образом #1
Если вкратце, нужно создать двумерный массив, каждый элемент которого задается случайным образом. Вот моя программа:
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     Создать двумерный массив, каждый элемент которого задается случайным образом
Посмотрите здесь:

Даны два двухмерных массива одинаковых размеров. Создать третий массив такого же размера, каждый элемент которого равен 100 C++
Случайным образом заполнить двумерный массив (с++ помогите) C++
Создать массив, каждый элемент которого содержит сумму делителей элементов исходного массива C++
C++ Дан двумерный массив размером 5 * 8, заполненный случайным образом. Вставить перед всеми строками, первый элемент которых делится на3,вставить....
C++ Дан двумерный массив размером 5х6, заполненный случайным образом
C++ Дан двумерный массив размером nxm, заполненный случайным образом
C++ Создать массив, каждый элемент которого равен среднему арифметическому соответствующей строки данной матрицы

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
castaway
Эксперт С++
4837 / 2976 / 367
Регистрация: 10.11.2010
Сообщений: 11,008
Записей в блоге: 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].
Yandex
Объявления
19.08.2014, 09:07     Создать двумерный массив, каждый элемент которого задается случайным образом
Ответ Создать тему
Опции темы

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