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

Найти максимальное из отрицательных чисел массива - C++

Восстановить пароль Регистрация
 
Ifath
Сообщений: n/a
02.05.2012, 16:02     Найти максимальное из отрицательных чисел массива #1
Нужно найти максимальное из отрицательных чисел массива размера [20][20].
Мне тут написали один цикл по "i", но так как массив двумерный нужно еще и по "j".
Вот этот цикл.
C++
1
2
3
4
5
6
7
8
9
10
11
arr - массив
 
maxofmin=0;
for (i=0; i<count(arr); ++i)
{
if (maxofmin==0 && arr[i] < 0)
maxofmin=arr[i];
else if (arr[i] < 0 && maxofmin<arr[i])
maxofmin=arr[i];
}
cout << maxofmin;
Не могу понять как его связать с программой и как он будет находить минимальное из отрицательных.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.05.2012, 16:02     Найти максимальное из отрицательных чисел массива
Посмотрите здесь:

C++ Найти наибольший среди отрицательных чисел массива
Найти произведение двух наибольших отрицательных чисел массива C++
Из массива случайных чисел найти позиции крайних отрицательных элементов C++
C++ Среди чисел массива, встречающихся минимальное число раз, найти максимальное
C++ Найти максимальное из 5 отрицательных чисел
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
02.05.2012, 16:22     Найти максимальное из отрицательных чисел массива #2
C++
1
2
3
4
5
6
for ( int i = 0; i < size; i++ )
   for ( int j = 0; j < size; j++ )
      if (maxofmin==0 && arr[i][ j ] < 0)
         maxofmin=arr[i][ j ];
      else if (arr[i][ j ] < 0 && maxofmin<arr[i][ j ])
         maxofmin=arr[i][ j ];
Ifath
Сообщений: n/a
02.05.2012, 17:23     Найти максимальное из отрицательных чисел массива #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
#include <stdafx.h>
#include <iostream>
using namespace std; 
 
void main ()
{
char answer = 'y';
double a[20][20], b;
int  n,m, x=0;
int arr=n,m;
 
cout<<"Massiv a[20][20]"<<endl;
 
 
while ( answer == 'y' || answer == 'Y')
{
cout<<"Vedite razmer matrici"<<endl;
 
cout<<"Kolichestvo strok = "; cin>>n;
cout<<"Kolichestvo stolbcov = "; cin>>m;
 
cout<<"\nRazmer matrici "<<n<<" x "<<m<<endl;
cout<<"\nVedite element massiva"<<endl;
for (int i=0; i<n; i++)
for (int j=0; j<m; j++)
{
cout<<"\nj["<<i<<"]["<<j<<"] = ";
cin>>a[i][j];
}
cout<<endl;
while (x<100)
{
for ( int i = 0; i < size; i++ )
   for ( int j = 0; j < size; j++ )
      if (maxofmin==0 && arr[i][ j ] < 0)
         maxofmin=arr[i][ j ];
      else if (arr[i][ j ] < 0 && maxofmin<arr[i][ j ])
         maxofmin=arr[i][ j ];
}
cout << maxofmin;
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
02.05.2012, 17:29     Найти максимальное из отрицательных чисел массива #4
Цитата Сообщение от Ifath Посмотреть сообщение
while (x<100)
Зачем этот цикл? Он бесконечный, так как в теле не меняется значение x.
scano
0 / 0 / 1
Регистрация: 06.02.2012
Сообщений: 5
02.05.2012, 18:00     Найти максимальное из отрицательных чисел массива #5
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Ifath, зачем так всё усложнять?
Главный алгоритм нахождения числа тебе дали, осталось лишь написать "шапочку" и "ножки".
По твоего вопросу код можно составить таким образом:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
int main(int argc, char** argv) {
    cout << "Starting program..." << endl;
    /* данные */
    int size = 20, maxofmin;
    int arr[size][size];
    
    /* тут код заполнения массива */
    
    /* поиск минимального отрицательного числа */
    for(int i=0; i<size; i++)
        for(int j=0; j<size; j++)
            if(maxofmin==0 && arr[i][j]<0)
                maxofmin = arr[i][j];
            else if(arr[i][j]<0 && maxofmin<arr[i][j])
                maxofmin = arr[i][j];
     /* вывод */
     cout << "Number: " << maxofmin;
     return 0;
}
Yandex
Объявления
02.05.2012, 18:00     Найти максимальное из отрицательных чисел массива
Ответ Создать тему
Опции темы

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