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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Nikolay_1
0 / 0 / 0
Регистрация: 15.01.2014
Сообщений: 24
#1

Найти минимальное значение в двумерное массиве - C++

23.01.2014, 21:47. Просмотров 342. Ответов 6
Метки нет (Все метки)

Доброго времени суток !! Написал программу в Visual Studio 2012 , где нужно вывести на экран самый маленький элемент всего массива , но при компиляции выдает кривовато , объясните как исправить
(не меняю основу кода)

Вот сам код :
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
#include <iostream>
#include <windows.h>
using namespace std;
 
void main (){
 
    SetConsoleOutputCP(1251);   
    const int X=3,Y=3;
    int arr [X][X]={10, 12, 9,
                    11, 44, 99,
                    55, -5, 10,};
    int imin=0,jmin=0;
    for(int i=0;i<Y;i++)
    {
    for (int j=0;j<X;j++)
        {
        cout <<arr [i][j] <<"\t";
        }
        for(int i=0;i<Y;i++)
    {
    for (int j=0;j<X;j++)
    if (arr[i][j]<arr[imin][jmin])
    {
    imin=i;
    jmin=j;
    }
    }
    }
    cout << "a[" << imin << "][" <<jmin << "] = " <<arr [imin][jmin] <<"\t"; 
 
}
0
Миниатюры
Найти минимальное значение в двумерное массиве  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2014, 21:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Найти минимальное значение в двумерное массиве (C++):

Найти минимальное значение в двумерное массиве - C++
Доброго времени суток !! Написал программу в Visual Studio 2012 , где нужно вывести на экран самый маленький элемент всего массива , но при...

Найти минимальное и максимальное значение в массиве - C++
Что то я не пойму почему этот код не находит минимальное и максимальное значение в массиве const int SIZE=5; int mas={9,5,7}; ...

В заданном массиве из n элементов среди первых n/2 элементов найти минимальное значение - C++
1.В заданном массиве из n элементов среди первых n/2 элементов найти минимальное значение, а в оставшихся- максимальное значение( через...

Минимальное и максимальное значение в массиве. С++ - C++
Есть задача: /*1. Дан одномерный массив. Необходимо вывести на экран индексы максимального и минимального элементов данного массива*/ ...

Минимальное значение в массиве через многопоточность - C++
Мне нужно найти минимальное значение через многопоточность. Что у меня уже есть: есть функция которая ищет минимальное значение в ...

Неправильно вычисляется минимальное значение в массиве - C++
#include &lt;stdio.h&gt; #include &lt;iostream.h&gt; #include &lt;conio.h&gt; int main() { int max; int min; int a={3,5,8,2,5,8,5,6,9,16}; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
cooller
565 / 533 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
23.01.2014, 21:52 #2
Nikolay_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
#include <iostream>
#include <windows.h>
using namespace std;
 
int main ()
{
 
    SetConsoleOutputCP(1251);
    const int X=3;
    int arr [X][X]= {{10, 12, 9},
                     {11, 44, 99},
                     {55, -5, 10},
                    };
    int imin=0,jmin=0;
    for(int i=0; i<X; i++,cout<<endl)
    {
        for (int j=0; j<X; j++)
        {
            cout <<arr [i][j] <<"\t";
        }
    }
        for(int i=0; i<X; i++)
        {
            for (int j=0; j<X; j++)
                if (arr[i][j]<arr[imin][jmin])
                {
                    imin=i;
                    jmin=j;
                }
        }
 
    cout << "a[" << imin << "][" <<jmin << "] = " <<arr [imin][jmin] <<"\t";
 
 
}
0
Бедел
233 / 29 / 4
Регистрация: 04.06.2010
Сообщений: 286
23.01.2014, 21:57 #3
Инициализируйте ДВУМЕРНЫЙ массив вот так:
Цитата Сообщение от Nikolay_1 Посмотреть сообщение
C++
1
2
3
int arr [X][X]={{10, 12, 9},
{11, 44, 99},
{55, -5, 10}};
Добавлено через 4 минуты
Nikolay_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
#include <iostream>
#include <windows.h>
using namespace std;
 
int main (){
 
    SetConsoleOutputCP(1251);
    const int X=3,Y=3;
    int arr [X][X]={{10, 12, 9},
                    {11, 44, 99},
                    {55, -5, 10}};
    int imin=0,jmin=0;
    for(int i=0;i<Y;i++)
    {
    for (int j=0;j<X;j++)
        {
        cout <<arr [i][j] <<"\t";
        }
        cout << "\n";
    for(int i=0;i<Y;i++)
        {
            for (int j=0;j<X;j++)
                if (arr[i][j]<arr[imin][jmin])
            {
                    imin=i;
                    jmin=j;
            }
        }
    }
    cout << "a[" << imin << "][" <<jmin << "] = " <<arr [imin][jmin] <<"\t";
 
}
0
Nikolay_1
0 / 0 / 0
Регистрация: 15.01.2014
Сообщений: 24
23.01.2014, 22:01  [ТС] #4
Работает отлично , спасибо огромное , объясните пожалуйста в чем была моя ошибка скрин выше.
0
cooller
565 / 533 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
23.01.2014, 22:05 #5
Добавлено через 3 минуты
Цитата Сообщение от Nikolay_1 Посмотреть сообщение
Работает отлично , спасибо огромное , объясните пожалуйста в чем была моя ошибка скрин выше.
Чтобы массив выглядел в виде таблицы, нужно поставить cout<<endl; после каждой строки
Вот пример
C++
1
2
3
4
5
6
7
    for(int i=0; i<Y; i++)
    {
        cout<<endl;
        for (int j=0; j<X; j++)
 
            cout <<arr [i][j] <<"\t";
    }
0
Бедел
233 / 29 / 4
Регистрация: 04.06.2010
Сообщений: 286
23.01.2014, 22:07 #6
Nikolay_1, ошибка в том, что ты после прогона по строке, не переходил на следующую строку.
Обрати внимание на 19-ую строку в моём коде.
C++
1
cout << "\n";
Или можно сделать так, как сделал cooller_94:
C++
1
for(int i=0; i<X; i++,cout<<endl)
0
Nikolay_1
0 / 0 / 0
Регистрация: 15.01.2014
Сообщений: 24
23.01.2014, 22:42  [ТС] #7
Ясно , учту , еще учиться и учиться
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.01.2014, 22:42
Привет! Вот еще темы с ответами:

Одномерные Массивы, Минимальное значение в массиве - C++
Помогите пожалуйста найти максимальный элемент в массиве, у меня почему -то на выходе номер элемента 0 и см элемент 0 , хотя таких нет,...

Определить минимальное значение в массиве, неправильный результат - C++
помогите пожалуйста, cоздайте массив из 15 целочисленных элементов и определите среди них минимальное значение, вроде сделал все правильно...

В одномерном массиве целых чисел заменить минимальное значение максимальным. - C++
Как это делать? Подскажите пожалуйста ? :((

В одномерном массиве целых чисел заменить минимальное значение максимальным. - C++
Как делать, подскажите :(( Только можно по простенькому, без cin и cout?:) А с функциями scanf и printf


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
23.01.2014, 22:42
Ответ Создать тему
Опции темы

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