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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.05.2012, 19:28   #1
Jillian
 
Регистрация: 10.05.2012
Сообщений: 8
По умолчанию Функции С++

Привет! Помогите, пожалуйста, изменить код.Он рабочий,но у него есть недостаток, он без функций, а надо в виде функции. Все необходимые данные для функций должны передаваться им в качестве параметров. Использование глобальных переменных в функциях не допускается.

Код:
#include <iostream>
#include <time.h>
#include <conio.h>
 
using namespace std;
 
int main()
{
        int a[6][5];
        int temp[6];
        int i, j;
 
        srand(time(NULL));
 
        cout << "Ishodniy massiv" << endl;
 
       for(i=0; i<5; i++)
        {
    for(j=0; j<5; j++)
  {
     a[i][j] = rand()%100-50;
     cout << a[i][j] << "\t";
   }
     cout << endl << endl;
   }
     for(j=0; j<5; j++)
  {
    a[5][j] = 0;
    for(i=0; i<5; i++)
       {
   if ((a[i][j]<0) && (a[i][j]%2!=0))
   a[5][j] += abs(a[i][j]);
    }
   }
        int min=0;
        for(i=0; i<4; i++)
    {
      min = i;
   for(j=i+1; j<5; j++)
   {
   if (a[5][j]<a[5][min])
    {
    min = j;
     }
  }
  temp[0] = a[0][min];
   temp[1] = a[1][min];
temp[2] = a[2][min];
temp[3] = a[3][min];
temp[4] = a[4][min];
temp[5] = a[5][min];
a[0][min] = a[0][i];
a[1][min] = a[1][i];
a[2][min] = a[2][i];
a[3][min] = a[3][i];
a[4][min] = a[4][i];
a[5][min] = a[5][i];
a[0][i] = temp[0];
a[1][i] = temp[1];
a[2][i] = temp[2];
a[3][i] = temp[3];
a[4][i] = temp[4];
a[5][i] = temp[5];
}
cout << endl << "Otsortirovanniy massiv" << endl;
  for(i=0; i<5; i++)
{
for(j=0; j<5; j++)
{
cout << a[i][j] << "\t";
  }
  cout << endl << endl;
  }
  for(i=0; i<5; i++)
    cout << "---\t";
  cout << endl;
for(i=0; i<5; i++)
  cout << a[5][i] << "\t";
  cout << " - harakteristiki stolbcov" << endl << endl;
int n, sum;
    for(j=0; j<5; j++) 
  {
    for(i=0; i<5; i++) 
   {
   if (a[i][j]<0) 
  {
   sum = 0;
for(n=0; n<5; n++) 
 {
  sum += a[n][j];
   }
     cout << "summa elementov stolbca [" << j+1 << "] = " << sum << endl;
   break;
   }
  }
}
 getch();
return 0;
}
и еще, если не затруднит)
преподавателю не понравилась перестановка столбцов матрицы, нужно как-то логически, но как именно это организовать до меня не доходит

Код:
temp[0] = a[0][min];
temp[1] = a[1][min];
temp[2] = a[2][min];
temp[3] = a[3][min];
temp[4] = a[4][min];
temp[5] = a[5][min];
a[0][min] = a[0][i];
a[1][min] = a[1][i];
a[2][min] = a[2][i];
a[3][min] = a[3][i];
a[4][min] = a[4][i];
a[5][min] = a[5][i];
a[0][i] = temp[0];
a[1][i] = temp[1];
a[2][i] = temp[2];
a[3][i] = temp[3];
a[4][i] = temp[4];
a[5][i] = temp[5];
Jillian вне форума Ответить с цитированием
Старый 15.05.2012, 20:17   #2
ACE Valery
Сама себе режиссер
Старожил
 
Аватар для ACE Valery
 
Регистрация: 27.04.2007
Сообщений: 3,365
По умолчанию

А что программа делает, нам самим догадываться, или же вы соизволите задание написать?
Если я вас напрягаю или раздражаю, вы всегда можете забиться в угол и поплакать
ACE Valery вне форума Ответить с цитированием
Старый 17.05.2012, 17:58   #3
Jillian
 
Регистрация: 10.05.2012
Сообщений: 8
По умолчанию

Извините, не подумала
Задание:Характеристикой столбца целочисленной матрицы назовем сумму модулей его отрицательных нечетных элементов. Переставляя столбцы заданной матрицы, расположить их в соответствии с ростом характеристик.
Найти сумму элементов в тех столбцах, которые содержат хотя бы один отрицательный элемент.
Jillian вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача функции другой функции как аргумента C # stopanko C# (си шарп) 2 20.11.2011 13:13
Как подменить адрес возврата функции func на адрес функции f используя переполнение буфера buf и функции gets dmitrii6120 Помощь студентам 6 14.11.2011 20:10
Мини бэйсик:объявление функции, вызов функции , возврат. AL_LORD Помощь студентам 2 14.10.2010 17:48
Программа на СИ++, используя функции работы с файлами и функции <string.h> Аня Popova Фриланс 9 13.09.2010 15:52
Функции. Передача массива в качестве параметра функции. Wia Помощь студентам 2 17.03.2009 14:57