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

Найти минимальные элементы в строках и столбцах массива, содержащих нули - C++

Восстановить пароль Регистрация
 
Demetro4ka
1 / 1 / 1
Регистрация: 12.10.2013
Сообщений: 229
17.11.2014, 15:37     Найти минимальные элементы в строках и столбцах массива, содержащих нули #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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
void tetta(int array[6][6],int n,int m)
 
{ int i,j,k,t,o,l,min_al_i,min_al_j;
  int te;
 cout<<" "<<endl;
 cout<<" "<<endl;
 for (i=1;i<=n-1;i++){
 
    for (j=1;j<=m-1;j++){
if (array[i][j]==0)
 { o=i;
    l=j;
    min_al_i=array[o][1];
    if (o==1)
    {
     min_al_i=1000;
    }
    for (j=1;j<=m-2; j++)
         if (i==o)
    {
        if (array[i][j+1]<min_al_i)
        {
        min_al_i=array[i][j+1];
 
        }
    }
    cout<<"min al i"<<min_al_i<<endl;
 
 min_al_j=array[1][l];
    if (l==1)
    {
     min_al_j=1000;
    }
    for (i=1;i<=n-2; i++)
         if (j==o)
    {
        if (array[i+1][j]<min_al_j)
        {
        min_al_j=array[i+1][j];
 
        }
    }
    cout<<"min al j"<<min_al_j<<endl;
    te=min_al_i+min_al_j;
cout<<"tetta"<<te<<endl;
 }
 
 
 }
 }
 
/*int te_max=0;
for (o=0;o<=n-1;o++)
    for (l=0;l<=m-1;l++)
{
  if (te[o][l]>te_max)
        te_max=te[o][l];
}
 
cout<<"  "<<endl;
cout<<" "<<endl;
cout<<"te_max"<<te_max<<endl;
 
*/
 
 
 
 
 
  for ( i=0;i<=n-1;i++)
 for (j=0;j<=m-1;j++)
{
 
    int k=0;
    int v=array[i][j];
    while (v) {
        v/=10;
        k++; }
        k=10-k;
 
   cout<<array[i][j];
   while (k!=0)
   {
   cout<<" ";
   k--;
   }
 
   if (j==n-1) {
 
        cout<<" "<<endl;
   }
}
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.11.2014, 15:37     Найти минимальные элементы в строках и столбцах массива, содержащих нули
Посмотрите здесь:

Матрица. Сумма элементов в строках, не содержащих отрицательные элементы. C++
Считает элементы в строках а не столбцах. Что не так? C++
C++ Определить минимальные элементы во всех столбцах
Найти минимальные элементы в строках квадратной матрицы C++
Найти минимальные элементы в каждом столбце произвольного двумерного массива и записать их в виде одномерного C++
С++ Найти сумму элементов, стоящих в четных строках и нечетных столбцах C++
C++ Найти минимальные элементы в столбцах двумерной матрицы
Найти 3 и более одинаковых рядом стоящих элементов одномерного массива в строках и столбцах C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mster-doc
 Аватар для mster-doc
14 / 14 / 4
Регистрация: 10.11.2012
Сообщений: 239
17.11.2014, 18:05     Найти минимальные элементы в строках и столбцах массива, содержащих нули #2
Если я правильно понял условие:
1) должна быть матрица (массив где строки и столбцы)
2) нужно искать 0 и там где он есть в этой строке и столбце искать минимальные значения но изночально не задовать параметр минимума 0
3) сложить минимальные значения строки и столбца
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
56
57
58
59
60
61
62
#include <iostream>
 
using namespace std;
 
int main()
{
    int C=3;
    int S=4;
    int arr[C][S];
    int i,j;
    int min_column=1;
    int min_string=1;
    for(i=0; i<C; i++)
    {
            for(j=0; j<S; j++)
            {
                    cin>>arr[i][j];
            }
    }
    cout << endl;
    
        for(i=0; i<C; i++)
    {
            for(j=0; j<S; j++)
                    cout<< arr[i][j]<< '\t';
                    cout<<endl;
            
    }
    cout << endl;
        for(i=0; i<C; i++)
    {
            for(j=0; j<S; j++)
            if(arr[i][j]==0)
            {
                            for(int k=0; k<C; k++)
                            {
                                    cout<<arr[k][j]<<'\n';
                                    
                                    if(arr[k][j] < min_column)
                                    min_column=arr[k][j];
                                     
                            }
                            cout<<'\n'<<"Min column ellement is: "<<min_column <<'\n'<<endl;
                            
                            
                            for(int t=0; t<S; t++)
                            {
                                    cout<<arr[i][t]<<'\t';
                                    
                                    if(arr[i][t] < min_string)
                                    min_string=arr[i][t];
                            }
                            cout<<'\n'<<'\n'<<"Min string ellement is: "<<min_string<<endl;
                            
                            cout<<"Sum of two min ellements is: "<<(min_column+min_string)<<endl;
            }
            cout<<endl;   
    }
     
system("pause");
return 0;
}
Yandex
Объявления
17.11.2014, 18:05     Найти минимальные элементы в строках и столбцах массива, содержащих нули
Ответ Создать тему
Опции темы

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