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

Задачи на двумерные массивы - C++

Восстановить пароль Регистрация
 
spartakvladimir
1 / 1 / 0
Регистрация: 06.11.2013
Сообщений: 15
11.12.2013, 17:49     Задачи на двумерные массивы #1
Помогите решить следующие задачи:
1. В квадратном массиве поменять местами строку и столбец, на пересечении которых находится ноль.
2. В каждой строке переставить первый отрицательный и последний положительный элементы.
3. Просматривая 1 строку найти максимальный и минимальный элементы, поменять местами столбцы, в которых они находятся.
Заранее спасибо!

Добавлено через 22 минуты
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <iomanip>
#include <ctime>
using namespace std;
void main() {
    srand(time(NULL));
    const int ar = 8;
    int x = 0, y = 0;
    int mat[ar][ar];
    for (x; x < ar; x++) {
        for (y; y < ar; y++)
            mat[x][y] = rand() % 10;
        cout << mat[x][y];
    }
}
Вроде бы всё правильно, но в консоли показывает случайную ерунду.
Поставил фигурные скобки во вложенном цикле, теперь выполняется только одна итерация внешнего цикла. Не знаю почему.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.12.2013, 17:49     Задачи на двумерные массивы
Посмотрите здесь:

Двумерные массивы в С++ C++
Двумерные массивы C++
двумерные массивы C++
Двумерные массивы C++
C++ Двумерные массивы
C++ Двумерные массивы.
Двумерные массивы. C++
Двумерные массивы C++
с++ двумерные массивы C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vorox
 Аватар для Vorox
25 / 24 / 3
Регистрация: 26.11.2010
Сообщений: 57
11.12.2013, 17:56     Задачи на двумерные массивы #2
А что правильно? Здесь просто описан алгоритм создания массива и заполнение псевдослучайными числами.
И то вывод в консоль не верный...
spartakvladimir
1 / 1 / 0
Регистрация: 06.11.2013
Сообщений: 15
11.12.2013, 18:46  [ТС]     Задачи на двумерные массивы #3
Правильно в смысле, что массив должен выводиться табличкой. А почему вывод неправильный?
zss
Модератор
Эксперт С++
 Аватар для zss
6048 / 5651 / 1826
Регистрация: 18.12.2011
Сообщений: 14,437
Завершенные тесты: 1
11.12.2013, 18:56     Задачи на двумерные массивы #4
C++
1
2
3
4
5
6
7
8
9
    for (x=0; x < ar; x++) 
    {
        for (y=0; y < ar; y++)
        {
            mat[x][y] = rand() % 10;
            cout << mat[x][y]<<" ";
        }
        cout<<endl;
    }
spartakvladimir
1 / 1 / 0
Регистрация: 06.11.2013
Сообщений: 15
11.12.2013, 20:05  [ТС]     Задачи на двумерные массивы #5
Подскажите как решить задачи!

Добавлено через 48 минут
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
#include <iostream>
using namespace std;
 
int main(){
    const int n = 8;
    int arr1[n][n], z, w, i, j, temp, temp1;
    for (i = 0; i < n; i++){
        for (j = 0; j < n; j++){
            arr1[i][j] = rand() % 10;
            cout << arr1[i][j] << " ";
            if (arr1[i][j] == 0) {
                z = i;
                    w = j;
            }
        }
        cout << endl;
    }
    for (i = 0, j = 0; i < n; i++, j++) {
        temp == arr1[i][z];
        temp1 == arr1[w][j];
        arr1[i][z] == temp1;
        arr1[w][j] == temp;
        cout << arr1[i][z];
    }
}
Вот то, что у меня есть. Правда выводит не нужную строку, но ход мысли, думаю, уловить можно будет. Я объявляю массив, инициализирую его псевдослучайными значениями во вложенном цикле. Далее загоняю в переменные z и w номера столбца и строки в которой встретился ноль, чтобы использовать позднее. Потом создаю цикл в котором счётчиком является номер строки (i), также в этом же цикле у меня инкрементируется значение j (столбцы). В цикле я передаю значения столбца и строки временным переменным, а потом обмениваюсь значениями с переменными.
Логика понятна? Подскажите, где я мог допустить ошибку.
Yandex
Объявления
11.12.2013, 20:05     Задачи на двумерные массивы
Ответ Создать тему
Опции темы

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