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

Прокомментировать программу - C++

Восстановить пароль Регистрация
 
zidans
0 / 0 / 0
Регистрация: 30.10.2010
Сообщений: 45
04.11.2010, 09:42     Прокомментировать программу #1
Ребят, если не сложно прокомментируйте и проверьте пожалуйста програмку в Microsoft Visual C++ 6.0.
Вроде ошибок не дает но не могу понять ее результата.
Спасибо огромное.

Само задание: Дана матрица из N строк и М столбцов (1<N<=100, 1<M<=50).
Выполнить заданную операцию над матрицей:
Переоформить матрицу таким образом, чтобы ее строки располагались по неубыванию их поэлементных сумм.

Код прграммы:
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#include <iostream.h>
#include <conio.h>
int main(void)
{
 int a[100][50];
 int s[100];
 int n, m;
 int i,j,k,t;
 cout<<"N=";
 cin>>n;
 cout<<" M=";
 cin>>m;
 for (i=0; i<n; ++i)
 {
  cout<<"\n";
  for (j=0; j<m; ++j)
  {
   cout<<" a["<<i<<","<<j<<"]=";
   cin>>a[i][j];
  }
 } 
 for (i=0; i<n; ++i)
 {
  s[i]=0;
  for (j=0; j<m; ++j)
  {
   s[i]+=a[i][j];
  }
 }
 for (j=n-1; j>=0; --j)
 {
  for (i=j-1; i>=0; --i)
  {
   if (s[i]>s[j])
   {
    t=s[i];
    s[i]=s[j];
    s[j]=t;
    for (k=m-1; k>=0; --k)
    {
     t=a[i][k];
     a[i][k]=a[j][k];
     a[j][k]=t;
    }
   }
  }
 }
 for (i=0; i<n; ++i)
 {
  cout<<"\n";
  for (j=0; j<m; ++j)
  {
   cout<<" a["<<i<<","<<j<<"]="<<a[i][j];
  }
 }
 return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.11.2010, 09:42     Прокомментировать программу
Посмотрите здесь:

Прокомментировать функцию C++
C++ Прокомментировать программу
C++ Прокомментировать
C++ Нужно прокомментировать программу
C++ Прокомментировать
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
JM007
0 / 0 / 0
Регистрация: 04.04.2010
Сообщений: 57
04.11.2010, 11:05     Прокомментировать программу #2
Что именно тебе надо прокомментировать, как все работает?
zidans
0 / 0 / 0
Регистрация: 30.10.2010
Сообщений: 45
04.11.2010, 11:21  [ТС]     Прокомментировать программу #3
Ну да.
vet
 Аватар для vet
175 / 175 / 13
Регистрация: 08.04.2009
Сообщений: 1,309
04.11.2010, 11:47     Прокомментировать программу #4
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include <iostream.h>
#include <conio.h>
int main(void)
{
    int a[100][50];
    int s[100];
    int n, m;
    int i,j,k,t;
    
    cout<<"N=";//ввод N строк
    cin>>n;
    cout<<" M=";//ввод M столбцов
    cin>>m;
    
    for (i=0; i<n; ++i)
    {
        cout<<"\n";
        for (j=0; j<m; ++j)
        {
            cout<<" a["<<i<<","<<j<<"]=";//ввод матрицы
            cin>>a[i][j];
        }
    }
for (i=0; i<n; ++i)
{
s[i]=0;
for (j=0; j<m; ++j)
{
s[i]+=a[i][j];//сумма строк
cout << "s[i] =" << s[i] << "\n";
}
}
for (j=n-1; j>=0; --j)
{
for (i=j-1; i>=0; --i)
{
if (s[i]>s[j])// сравниваем суммы строк между собой
{
t=s[i];
cout << "s[j] =" << s[j] << "\n";
s[i]=s[j];
s[j]=t;
for (k=m-1; k>=0; --k)
{
t=a[i][k];//меняем строки местами
a[i][k]=a[j][k];
a[j][k]=t;
}
}
}
}
for (i=0; i<n; ++i)
{
cout<<"\n";
for (j=0; j<m; ++j)
{
cout<<" a["<<i<<","<<j<<"]="<<a[i][j];
}
}
cin.get();
cin.get();
}
Yandex
Объявления
04.11.2010, 11:47     Прокомментировать программу
Ответ Создать тему
Опции темы

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