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

Объясните участок кода - C++

Восстановить пароль Регистрация
 
alex-net
3 / 3 / 1
Регистрация: 27.11.2012
Сообщений: 171
11.06.2014, 13:07     Объясните участок кода #1
Такой вопрос, ребят, что означает данная часть кода

C++
1
2
3
4
5
6
for(start_v=1;start_v<=n;start_v++)
  {
     rez=new int [n];
     for (i=1;i<=n;++i)
     rez[i]=inf;
     rez[start_v]=0;
из этой программы

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
63
64
65
66
67
68
69
70
71
72
73
74
#include <stdio.h>
#include <iostream>
#include <time.h>
using namespace std;
const int inf=1E9;
int n,m,i,*rez,j,start_v,k=1;
struct Duga
  {
   int from,to,length;
  }*mRast;
int main()
{
FILE *f = fopen("algBF.txt","r");
locale loc("russian");
locale::global(loc);
fscanf(f,"%d %d",&n,&m);
clock_t t;
t=clock();
int **Smej=new int *[n];
mRast= new Duga [m];
  for (i=1; i<=n; i ++)
  {
     Smej[i]=new int [n];
     for (j=1; j<=n; j++)
     {
        fscanf(f,"%d",&Smej[i][j]);
        if (Smej[i][j]!=0)
           {
              mRast[k].from=i;
              mRast[k].to=j;
              mRast[k].length=Smej[i][j];
              k++;
           }
     }
  }
for(int i = 0; i < N; i++)
delete [] Smej[i];
delete [] Smej;
fclose(f);
for(start_v=1;start_v<=n;start_v++)
  {
     rez=new int [n];
     for (i=1;i<=n;++i)
     rez[i]=inf;
     rez[start_v]=0;
     for (i=1;i<=(n+1);i++)
       {
          for (j=1;j<=m;j++)
            {
                if (rez[mRast[j].from]<inf &&
             rez[mRast[j].from]+mRast[j].length<rez[mRast[j].to])
                if (i==(n+1))
                  {
                 printf("В графе есть цикл отрицательного веса");
                 system ("pause");
                 return 0;
                   }
                 else
             rez[mRast[j].to]=rez[mRast[j].from]+mRast[j].length;
             }
       }
     for (i=1;i<=n;++i)
      {
          if (rez[i]==inf) printf("нет пути\n"); 
          else printf("%d ",rez[i]);
       }
printf("\n");
  }
t=clock()-t;
printf("Время работы %f", (double)t/CLOCKS_PER_SEC);
delete [] mRast;
delete [] rez;
system ("pause");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.06.2014, 13:07     Объясните участок кода
Посмотрите здесь:

Что делает этот участок кода? C++
Участок B кода выполняется позже, чем участок A кода, но почему-то B влияет на работоспособность A! Почему? C++
C++ Объясните кусок кода
C++ Объясните работу кода
C++ Объясните пожалуйста участок кода
Объясните фрагмент кода! C++
Объясните две строчки кода C++
Объясните фрагменты кода C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11845 / 6824 / 771
Регистрация: 27.09.2012
Сообщений: 16,919
Записей в блоге: 2
Завершенные тесты: 1
11.06.2014, 13:12     Объясните участок кода #2
Цитата Сообщение от alex-net Посмотреть сообщение
что означает данная часть кода
это генератор ошибок и утечек памяти, собственно, как и остальная программа.
alex-net
3 / 3 / 1
Регистрация: 27.11.2012
Сообщений: 171
11.06.2014, 13:29  [ТС]     Объясните участок кода #3
Ошибки при запуске программы:


Помогите исправить код
Миниатюры
Объясните участок кода  
Yandex
Объявления
11.06.2014, 13:29     Объясните участок кода
Ответ Создать тему
Опции темы

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