Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 1
Регистрация: 22.04.2017
Сообщений: 105
1

Заполнение двумерного массива рандомными числами

24.12.2017, 19:40. Просмотров 649. Ответов 2
Метки нет (Все метки)

Здравствуйте! Стоит задача заполнить двумерный массив случайными значениями, для этого я использовал следующий код:
C++
1
2
3
4
5
6
7
8
9
10
11
int con = 0;
    
    for(int i = 0; i < MAP_SIZE; i++)
    {
       for(int j = 0; j < MAP_SIZE; j++)
       {
          Margin[j] [con] = 0 + rand() % (9 - 0 + 1);
       }
       
       con++;
    }



Однако, когда я таким же образом пытаюсь выводить значения:

C++
1
2
3
4
5
6
7
8
9
10
    for(int i = 0; i < MAP_SIZE; i++)
    {
       for(int j = 0; j < MAP_SIZE; j++)
       {
         cout << Margin[j] [0] << "  ";
       }
       
       con ++;
       cout << "\n";
    }


Появляется некоторая оказия, которая изображена на картинке.


Я не совсем понимаю, где именно я допустил ошибку во время заполнения, буду благодарен, если укажите на ошибку, заранее спасибо.
0
Изображения
 
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.12.2017, 19:40
Ответы с готовыми решениями:

Заполнение массива рандомными числами
Здравствуйте! Нужно заполнить массив float рандомными числами от 0.3 до 0.9 #define MIN 0.3...

Заполнение массива рандомными числами
Мне необходимо создать массив из 20000 элементов порядок элементов по возрастанию и по убыванию....

Заполнение массива рандомными числами без повторений
Здравствуйте! Пытаюсь заполнить массив рандомными числами без повторений, в коде есть проверка на...

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

2
0 / 0 / 1
Регистрация: 22.04.2017
Сообщений: 105
24.12.2017, 20:00  [ТС] 2
Сам нашел ошибку, кому интересно:

C++
1
2
3
4
5
6
7
8
9
10
for(int i = 0; i < MAP_SIZE; i++)
    {
       for(int i = 0; i < MAP_SIZE; i++)
       {
         cout << Margin[i] [0] << "  ";  // Здесь вместо нуля должна быть переменная con, которая осуществляет свдиг по Y
       }
       
       con ++;
       cout << "\n";
    }
0
54 / 54 / 23
Регистрация: 02.09.2009
Сообщений: 285
24.12.2017, 20:03 3
Не понятно, чем Вас не устроила переменная i в части заполнения массива, что вместо нее Вы используете переменную con. Ну да ладно.
Во втором блоке кода в строке 5, по Вашей логике, должно быть
C++
1
cout << Margin[con] [j] << "  ";
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.12.2017, 20:03

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Заполнение двумерного массива двузначными числами
Нужно заполнить двумерный массив случайными двузначными числами. Пробую и через rand() и random() и...

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

Заполнение двумерного массива случайными числами
Доброго времени суток! Только начал изучать двумерные массивы. Было задание заполнить одномерный...

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


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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