Форум программистов, компьютерный форум, киберфорум
Наши страницы

Зацикливание - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ матрица http://www.cyberforum.ru/cpp-beginners/thread74776.html
Помогите написать программу на С++.Нужно об числить суму каждый строки и каждого столбца в двухмерном масиве и записать это все в два одномерных массива.
C++ Очень интересная головоломка.. Дан массив целых чисел (n=10); Переставить элементы след образом a,a,a,a,a,a..... Целый день думаю, ничего на ум не приходит... http://www.cyberforum.ru/cpp-beginners/thread74764.html
массив C++
Определить местоположение элементов массива А(30), не встречающихся в массиве В(15). мой код работает неверно, точнее он сравнивает каждый раз, т.е. я хочу чтобы если есть одинаковые элементы, то...
C++ метод зейдера
#include<stdio.h> #include<conio.h> #include<iostream.h> #include<math.h> int i,j; void main() { void vmatrix(double**,double*,int n); int k,m,n; double **a,**bb,*b,*x,*vv;
C++ программа по массиву http://www.cyberforum.ru/cpp-beginners/thread74721.html
дан массив A, состоящий из N различных натуральных чисел. Удалить такой элемент массива А, что сумма инверсий по массиву уменьшается на максимально возможную величину.Если условию удовлетворяют...
C++ Структура на Borland c++ Дана следующая информация о книгах библиотеки: автор, название книги, издательство, год выпуска, количество экземпляров книги в библиотеки. Написать программу, позволяющую осуществлять следующие... подробнее

Показать сообщение отдельно
КсенияСергеевна
0 / 0 / 0
Регистрация: 07.09.2009
Сообщений: 45

Зацикливание - C++

15.12.2009, 14:48. Просмотров 941. Ответов 2
Метки (Все метки)

помогите исправить ошибку пожалуйста!
у меня зацикливается она!

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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
# include "stdafx.h"
# include <stdio.h>
#include <time.h>
#include <fstream>
# define SI sizeof (int)                            //элемент структуры смежности графа 
using namespace std;
 
struct VER { int kol; int mv; int *adj; };           //число вершин
FILE *p,*f;
 
 int n, h, N; 
 struct VER *Vt; 
 
 int Mark[100];
 
 void vvod_graf();
 
 void proverka(int);                              //функция прохождения графа с заданной вершины
 
 void main ( void ) 
{ 
    setlocale(LC_ALL,"RUSSIAN");
 
    int i, j, s, k, flag, v, kol, u;  
    vvod_graf ( );             
    
    for ( i = 0; i < 100; i++) 
        Mark [i] = 0; 
    
    printf ("\n Задайте K "); 
    scanf ( "%d", &k );
 
    srand((unsigned)time(NULL));
    
    for(j=0;j<=k;j++)
    {   
 
        s=rand() % 25;
         
        proverka ( s );            // вывод результатов 
 
        f = fopen( "spisok.out", "w" );
 
        fprintf (f, "\n" ); 
        
        for ( i = 0; i < n; i++ ) 
        { 
            if (i != s && ! Mark [i] ) 
                fprintf (f, "%d ", Vt [ i ] . mv); 
        } 
        
        fprintf (f, "\n");
        fclose ( f ); 
    }
}
 
 
 
 void vvod_graf ( )
 { 
     int i, j, N, kol; 
     p = fopen( "spisok_Adj.in", "r" );           //ввод числа вершин графа 
     
     if (fscanf (p, "%d", &n ) != EOF) 
     {  
         h=n/2;
 
         Vt = new VER[n];              //выделение памяти основным элементам
         
         for ( i = 0; i < n; i++)
         { 
             fscanf (p, "%d", &Vt [i] . mv ); 
             fscanf (p, "%d", &Vt [i] . kol ); 
             kol = Vt [i].kol;  
             
             
             if (kol) 
             { 
                Vt [i] . adj = new int[kol];          //выделение памяти списку смежности
                 for ( j = 0; j < kol; j++ )
                 { 
                     fscanf (p, "%d", &N ); 
                     
                     Vt[i].adj[j] = N-1; 
                 } 
             } 
         } 
     }
 
 fclose ( p ); 
 } 
 
 
void proverka ( int u ) 
  { 
      int i, v, flag = 1;                       // вершина u помечается как обработанная вершина 
      int l=0;
      Mark [u] = 2; 
      
      while (flag)
      {  
          for (i = 0; i < Vt[u ] . kol; i++) 
          { 
              v = Vt [u ] . adj[i];  
              
              if (Mark[v] == 1) 
              {
                  Mark[v] = 2;
                  l++;
 
              }
              
              else if (! Mark [v] ) 
                  Mark [v] = 1;
          } 
          
 //просмотр списка меток и поиск вершин обнаруженных на предыдущем шаге 
          for (i = 0; i < n && Mark [i] != 1; i++) ; 
          
          if (i == n) 
              flag = 0; 
          
          else 
          {
              u = i; 
              Mark [u] = 2;
          }
          
          if (l>=h) 
              flag = 0;
      } 
 
        while(Mark[v]=2)
        {   
            for (u = 0; u < 25; u++)
            {
                for(i=0;i<Vt[u ] . kol; i++)
                {
                printf("%d ",Vt [u ] . adj[i]);
                }
            }
        };
  }
очень прошу помочь!мне это завтра сдать нужно,а я не понимаю в чём проблема!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru