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

В двухмерном массиве с целыми коэффициентами, для каждого столбца найти минимальный элемент в этом столбце и индекс этого элемента.

03.02.2013, 21:55. Показов 1545. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите еще пожалуйста. Имеется такое задание: в данном двухмерном массиве A[N][N] с целыми коэффициентами для каждого столбца найти минимальное значение элемента в этом столбце, напечатать этот элемент и его индексы.
Есть решение, только нужно сделать что бы размер массива в одном месте задавался и программа сама уже, так сказать, подстраивалась. Как-то через "for" нужно сделать, да только мозгов не хватает(
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
#include <clx.h>
#include <conio.h>
#include <iostream.h> // Загрузка заголовков
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
int main(int argc, char* argv[]) // Прототип главной функции
{
int A[10][10];                   // Объявление двумерного массива
 
 
// Здесь было использованно разделение массива на 10 отдельных одномерных массива
 
int A1[10];
int max_elem1;
int min_elem1;
int index_maxi1;
int index_maxj1;
 
 
int A2[10];
int max_elem2;
int min_elem2;
int index_maxi2;
int index_maxj2;
 
 
int A3[10];
int max_elem3;
int min_elem3;
int index_maxi3;
int index_maxj3;
 
 
int A4[10];
int max_elem4;
int min_elem4;
int index_maxi4;
int index_maxj4;
 
 
int A5[10];
int max_elem5;
int min_elem5;
int index_maxi5;
int index_maxj5;
 
 
int A6[10];
int max_elem6;
int min_elem6;
int index_maxi6;
int index_maxj6;
 
 
int A7[10];
int max_elem7;
int min_elem7;
int index_maxi7;
int index_maxj7;
 
 
int A8[10];
int max_elem8;
int min_elem8;
int index_maxi8;
int index_maxj8;
 
 
int A9[10];
int max_elem9;
int min_elem9;
int index_maxi9;
int index_maxj9;
 
 
int A10[10];
int max_elem10;
int min_elem10;
int index_maxi10;
int index_maxj10;
 
 
for (int i =  0; i < 10; i++)
{
for (int j = 0; j < 10; i++)      // Образование  заданного массива
{
A[i][j] = rand() % 10;            // С помощью генератора случайных чисел
 
for (int i1 = 0; i < 10; i++)
 
// Далее уже используется расчёт для каждого отдельного массива минимального
// и максимального значений. А так же их индексов
{
int index_min;
A1[0] = A[0][0];
A1[1] = A[0][1];
A1[2] = A[0][2];
A1[3] = A[0][3];
A1[4] = A[0][4];
A1[5] = A[0][5];
A1[6] = A[0][6];
A1[7] = A[0][7];
A1[8] = A[0][8];
A1[9] = A[0][9];
if (max_elem1 < A[i1])
{
max_elem1 = A[i1];
index_maxi1 = i1;
}
if (min_elem1 > A[i1])
{
min_elem1 = A[i1];
index_min = i1;
}
cout << "max value = " << max_elem1 << "index = 0 " << index_maxi1 << endl;
cout << "min value = " << min_elem1 << "index =" << index_min << endl;
}
 
for (int i2 = 0; i < 10; i++)
{
int index_min;
A2[0] = A[1][0];
A2[1] = A[1][1];
A2[2] = A[1][2];
A2[3] = A[1][3];
A2[4] = A[1][4];
A2[5] = A[1][5];
A2[6] = A[1][6];
A2[7] = A[1][7];
A2[8] = A[1][8];
A2[9] = A[1][9];
if (max_elem2 < A[i2])
{
max_elem2 = A[i2];
index_maxi2 = i2;
}
if (min_elem2 > A[i2])
{
min_elem1 = A[i2];
index_min = i2;
}
cout << "max value = " << max_elem2 << "index = 1 " << index_maxi2 << endl;
cout << "min value = " << min_elem2 << "index =" << index_min << endl;
}
 
for (int i3 = 0; i < 10; i++)
{
int index_min;
A3[0] = A[2][0];
A3[1] = A[2][1];
A3[2] = A[2][2];
A3[3] = A[2][3];
A3[4] = A[2][4];
A3[5] = A[2][5];
A3[6] = A[2][6];
A3[7] = A[2][7];
A3[8] = A[2][8];
A3[9] = A[2][9];
if (max_elem3 < A[i3])
{
max_elem3 = A[i3];
index_maxi3 = i3;
}
if (min_elem3 > A[i3])
{
min_elem3 = A[i3];
index_min = i3;
}
cout << "max value = " << max_elem3 << "index = 2 " << index_maxi3 << endl;
cout << "min value = " << min_elem3 << "index =" << index_min << endl;
}
 
for (int i4 = 0; i < 10; i++)
{
int index_min;
A4[0] = A[3][0];
A4[1] = A[3][1];
A4[2] = A[3][2];
A4[3] = A[3][3];
A4[4] = A[3][4];
A4[5] = A[3][5];
A4[6] = A[3][6];
A4[7] = A[3][7];
A4[8] = A[3][8];
A4[9] = A[3][9];
if (max_elem4 < A[i4])
{
max_elem4 = A[i4];
index_maxi4 = i4;
}
if (min_elem4 > A[i4])
{
min_elem4 = A[i4];
index_min = i4;
}
cout << "max value = " << max_elem4 << "index = 3 " << index_maxi4 << endl;
cout << "min value = " << min_elem4 << "index =" << index_min << endl;
}
 
for (int i5 = 0; i < 10; i++)
{
int index_min;
A5[0] = A[4][0];
A5[1] = A[4][1];
A5[2] = A[4][2];
A5[3] = A[4][3];
A5[4] = A[4][4];
A5[5] = A[4][5];
A5[6] = A[4][6];
A5[7] = A[4][7];
A5[8] = A[4][8];
A5[9] = A[4][9];
if (max_elem5 < A[i5])
{
max_elem5 = A[i5];
index_maxi5 = i5;
}
if (min_elem5 > A[i5])
{
min_elem5 = A[i5];
index_min = i5;
}
cout << "max value = " << max_elem5 << "index = 4 " << index_maxi5 << endl;
cout << "min value = " << min_elem5 << "index =" << index_min << endl;
}
 
for (int i6 = 0; i < 10; i++)
{
int index_min;
A6[0] = A[5][0];
A6[1] = A[5][1];
A6[2] = A[5][2];
A6[3] = A[5][3];
A6[4] = A[5][4];
A6[5] = A[5][5];
A6[6] = A[5][6];
A6[7] = A[5][7];
A6[8] = A[5][8];
A6[9] = A[5][9];
if (max_elem6 < A[i6])
{
max_elem6 = A[i6];
index_maxi6 = i6;
}
if (min_elem6 > A[i6])
{
min_elem6 = A[i6];
index_min = i6;
}
cout << "max value = " << max_elem6 << "index = 5 " << index_maxi6 << endl;
cout << "min value = " << min_elem6 << "index =" << index_min << endl;
}
 
for (int i7 = 0; i < 10; i++)
{
int index_min;
A7[0] = A[6][0];
A7[1] = A[6][1];
A7[2] = A[6][2];
A7[3] = A[6][3];
A7[4] = A[6][4];
A7[5] = A[6][5];
A7[6] = A[6][6];
A7[7] = A[6][7];
A7[8] = A[6][8];
A7[9] = A[6][9];
if (max_elem7 < A[i7])
{
max_elem7 = A[i7];
index_maxi7 = i7;
}
if (min_elem7 > A[i7])
{
min_elem7 = A[i7];
index_min = i7;
}
cout << "max value = " << max_elem7 << "index = 6 " << index_maxi7 << endl;
cout << "min value = " << min_elem7 << "index =" << index_min << endl;
}
 
for (int i8 = 0; i < 10; i++)
{
int index_min;
A8[0] = A[7][0];
A8[1] = A[7][1];
A8[2] = A[7][2];
A8[3] = A[7][3];
A8[4] = A[7][4];
A8[5] = A[7][5];
A8[6] = A[7][6];
A8[7] = A[7][7];
A8[8] = A[7][8];
A8[9] = A[7][9];
if (max_elem8 < A[i8])
{
max_elem8 = A[i8];
index_maxi8 = i8;
}
if (min_elem8 > A[i8])
{
min_elem8 = A[i8];
index_min = i8;
}
cout << "max value = " << max_elem8 << "index = 7 " << index_maxi8 << endl;
cout << "min value = " << min_elem8 << "index =" << index_min << endl;
}
 
for (int i3 = 0; i < 10; i++)
{
int index_min;
A9[0] = A[8][0];
A9[1] = A[8][1];
A9[2] = A[8][2];
A9[3] = A[8][3];
A9[4] = A[8][4];
A9[5] = A[8][5];
A9[6] = A[8][6];
A9[7] = A[8][7];
A9[8] = A[8][8];
A9[9] = A[8][9];
if (max_elem9 < A[i9])
{
max_elem9 = A[i9];
index_maxi9 = i9;
}
if (min_elem9 > A[i9])
{
min_elem9 = A[i9];
index_min = i9;
}
cout << "max value = " << max_elem9 << "index = 8 " << index_maxi9 << endl;
cout << "min value = " << min_elem9 << "index =" << index_min << endl;
}
 
for (int i3 = 0; i < 10; i++)
{
int index_min;
A10[0] = A[9][0];
A10[1] = A[9][1];
A10[2] = A[9][2];
A10[3] = A[9][3];
A10[4] = A[9][4];
A10[5] = A[9][5];
A10[6] = A[9][6];
A10[7] = A[9][7];
A10[8] = A[9][8];
A10[9] = A[9][9];
if (max_elem10 < A[i]10)
{
max_elem10= A[i10];
index_maxi10 = i10;
}
if (min_elem10 > A[i10])
{
min_elem10 = A[i10];
index_min = i10;
}
cout << "max value = " << max_elem10 << "index = 9 " << index_maxi10 << endl;
cout << "min value = " << min_elem10 << "index =" << index_min << endl;
}
 
}
} // Конец расчёта
getch(); //Ожидание ввода с клавиатуры
        return 0;
}
Добавлено через 14 секунд
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.02.2013, 21:55
Ответы с готовыми решениями:

В данном двухмерном массиве A[1..n,1..n] с целыми коэффициентами для каждой строки найти максимальное значение элемента в этой строке
6. В данном двухмерном массиве A с целыми коэффициентами для каждой строки найти максимальное...

Найти минимальный элемент в каждом столбце матрицы и поменять его местами с первым элементом этого столбца
Матрица А. Найти минимальный элемент в каждом столбце и поменять его местами с первым элементом...

В матрице А(n,n) найти максимальный элемент каждого столбца и заменить его элементом находящимся на побочной диаганали в этом же столбце
Всем привет. Помогите написать код. Задача следующаяя: В матрице А(n,n) найти максимальный...

В каждой строке найти минимальный элемент, затем среди них найти максимальное и вывести на экран индекс этого элемента
Здравствуйте! Помогите, пожалуйста, с задачей: В двумерном массиве все числа различны. В каждой...

16
390 / 365 / 111
Регистрация: 03.02.2013
Сообщений: 1,120
03.02.2013, 23:40 2
Цитата Сообщение от Tom993 Посмотреть сообщение
Спасибо большое)

Добавлено через 7 минут
Помогите еще пожалуйста. Имеется такое задание: в данном двухмерном массиве A[N][N] с целыми коэффициентами для каждого столбца найти минимальное значение элемента в этом столбце, напечатать этот элемент и его индексы.
Есть решение, только нужно сделать что бы размер массива в одном месте задавался и программа сама уже, так сказать, подстраивалась. Как-то через "for" нужно сделать, да только мозгов не хватает(

Добавлено через 14 секунд
Ваша большая ошибка в том, что вы пытаетесь писать в С++ в стиле С... с такими задачами обращайтесь в раздел С...
по хорошему нужно делать контейнеры что-то типа vector< vector<T> > так будет именно в стиле С++...
но раз условие стоит... хорошо, пусть на входе массив A[N][N]

вот само решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
using std::cout;    using std::endl; 
 
int main()
{
    const size_t N = 3;
        int A [N] [N] = {{111,121,16}, 
                          {21,22,23}, 
                         {311,32,3}};
    size_t minAindex [N];
    size_t i,j;
    
    for (i = 0; i<N; ++i)
    {
      minAindex[i] = 0;
      for (j = 0; j<N; ++j)
            if (A [minAindex[i]][i]>A[j][i])
                minAindex[i] = j;
    }       
    for (size_t i=0; i!=N; i++)
     cout << " Минимальный элемент "<<i+1<<" столбца "<<A[minAindex[i]][i]<<" по индексам ["<<i+1<<","<<minAindex[i]+1<<"]"<<endl;
    return 0;
}
0
229 / 76 / 9
Регистрация: 03.02.2013
Сообщений: 311
04.02.2013, 03:36 3
Цитата Сообщение от Tom993 Посмотреть сообщение

C++
1
2
3
4
5
6
7
8
9
10
A1[0] = A[0][0];
A1[1] = A[0][1];
A1[2] = A[0][2];
A1[3] = A[0][3];
A1[4] = A[0][4];
A1[5] = A[0][5];
A1[6] = A[0][6];
A1[7] = A[0][7];
A1[8] = A[0][8];
A1[9] = A[0][9];
О, Боже! Какой ужас....
Кликните здесь для просмотра всего текста

............................................________
....................................,.-‘”...................``~.,
.............................,.-”..................................."-.,
.........................,/...............................................”:,
.....................,?......................................................\,
.................../...........................................................,}
................./......................................................,:`^`..}
.............../...................................................,:”........./
..............?.....__.........................................:`.........../
............./__.(....."~-,_..............................,:`........../
.........../(_....”~,_........"~,_....................,:`........_/
..........{.._$;_......”=,_......."-,_.......,.-~-,},.~”;/....}
...........((.....*~_.......”=-._......";,,./`..../”............../
...,,,___.\`~,......"~.,....................`.....}............../
............(....`=-,,.......`........................(......;_,,-”
............/.`~,......`-...............................\....../\
.............\`~.*-,.....................................|,./.....\,__
,,_..........}.>-._\...................................|..............`=~-,
.....`=~-,_\_......`\,.................................\
...................`=~-,,.\,...............................\
................................`:,,...........................`\.............._ _
.....................................`=-,...................,%`>--==``
........................................_\..........._,-%.......`\
...................................,<`.._|_,-&``................`\

Вы не задумывались об использовании цикла?

C++
1
2
for(int i = 0; i<10; i++)
    A1[i]=A[0][i];
0
390 / 365 / 111
Регистрация: 03.02.2013
Сообщений: 1,120
04.02.2013, 03:39 4
Вы не задумывались об использовании цикла?

C++
1
2
for(int i = 0; i<10; i++)
    A1[i]=A[0][i];
если вчитаетесь в задание, там и такой собтна цикл не нужен)
отстаньте от человека, все с чего-то начинали

а этот код очень полезен (называется китайский)... суть в том, что платят за строчки кода и я встречался такой работой - объясняешь это так, если спросят - ну так процессор не тратит время на jmp
если не спросят - в следующий раз пишешь идусский код
C++
1
2
3
4
5
6
7
8
9
10
if (true)
{
 текст программы
...
}
else
{
чистый доход
...
}
0
229 / 76 / 9
Регистрация: 03.02.2013
Сообщений: 311
04.02.2013, 03:46 5
Цитата Сообщение от abit Посмотреть сообщение
если вчитаетесь в задание, там и такой собтна цикл не нужен)
отстаньте от человека, все с чего-то начинали
Да я даже не начинал приставать. Просто неявно советовал больше так не делать. Наоборот, если вы не заметили, я стараюсь помогать новичкам в Си++. Хотя сам новичок (на форуме).

Добавлено через 3 минуты
abit,

Не по теме:

про китайский код насмешили :D А что значит индусский код?



Добавлено через 48 секунд

Не по теме:

Всё, понял.... не обратил внимания на вставку

0
0 / 0 / 0
Регистрация: 28.02.2013
Сообщений: 9
28.02.2013, 23:37 6
дабы не создавать топик отпишу тут.

одна из целей задачи найти минимальный элемент массива, максимальный я нашёл, но если по аналогии делаю на минимальный, его не находит

C++
1
2
3
4
5
 if (B[i][j]<min)
    
        min=B[i][j];
        n_min=i;
        m_min=j;
0
505 / 317 / 236
Регистрация: 18.02.2013
Сообщений: 754
28.02.2013, 23:48 7
Цитата Сообщение от Poring Посмотреть сообщение
if (B[i][j]<min)
{
min=B[i][j];
* * * * n_min=i;
* * * * m_min=j;}
а топик новый надо было все же создать
0
0 / 0 / 0
Регистрация: 28.02.2013
Сообщений: 9
28.02.2013, 23:52 8
olya7, пробовал, не помогает, выводит, что мин элемент =0
0
505 / 317 / 236
Регистрация: 18.02.2013
Сообщений: 754
01.03.2013, 00:05 9
Poring, было бы неплохо код увидеть)
0
0 / 0 / 0
Регистрация: 28.02.2013
Сообщений: 9
01.03.2013, 00:08 10
пока делаю одну часть это нахождение минимального, а вообще, необходимо найти минимальные элементы в чётных строках, ну а потом их сумму. Трудность почему то вызвало нахождение минимального, ну и пока не придумал как сделать нахождение минимального в чётных строка. С одномерными всё нормально получалось)
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<stdio.h> 
#include<conio.h>
#include<math.h>
#include<windows.h>
char bufRus[256];
char* Rus(const char*text)
{
    CharToOem(text, bufRus);
    return bufRus;
}
main()
{
   int i, j, m, n, n_min, m_min;
   float B [10][10], min;
 
   printf (Rus(" Введите число строк и столбцов \n")); 
   scanf ("%d %d", &n, &m);
   for(i=0; i<n; i++)
     for(j=0; j<m; j++)
     {
       printf(Rus("Введите B[%d, %d]="), i, j);
       scanf("%f", &B[i][j]);
     }
 
puts(Rus("Матрица B:"));
  for(i=0;i<n;i++)
    { 
      for(j=0;j<m;j++)
      printf("%8.2f",B[i][j]);
      printf("\n");
    }
    
    
  
  for(i=1;i<n;i=i+2)
  
   for(j=0;j<m;j++)
  
  
  if (B[i][j]<min)
    
    
        min=B[i][j];
        n_min=i;
        m_min=j;
        
        
   printf(Rus("минимальный  элемент массива равен числу =%6.2f\n\n\n"), min);   
 
 
 
    fflush(stdin);
    getchar();
    return(0);
}
0
505 / 317 / 236
Регистрация: 18.02.2013
Сообщений: 754
01.03.2013, 00:26 11
вот так
Цитата Сообщение от Poring Посмотреть сообщение
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include<windows.h>
char bufRus[256];
char* Rus(const char*text)
{
* * CharToOem(text, bufRus);
* * return bufRus;
}
main()
{
* *int i, j, m, n, n_min, m_min;
* *float B [10][10], min;
printf (Rus(" Введите число строк и столбцов \n"));
* *scanf ("%d %d", &n, &m);
* *for(i=0; i<n; i++)
* * *for(j=0; j<m; j++)
* * *{
* * * *printf(Rus("Введите B[%d, %d]="), i, j);
* * * *scanf("%f", &B[i][j]);
* * *}
puts(Rus("Матрица B:"));
* for(i=0;i<n;i++)
* * {
* * * for(j=0;j<m;j++)
* * * printf("%8.2f",B[i][j]);
* * * printf("\n");
* * }
min=B[1][0];
for(i=1;i<n;i=i+2)
for(j=0;j<m;j++)
if (B[i][j]<min)
{
min=B[i][j];
* * * * n_min=i;
* * * * m_min=j;}
printf(Rus("минимальный *элемент массива равен числу =%6.2f\n\n\n"), min); *
fflush(stdin);
* * getchar();
* * return(0);
}
1
0 / 0 / 0
Регистрация: 28.02.2013
Сообщений: 9
01.03.2013, 00:47 12
olya7, спасибо вам, значит ошибка была в том, что я не задал начальное минимальное значение?
а вывод всех минимальных чисел дублированием %6.2f выводить? далее с суммой минимальных, это вводим переменную, например N, делаем её равной 0 перед циклом а далее
C++
1
2
3
4
5
{
min=B[i][j];
* * * * n_min=i;
* * * * m_min=j;
******N=N*B[i][j]}
как то так?
0
505 / 317 / 236
Регистрация: 18.02.2013
Сообщений: 754
01.03.2013, 01:11 13
Цитата Сообщение от Poring Посмотреть сообщение
всех минимальных чисел
как-то минимум то один может быть... или вам надо организовать минимумы по строкам\столбцам?
0
0 / 0 / 0
Регистрация: 28.02.2013
Сообщений: 9
01.03.2013, 07:39 14
olya7, да, именно так, для каждой строки, а затем их произведение
0
505 / 317 / 236
Регистрация: 18.02.2013
Сообщений: 754
01.03.2013, 16:02 15
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
#include<stdio.h> 
#include<conio.h>
#include<math.h>
#include<windows.h>
char bufRus[256];
char* Rus(const char*text)
{
    CharToOem(text, bufRus);
    return bufRus;
}
main()
{
   int i, j, m, n, n_min, m_min;
   float **B , min,p=1;
 
   printf (Rus(" Ââåäèòå ÷èñëî ñòðîê è ñòîëáöîâ \n")); 
   scanf ("%d %d", &n, &m);
   B=new float *[n];
   for(i=0; i<n; i++)
       B[i]=new float [m];
 
   for(i=0; i<n; i++)
     for(j=0; j<m; j++)
     {
       printf(Rus("Ââåäèòå B[%d, %d]="), i, j);
       scanf("%f", &B[i][j]);
     }
 
puts(Rus("Ìàòðèöà B:"));
  for(i=0;i<n;i++)
    { 
      for(j=0;j<m;j++)
      printf("%8.2f",B[i][j]);
      printf("\n");
    }
    
    
  
  for(i=1;i<n;i=i+2)//ìû çäåñü èäåì ïî âñåì íå÷åòíûì ñòðîêàì.. ýòî òàê è íàäî... åñëè üøò ïî âñå ì ñòðîêàì, òî for(i=0;i<n;i++)
  {
      min=B[i][0];
   for(j=0;j<m;j++)
       if (B[i][j]<min)
       {
    
    
        min=B[i][j];
        n_min=i;
        m_min=j;}
        
        
   printf(Rus("ìèíèìàëüíûé  ýëåìåíò ñòðîêè ðàâåí ÷èñëó =%6.2f\n\n\n"), min);   
   p*=min;
  }
 printf(Rus("ïðîèçâåäåíèå =%6.2f\n\n\n"), p);   
 for(i=0; i<n; i++)
     delete []B[i];
 delete []B;
 
    fflush(stdin);
    getchar();
    return(0);
}
1
0 / 0 / 0
Регистрация: 28.02.2013
Сообщений: 9
01.03.2013, 19:44 16
olya7, Спасибо ещё раз) В принципе такой код и вышел до этой строки
C++
1
 printf(Rus("произведение =%6.2f\n\n\n"), p);
только вот
C++
1
2
3
4
 for(i=1;i<n;i=i+2)//мы здесь идем по всем нечетным строкам.. это так и надо... если ьшт по все м строкам, то for(i=0;i<n;i++)
  {
      min=B[i][0];
   for(j=[COLOR="Red"]1[/COLOR];j<m;j++)
, я правда толком не понял почему, что бы не сравнивало с 1 элементом столбца что ле, преподаватель объясняла, но я не совсем понял
0
505 / 317 / 236
Регистрация: 18.02.2013
Сообщений: 754
01.03.2013, 19:49 17
Цитата Сообщение от Poring Посмотреть сообщение
min=B[i][0];
чтобы не выйти за диапазон значений строки
0
01.03.2013, 19:49
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.03.2013, 19:49
Помогаю со студенческими работами здесь

Найти минимальный элемент в массиве. Вставить после минимального элемента первый элемент этого массива.
Дан массив целых чисел. Найти минимальный элемент в массиве. Вставить после минимального элемента...


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

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