Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> обработка матрицы, помогите составить алгоритм 
:(
    Опции темы
R4peMe
Дата 18.4.2011, 16:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 21.2.2011

Репутация: нет
Всего: нет



Всем доброго времени суток!
нужно помощь в создании алгоритма
задача: преобразовать квадратную матрицу введённой размерности со случайно заданными числами согласно рисунку, т.е. нужно что бы элемент K[i][j] новой матрицы являлся МАКСИМАЛЬНЫМ элементом области первой матрицы (область показана на рисунке)

 user posted image

так же прикрепляю тот код что у меня уже есть
Код

#include <stdio.h>
#include <time.h>
#include <stdlib.h>

int printmass(int mass[10][10], int rz);  /функция вывода массива
int printmass(int mass[10][10], int rz)
    {
    int i,j;
    for(i=0;i<=rz;i++)
     {
      for(j=0;j<=rz;j++)
      printf("%5.0d", mass[10][10]);
     printf("\n \n");
     }
    return 0;
    }

int main()
    {
    int mass1[10][10],mass2[10][10],i,j,l,k,rz,t,max; //переменные: массивы, 4 счётчика для циклов,rz размерность
                              //t для random, max понятно
    printf("Введи размерность");
    scanf("%d", &rz);
    rz--;                                             //можно этого не делать, просто мы считаем от 1
    srand((unsigned)time(NULL));              //а комп от 0 соответственно, берём случайные числа
    for(i=0;i<=rz;i++)
      for(j=0;j<=rz;j++)
       mass1[i][j]=1+rand()%10;              //задаём массив случайных чисел

    printmass(mass1,rz);                  //выводим его на экран

    //тут и должен быть тот самый алгоритм, который у меня никак не получается ><

    printmass(mass2,rz);
    return 0;
    }


Это сообщение отредактировал(а) R4peMe - 18.4.2011, 16:56
PM MAIL   Вверх
borisbn
Дата 19.4.2011, 10:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 21
Всего: 135



Ты проделал львиную долю работы (даже переменные для счётчиков цикла завёл), поэтому мне осталась такая малость... smile
лови
Код

for(i=0;i<=rz;i++)
    for(j=0;j<=rz;j++)
    {
        mass2[i][j] = -1;
        for ( l = std::min(i,j); l <= std::max(i,j); l++);
            for ( k = std::min(i,j); k <= std::max(i,j); k++);
                if ( mass1[i][j] > mass2[i][j] )
                    mass2[i][j] = mass1[i][j]
    }



--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0506 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.