С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/25: Рейтинг темы: голосов - 25, средняя оценка - 4.88
1 / 0 / 0
Регистрация: 30.06.2015
Сообщений: 46

Объявить и заполнить двумерный динамический массив случайными числами от 10 до 50 - исправить ошибки в коде

30.08.2015, 21:26. Показов 5394. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте есть задача 3:http://http://purecodecpp.com/archives/1284
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
#include<iostream>
using namespace std;
int ny,my,i,n,rez,qwa;
void zap(int *num,int z,int x)
{
    for(int i=0;i<z;i++)
    {
        num[i]=(10+rand()%50);
        for(int j=0;j<x;j++)
        {
        num[j]=(10+rand()%50);  
        }
    }
}
 void viv(int *zaq,int z,int x)
{
    for(int i=0;i<z;i++)
    {
        cout<<zaq[i];
        for(int j=0;j<x;j++)
        {
            cout<<zaq[j]<<endl;
        }
    }
}
int main()
{
    cout<<"vvedite kol-vo strok=";
    cin>>ny;
    cout<<"vvedite kol-vo ctolbo";
    cin>>my;
    int**mtr;
    mtr=new int *[ny];
    for (int i=0; i<n; i++)
  mtr[i] = new int [my];
    zap(mtr,ny,my);
    viv(mtr,ny,my);
    delete mtr [];
    delete [] mtr;
    return 0;
    system("pause");
}
При компиляции выдает ошибку:
Кликните здесь для просмотра всего текста
c:\users\тимур балдин\documents\visual studio 2008\projects\4\4\kod.cpp(38) : error C2664: zap: невозможно преобразовать параметр 1 из 'int **' в 'int *'
1> Типы, на которые указывают указатели, не связаны; для преобразования требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции
1>c:\users\тимур балдин\documents\visual studio 2008\projects\4\4\kod.cpp(39) : error C2664: viv: невозможно преобразовать параметр 1 из 'int **' в 'int *'
1> Типы, на которые указывают указатели, не связаны; для преобразования требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции

Очень прошу помочь ,смотрел в гугле и в яндексе,подробной информации по этой ошибке не нашел.Спасибо всем кто откликнулся !
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.08.2015, 21:26
Ответы с готовыми решениями:

Объявить и заполнить двумерный динамический массив случайными числами от 10 до 50 (C++ -> Си)
Помогите переделать код в СИ , а именно все cin cout , заменить на printf и scanf Этот код объявляет и заполняет двумерный...

Объявить и заполнить двумерный динамический массив случайными числами от -50 до 50
Объявить и заполнить двумерный динамический массив случайными числами от -50 до 50.Показать его на экран. вычислить сумму элементов на...

