Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.02.2011, 20:14   #1
SKyzZz
Пользователь
 
Регистрация: 14.02.2011
Сообщений: 43
По умолчанию Максимум Массива

Что я делаю неправильно?

Вывести максимум для каждой строки.


#include<iostream>
#include <stdio.h>
#include <conio.h>

using namespace std;

int main()
{
int i,j;
int max;
const int a[25][4] = {16, 78, 99, 6, -29, 19, -52, 65, -88, 51,
-79, -22, 32, -25, -62, -69, -2, -59, -75, 89,
-87, 95, -22, 85, -49, -75, 76, 73, -59, -52,
30, 49, -28, -48, 0, 57, -6, -85, 0, -18,
-97, -21, -95, 64, 22, -2, 69, -84, -1, -71,
-25, 47, 72, 43, 15, -44, 44, 61, 4, 74,
88, -61, 0, -64, -83, 97, 0, 90, 15, 8,
-54, 19, 73, 35, -67, -87, 85, -99, -70, 10,
98, 58, -10, -29, 95, 62, 77, 89, 36, -32,
78, 60, -79, -18, 30, -13, -34, -92, 1, -38};

for (int i=0;i<25;i++)
for (int j=0;j< 4;j++)
if (i==j) a[i][j]=max;
cout << endl << "Count max elements = " << max << endl;

}
SKyzZz вне форума Ответить с цитированием
Старый 15.02.2011, 21:53   #2
Д_М
Пользователь
 
Регистрация: 02.02.2011
Сообщений: 92
По умолчанию

1) Переменной max нигде не присваивается значение, она содержит мусор;
2) if (i==j) a[i][j]=max; -- Вы этот мусор копируете в элементы матрицы, стоящей на главной диагонали
3) Нет ничего, напоминающего подсчет максимума
Д_М вне форума Ответить с цитированием
Старый 15.02.2011, 22:08   #3
profi
Участник клуба Подтвердите свой е-майл
 
Регистрация: 19.11.2007
Сообщений: 1,022
По умолчанию

Код:
#include <iostream>
#include <climits>

int main()
{
    const int N = 4;
    const int M = 4;

    int array[N][M];

    for(int i = 0; i < N; i++)
        for(int j = 0; j < M; j++)
            array[i][j] = i + j;

    for(int i = 0; i < N; i++)
    {
        for(int j = 0; j < M; j++)
            std::cout << array[i][j] << " ";

        std::cout << "\n";
    }

    std::cout << "\n";

    for(int i = 0; i < N; i++)
    {
        int max = INT_MIN;
        for(int j = 0; j < M; j++)
            if(array[i][j] > max)
                max = array[i][j];

        std::cout << i << " row : " << max << std::endl;
    }

    return 0;
}
profi вне форума Ответить с цитированием
Старый 15.02.2011, 22:08   #4
profi
Участник клуба Подтвердите свой е-майл
 
Регистрация: 19.11.2007
Сообщений: 1,022
По умолчанию

[повторный пост]
profi вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Максимум-минимум Freeman-des Помощь студентам 8 22.12.2010 20:13
с++ первый максимум kate311893 Помощь студентам 0 26.05.2010 14:11
максимум в диапозоне kate311893 Общие вопросы C/C++ 0 26.05.2010 14:09
максимум meteor Microsoft Office Excel 2 06.12.2008 13:08