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

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

Войти
Регистрация
Восстановить пароль
 
apachan
13 / 13 / 2
Регистрация: 07.12.2010
Сообщений: 127
#1

Индекс - C++

08.12.2010, 17:52. Просмотров 1407. Ответов 7
Метки нет (Все метки)

Немного ламерский вопрос, но все же как в данной проге вывести вместо значения числа, его индекс в массиве?
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
#include <iostream>
#include <ctime>
#if defined (_MSC_VER) && _MSC_VER <= 1200
#define for if (false) ; else for
#endif 
 
int main ()
{
    const size_t ROW=4;
    const size_t COLUMN=4;
    int MAS[ROW][COLUMN];
 
  
    srand (time (NULL));
    std::cout << "Start matrix:\n";
    for (size_t i=0; i<ROW; i++) {
        for (size_t j=0; j<COLUMN; j++) {
            MAS[i][j]=rand()%16;
            std::cout << MAS[i][j] << " "; }
        std::cout << std::endl; }
    std::cout << std::endl;
 
 
    size_t min;
    size_t REZULT=0;
    for (size_t i=0; i<ROW; i++) {
        min=MAS[i][0];
        for (size_t j=0; j<COLUMN; j++)
            if (MAS[i][j]<min) min=MAS[i][j];
        if (min>REZULT) REZULT=min; }
   
 
    std::cout << "REZULT: " << REZULT;
    std::cout << std::endl;
 
    return 0;
}
Добавлено через 3 минуты
И как сделать тоже самое, только с помощью динамических массивов?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.12.2010, 17:52
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Индекс (C++):

Переменная + индекс - C++
Всем доброго времени суток, знает кто-нибудь, как получить название переменной, получаемое путем конкатенации строки и индекса i? ...

индекс массива - C++
Помогите люди!!!!! вывести индекс наименьшего элемента массива.

Индекс массива - C++
Необходимо составить программу, которая бы меняла местами в строке первую и последнюю, вторую и предпоследнюю и т.д., но почему-то...

массив и индекс - C++
объявляя массив и его индекс,индекс должен быть константой.Почему? Препод сказал что если массив будет динамической то можно будет чтобы...

минимальный индекс - C++
#include &lt;iostream&gt; #include &lt;stdlib.h&gt; using namespace std; int badboys (double* a,int size); void mas_out (double* a,int size); ...

индекс масива - C++
закидайте меня камнями, но почему индексация в масивах с 0, потомучто договарилиси, Страуструп или че еще?

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
^Tecktonik_KiLLeR
1160 / 442 / 22
Регистрация: 23.06.2009
Сообщений: 6,245
Завершенные тесты: 1
08.12.2010, 18:16 #2
Цитата Сообщение от apachan Посмотреть сообщение
место значения числа, его индекс в массиве?
C++
1
cout<<"i="<<i<<" j="<<j<<endl;
Добавлено через 12 секунд
В цикле
1
apachan
13 / 13 / 2
Регистрация: 07.12.2010
Сообщений: 127
08.12.2010, 18:28  [ТС] #3
Странно, ругается на j' : undeclared identifier в каком цикле? Туплю что-то...
0
^Tecktonik_KiLLeR
1160 / 442 / 22
Регистрация: 23.06.2009
Сообщений: 6,245
Завершенные тесты: 1
08.12.2010, 18:31 #4
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
#include <iostream>
#include <ctime>
#if defined (_MSC_VER) && _MSC_VER <= 1200
#define for if (false) ; else for
#endif 
 