Функции для обработки матриц: объявить и заполнить двумерный динамический массив случайными числами в заданном диапазоне
Как переделать этот код так , чтоб он соответствовал этому заданию: /*Объявить и заполнить двумерный динамический массив случайными ...

13
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
30.08.2015, 21:28
foxsc, выложите задание в виде текста, а не кривой ссылки.
0
1 / 0 / 0
Регистрация: 30.06.2015
Сообщений: 46
30.08.2015, 21:30  [ТС]
простите:Объявить и заполнить двумерный динамический массив случайными числами от 10 до 50. Показать его на экран. Для заполнения и показа на экран написать отдельные функции. (подсказка: функции должны принимать три параметра – указатель на динамический массив, количество строк, количество столбцов). Количество строк и столбцов выбирает пользователь.
0
1378 / 522 / 72
Регистрация: 21.07.2015
Сообщений: 1,308
30.08.2015, 21:33
Цитата Сообщение от foxsc Посмотреть сообщение
При компиляции выдает ошибку:
Тебе компилятор черным по белому пишет проблему и строку.
Цитата Сообщение от foxsc Посмотреть сообщение
zap(mtr,ny,my);
viv(mtr,ny,my);
void viv(int **zaq,int z,int x)
void zap(int **num,int z,int x)
Цитата Сообщение от foxsc Посмотреть сообщение
delete mtr [];
delete [] mtr;
Это что за шаманство?
0
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
30.08.2015, 21:34
Цитата Сообщение от foxsc Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
void zap(int *num,int z,int x)
{
    for(int i=0;i<z;i++)
    {
        num[i]=(10+rand()%50);
        for(int j=0;j<x;j++)
        {
        num[j]=(10+rand()%50);  
        }
    }
}
нужно
C++
1
2
3
4
5
6
7
void zap(int **num,int z,int x)
{
    for(int i=0;i<z;i++)
        for(int j=0;j<x;j++)
            num[i][j]=(10+rand()%50);  
    }
}
Цитата Сообщение от foxsc Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
void viv(int *zaq,int z,int x)
{
    for(int i=0;i<z;i++)
    {
        cout<<zaq[i];
        for(int j=0;j<x;j++)
        {
            cout<<zaq[j]<<endl;
        }
    }
}
C++
1
2
3
4
5
6
7
8
9
void viv(int **zaq,int z,int x)
{
    for(int i=0;i<z;i++)
    {
        for(int j=0;j<x;j++)
            cout<<zaq[i][j]<<' ';
        cout << endl;
    }
}
0
1 / 0 / 0
Регистрация: 30.06.2015
Сообщений: 46
30.08.2015, 21:36  [ТС]
Внес изменения.Выдает туже самую ошибку
0
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
30.08.2015, 21:37
Цитата Сообщение от foxsc Посмотреть сообщение
C++
1
for (int i=0; i<n; i++)
C++
1
for (int i=0; i<ny; i++)
0
1378 / 522 / 72
Регистрация: 21.07.2015
Сообщений: 1,308
30.08.2015, 21:37
Цитата Сообщение от foxsc Посмотреть сообщение
Выдает туже самую ошибку
Не верю.
0
1 / 0 / 0
Регистрация: 30.06.2015
Сообщений: 46
30.08.2015, 21:40  [ТС]
Заработало!Спасибо)Обьясните пожалуйста из за чего у меня возникала такая ошибка?почему мой вариант не верен?
0
1378 / 522 / 72
Регистрация: 21.07.2015
Сообщений: 1,308
30.08.2015, 21:46
Цитата Сообщение от foxsc Посмотреть сообщение
почему мой вариант не верен?
Тебе компилятор вроде как написал, причем даже русским языком. int * и int ** - разные типы.
0
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
30.08.2015, 21:46
Лучший ответ Сообщение было отмечено foxsc как решение

Решение

foxsc, сравните свой вариант с рабочим.
"Всё познаётся в сравнении" © Вроде как Ницше
1
Модератор
Эксперт JS
 Аватар для Eva Rosalene
5241 / 2115 / 416
Регистрация: 06.01.2013
Сообщений: 4,846
30.08.2015, 21:55
Вообще, после выхода прекрасного стандарта C++11 лучше выкидывать библиотеку чистых сей из C++ программ.
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
#include <iostream>
#include <random>
 
std::default_random_engine engine;
std::uniform_int_distribution<int> distr(10, 50);
 
void fill (int **array, size_t rows, size_t columns) {
    for (size_t i = 0; i < rows; ++i)
        for (size_t j = 0; j < columns; ++j)
            array[i][j] = distr(engine);
}
 
void print(int **array, size_t rows, size_t columns) {
    for (size_t i = 0; i < rows; ++i) {
        for (size_t j = 0; j < columns; ++j)
            std::cout << array[i][j] << ' ';
        std::cout << std::endl;
    }
}
 
int main ( ) {
    size_t rows, columns;
    std::cout << "Type counts of rows and columns separated with space: ";
    std::cin >> rows >> columns;
    
    int **arr = new int* [rows];
    for (size_t i = 0; i < rows; ++i)
        arr[i] = new int [columns];
    
    fill(arr, rows, columns);
    print(arr, rows, columns);
    
    for (size_t i = 0; i < rows; ++i)
        delete[] arr[i];
    delete[] arr;
}
0
1 / 0 / 0
Регистрация: 30.06.2015
Сообщений: 46
30.08.2015, 21:56  [ТС]
получается двумерные массивыми нельзя рассматривать отдельно как массив i и j,вывод и заполнение должно происходить вместе:
C++
1
2
3
4
5
6
7
8
for(int i=0;i<z;i++)
    {
        num[i]=(10+rand()%50);
        for(int j=0;j<x;j++)
        {
        num[j]=(10+rand()%50);  
        }
    }
0
Модератор
Эксперт JS
 Аватар для Eva Rosalene
5241 / 2115 / 416
Регистрация: 06.01.2013
Сообщений: 4,846
30.08.2015, 22:25
Цитата Сообщение от foxsc Посмотреть сообщение
нельзя рассматривать отдельно как массив i и j
Да.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.08.2015, 22:25
Помогаю со студенческими работами здесь

Сформировать динамический двумерный массив, заполнить его случайными числами и вывести на печать
Всем привет. Не могу решить вот такую задачу на с++. СРОЧНО помогите, мне эту лабу надо сдать в субботу, как понимаете времени вообще нет( ...

Сформировать динамический двумерный массив, заполнить его случайными числами и вывести на печать
Все привет!Прошу помочь,на примере этой задачи нужно сформировать динамический двумерный массив, заполнить его случайными числами и вывести...

Заполнить динамический двумерный массив случайными числами и подсчитать кол-во чисел кратных 5, лежащих на главной диагонали
Ввести с клавиатуры одно число N. Создать динамический двумерный массив N*N. Заполнить получившийся массив случайными числами и подсчитать...

Найти причины возникновения ошибок в коде и исправить эти ошибки (динамический двумерный массив)
Подскажите пожалуйста,что я упустила, где шибка? #include &lt;iostream&gt; using namespace std; void main() { int n=0; int...

Объявить и заполнить квадратный двумерный динамический массив
Обьявить и заполнить квадратный двумерный динамический массив случайными числами от -50 до 50 показать его на экран макс сумма элементов...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru