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

Использовать указатели вместо индексов для обращения к матрице

14.11.2022, 22:26. Показов 367. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
здравствуйте! помогите , пожалуйста, с решением задачи. в этой задаче нужно сделать i и j указателями.

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>
using namespace std;
int main()
{
    setlocale(LC_ALL, "Russian");
    const int str = 3, stolb = 3;    // матрица 3x3
    int** array = new int* [str];   // выделили память
    for (int i = 0;i < str;i++)
        array[i] = new int[stolb];
    for (int i = 0;i < str;i++)          // ввод массива
        for (int j = 0;j < stolb;j++)
            cin >> array[i][j];
 
    for (int i = 0;i < str;i++)          // выведем исходную матрицу
    {
        for (int j = 0;j < stolb;j++)
            cout << array[i][j] << ' ';
        cout << '\n';
    }
 
    int** ykaz_mass = new int* [str];   // выделили память
    for (int i = 0;i < str;i++)
        ykaz_mass[i] = new int[stolb];
 
    int minRow = 0, maxRow = 0, min, max;
    min = max = array[0][0];
 
    for (int i = 0;i < str;i++)         // находим нужные строки minRow и maxRow   
        for (int j = 0;j < stolb;j++)
        {
            if (**ykaz_mass < min) { 
                minRow = i; min = array[i][j]; 
            }
            if (**ykaz_mass > max) {
                maxRow = i; max = array[i][j]; 
            }
        }
 
    // обмен
    int* ptr = &array[minRow][0];
    array[minRow] = array[maxRow];
    array[maxRow] = ptr;
    cout << '\n';
    for (int i = 0;i < str;i++)          // выведем результат
    {
        for (int j = 0;j < stolb;j++)
            cout << array[i][j] << ' ';
        cout << '\n';
    }
    for (int i = 0;i < str;i++)          // очистим память
        delete[] array[i];
    delete[] array;
 
    return 0;
}
В данной действительной матрице размера mn поменять местами строку,
содержащую элемент с наибольшим значением, со строкой, содержащей элемент с
наименьшим значением. Предполагается, что такой элемент единственный.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.11.2022, 22:26
Ответы с готовыми решениями:

Переделать задачу, используя указатели вместо индексов(С++)
#include &lt;stdio.h&gt; #define TWLV 12 #define YRS 5 void main () { float rain = { {10.2,...

Как в коде обращения к столбцу вместо наименования столбца использовать переменную?
Здравствуйте! Имеется код обращения к столбцу: Forms!..ColumnHidden = True Как вместо &quot;&quot;...

Использовать вместо массивов - указатели
Помогите переписать, чтоб вместо массивов были показатели! #include &lt;iostream&gt; #include...

Использовать указатели вместо ссылок
там надо указатели вместо ссылок использовать вроде, но у меня не получилось сделать для си, уже не...

2
0 / 0 / 0
Регистрация: 12.11.2022
Сообщений: 16
16.11.2022, 17:28  [ТС] 2
поднимаю
0
Модератор
Эксперт С++
13714 / 10913 / 6476
Регистрация: 18.12.2011
Сообщений: 29,141
16.11.2022, 17:48 3
Лучший ответ Сообщение было отмечено Даниил29071 как решение

Решение

Например:
Цитата Сообщение от Даниил29071 Посмотреть сообщение
C++
1
2
3
for (int i = 0;i < str;i++) // ввод массива
 for (int j = 0;j < stolb;j++)
 cin >> array[i][j];
C++
1
2
3
for (char** pi = array;pi != array+str;++pi) // ввод массива
    for (char* pj = *pi;pj != *pi+stolb;++pj)
       cin >> *pj;
1
16.11.2022, 17:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.11.2022, 17:48
Помогаю со студенческими работами здесь

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

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

Какие компоненты лучше использовать для обращения к БД с других компов?
Подскажите, плз.БД (FoxPro 2.6)находится на одном компе.Какие компоненты лучше использовать для...

Какую структуру данных лучше всего использовать для частого к ней обращения?
Есть большая база данных (просто слова), к ней регулярно выполняются обращения с целью поиска...

Почему Лафоре использует указатели на указатели, вместо обмена значениями указателей?
Доброго времени суток! Задался теоретическим вопросом. Читал пример из книги Лафоре...

Как получить ID компонента на форме. Тот ID, который можно использовать для обращения TCHeckBox(MainForm.Components[ID])
TCHeckBox(MainForm.Components).Checked:=False; Как в обработчике (OnCheck, скажем) получить ID...

В квадратной матрице найти количество нулевых элементов, для которых сумма индексов парная
В квадратной матрице найти количество нулевых элементов, для которых сумма индексов парная.


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru