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

Стыдно даже спрашивать - C++

Восстановить пароль Регистрация
 
Gothic Angelos
 Аватар для Gothic Angelos
1 / 1 / 0
Регистрация: 29.05.2010
Сообщений: 140
24.05.2011, 18:27     Стыдно даже спрашивать #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
#include <iostream.h>
#include <math.h>
#include <conio.h>
 
const int m=6,n=6;
float A[n][m]={{15,4.5,6.7,3.5,2.8,3.6},
        {4.5,15,5.1,4.5,6.3,7},
        {6.7,5.1,15,1.8,3.1,8.2},
        {3.5,4.5,1.8,15,6.5,7.3},
        {2.8,6.3,3.1,6.5,15,9},
        {3.6,7.0,8.2,7.3,9.0,15}};
void search (float A[n][m]);
 
void main ()
{
clrscr ();
 
 
search (A);
 
getch();
}
 
void search (float A[n][m])
{
 
 
for (int i=0;i<n;i++)
{
float min=0;
 
for ( int j=1;j<m;j++)
 
if (A[i][j]<min)
 
min=A[i][j];
 
cout<<min;
}
 
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nameless One
Эксперт С++
 Аватар для Nameless One
5753 / 3402 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
24.05.2011, 18:33     Стыдно даже спрашивать #2
Gothic Angelos, выбирай минимальным элементом первый элемент строки, потом просматривай элемементы со второго элемента строки и сравнивай его с минимальным. Как-то так:
C
1
2
3
4
5
6
7
8
9
int i, j;
float min;
for(i = 0; i < n; ++i)
{
  min = A[i][0];
  for(j = 1; j < m; ++j)
    if(A[i][j] < min)
       min = A[i][j];
}
mefis
0 / 0 / 0
Регистрация: 24.05.2011
Сообщений: 12
24.05.2011, 18:42     Стыдно даже спрашивать #3
C
1
2
3
4
5
6
7
for (i=0; i<nstr; i++)
{
    for(j=min=0; j<nstb; j++)
         if(a[i][j]<a[i][min]) min=j;
    printf("минимальный элемент %d в строке %d", a[i][min], i); 
}
примерно так
Gothic Angelos
 Аватар для Gothic Angelos
1 / 1 / 0
Регистрация: 29.05.2010
Сообщений: 140
24.05.2011, 18:48  [ТС]     Стыдно даже спрашивать #4
Большое спасибо, как же я мог так сглупить)

Добавлено через 5 минут
А как ещё просуммировать все минимальные элементы между собой?
Nameless One
Эксперт С++
 Аватар для Nameless One
5753 / 3402 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
24.05.2011, 18:50     Стыдно даже спрашивать #5
Gothic Angelos, завести переменную float sum = 0 и после того, как найден минимальный элемент в строке, прибавлять этот элемент к sum
dihlofos
Бродяга
 Аватар для dihlofos
302 / 256 / 17
Регистрация: 27.08.2010
Сообщений: 553
24.05.2011, 18:51     Стыдно даже спрашивать #6
Gothic Angelos, ну так заведите какую-нибудь переменную (что-нибудь типа sum), проинициализируйте нулём. А потом в цикле вместо печати элемента, прибавляйте его к sum.
Gothic Angelos
 Аватар для Gothic Angelos
1 / 1 / 0
Регистрация: 29.05.2010
Сообщений: 140
24.05.2011, 18:52  [ТС]     Стыдно даже спрашивать #7
Спасибо, попробую реализовать
mefis
0 / 0 / 0
Регистрация: 24.05.2011
Сообщений: 12
24.05.2011, 18:59     Стыдно даже спрашивать #8
C
1
2
3
4
5
6
7
8
9
int sum=0;
for (i=0; i<nstr; i++)
{
    for(j=min=0; j<nstb; j++)
         if(a[i][j]<a[i][min]) min=j; 
    printf("минимальный элемент %d в строке %d", a[i][min], i); 
    sum+=a[i][min];
}
printf("сумма минимальных элементов %d", sum)
вот так
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.05.2011, 19:05     Стыдно даже спрашивать
Еще ссылки по теме:

C++ Нужно оптимизировать готовый код, чтобы не было стыдно показать
даже не знаю как опить в заголовки C++
CUDA, не компилируется даже пустой проект C++

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

Или воспользуйтесь поиском по форуму:
Gothic Angelos
 Аватар для Gothic Angelos
1 / 1 / 0
Регистрация: 29.05.2010
Сообщений: 140
24.05.2011, 19:05  [ТС]     Стыдно даже спрашивать #9
Спасибо,до суммы я уже сам догадался в плане реализации, объяснили дохочиво)
Yandex
Объявления
24.05.2011, 19:05     Стыдно даже спрашивать
Ответ Создать тему
Опции темы

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