int main ()
{
    const size_t ROW=4;
    const size_t COLUMN=4;
    int MAS[ROW][COLUMN];
 
  
    srand (time (NULL));
    std::cout << "Start matrix:\n";
    for (size_t i=0; i<ROW; i++) {
        for (size_t j=0; j<COLUMN; j++) {
            MAS[i][j]=rand()%16;
            std::cout << MAS[i][j] << " "; }//Здесь выводится элемент матрицы,а надо чтобы индекс,так?Тогда напиши вместо этой строчки такое
//std::cout <<"MAS["<<i<<"]["<<j<<"="<< MAS[i][j] << " "; 
//Хотя несколько извращенно
        std::cout << std::endl; }
    std::cout << std::endl;
 
 
    size_t min;
    size_t REZULT=0;
    for (size_t i=0; i<ROW; i++) {
        min=MAS[i][0];
        for (size_t j=0; j<COLUMN; j++)
            if (MAS[i][j]<min) min=MAS[i][j];
        if (min>REZULT) REZULT=min; }
   
 
    std::cout << "REZULT: " << REZULT;
    std::cout << std::endl;
 
    return 0;
}
0
apachan
13 / 13 / 2
Регистрация: 07.12.2010
Сообщений: 127
08.12.2010, 18:35  [ТС] #5
Не Надо, чтобы выводился индекс результата в конце, рядом с его значением.
0
^Tecktonik_KiLLeR
1160 / 442 / 22
Регистрация: 23.06.2009
Сообщений: 6,245
Завершенные тесты: 1
08.12.2010, 18:50 #6
apachan, А что программа то делает?О_о
0
apachan
13 / 13 / 2
Регистрация: 07.12.2010
Сообщений: 127
08.12.2010, 21:34  [ТС] #7
Ищет минимальные эл-ты в каждой строке, потом среди них максимальный, нужно помимого него вывести на экран его индекс, например РЕЗАЛТ 4 [0][3].

Добавлено через 2 часа 40 минут
Все равно проскакивает j' : undeclared identifier хотя вроде правильно все...
0
apachan
13 / 13 / 2
Регистрация: 07.12.2010
Сообщений: 127
17.12.2010, 18:52  [ТС] #8
Кому может понадобится - вот, индексы показываются:

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
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
#include <stdio.h>
#if defined (_MSC_VER) && _MSC_VER <= 1200
#define for if (false) ; else for
#endif 
 
#define n 3
#define m 4
int main()
{int min,max,i_max,j_max,i,j;
    int matrix[n][m];
    srand (time (NULL));
    std::cout << "Start matrix:\n";
    for ( i=0; i<n; i++) {
        for ( j=0; j<m; j++) {
            matrix[i][j]=rand()%16;
            std::cout << matrix[i][j] << " "; } //std::cout <<"MAS["<<i<<"]["<<j<<"]="<< MAS[i][j] << " "; }
        std::cout << std::endl; }
    std::cout << std::endl;
       
        int str_min[n];
                                      
        for(int i=0;i<n;i++)
        {
                min=matrix[i][0];
                for(int j=0;j<m;j++)
                        if(matrix[i][j]<min)
                                min=matrix[i][j];
                str_min[i]=min;
        }
 
        max=str_min[0];
        for(int i=0;i<n;i++)
                if(str_min[i]>max)
                        max=str_min[i];
 
        
        for(int i=0;i<n;i++)
                for(int j=0;j<m;j++)
                        if (matrix[i][j]==max){
                                i_max=i;
                                j_max=j; }
 
                        printf("i : %d\n",i_max);
                        printf("j : %d\n",j_max); 
                        printf("Element : %d\n",matrix[i_max][j_max]);
        return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.12.2010, 18:52
Привет! Вот еще темы с ответами:

Исключения: индекс массива - C++
Суть такова: нужно написать прогу, контролирующую индексы, которые выходят за пределы массива и генерирует исключения. В ошибке должна быть...

Сигнал, Индекс массива - C++
Не получается задать сигнал // информационные символы double *x0 = new double; for (int q = 0;q &lt; M; q++){ ...

c++ Индекс массы тела - C++
Всем привет. сразу скажу что мой уровень знаний языков программирования практически 0 Пару дней назад начал читать книгу по c++ и вот...

получить индекс строки - C++
std::string slst = { &quot;TEST1&quot;, &quot;TEST2&quot;, &quot;TEST3&quot;}; какая существует функция для получения индекса строки? :wall: Добавлено через...


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

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

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