Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи по C/С++

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

distance

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
/*
Для матрицы P(N,N) найти в каждой строке наибольший элемент и поменять его местами с элементом главной диагонали, N=4.
*/
 
const size_t N = 4;
 
void process_matrix(float (&m)[N][N])
{
    float eps = 0.0001f;
    for(size_t col=0; col<N; col++)
    {
        float* colMax = &m[col][0];
        // поиск максимального элемента
        for(size_t row=1; row<N; row++)
        {
            if (fabs(m[col][row] - *colMax) > eps)
                colMax = &m[col][row];
        }
        // замена с элементом на главной диагонали
        float tmp = m[col][col];
        m[col][col] = *colMax;
        *colMax = tmp;
    }
}

Всего записей: 878 | Зарегистр. 28-03-2004 | Отправлено: 17:18 29-03-2007
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи по C/С++


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru