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

помошите з ошыбками - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ двусвязный список, класс, конструктор http://www.cyberforum.ru/cpp-beginners/thread1034808.html
Дан входящий файл, получить новый файл, вывести на экран, состоящий из слов, начинающихся на введенную букву и заданной длины. Использовать двусвязный список, класс, конструктор. Помогите, заранее спасибо.
C++ Календарь Ребят помогите пожалуйста. Очень нужна помощь. В WindowsForm на С++ хотел написать программу, где можно задавать диапазон в календаре monthCalendar. Как это сделать я не знаю. Хотя бы подскажите как. Заранее спасибо. Добавлено через 11 минут Тема закрыта http://www.cyberforum.ru/cpp-beginners/thread1034807.html
C++ статистика соединений
Здравствуйте, уважаемые господа и дамы. Вопрос мой таков. Есть пять массивов. M1,M2,M3,M4,M5. Происходит событие представляющее из себя цепочку соединения M1-M2-M3-M4-M5, где x1,x2,x3,x4,x5 являются случайные числа от 0 до 999. Например некое событие представляет собой цепочку соединения M1-M2-M3-M4-M5. И таких событий происходит 10000 штук. Как отслеживать статистику соединений, чтобы в...
Найти количество элементов массива, расположенных после первого нулевого элемента C++
Задан массив целых чисел Х(n). Найти • сумму положительных четных элементов массива; • количество элементов массива, расположенных после первого нулевого элемента. Из данного массива и некоторого массива того же типа, но другой размерности Y(m), сформировать общий массив Z(n+m). Удалить из полученного массива наибольший элемент(не могу это решить) #include <cstdlib> #include <iostream>
C++ Удаление элемента из массива http://www.cyberforum.ru/cpp-beginners/thread1034785.html
Здравствуйте, нужно удалить все гласные(В данном коде английские) из массива, подскажите как? Вот код: #include <stdafx.h> #include <iostream> #include <conio.h> #include <string> using namespace std;
C++ Запись в файл, среднее арифметическое отрицательных элементов Задача. В любом текстовом редакторе создать текстовый файл, в который внести информацию согласно варианту. Составить программу, которая будет выполнять обработку информации из файла в соответствии с вариантом. Дополнительные параметры вводит пользователь. Задание Найти среднее арифметическое отрицательных элементов. Результат вычислений дописать в тот же файл. Помогите пожалуйста написал код,... подробнее

Показать сообщение отдельно
Amsteri
0 / 0 / 0
Регистрация: 27.09.2013
Сообщений: 24
09.12.2013, 19:37     помошите з ошыбками
//Знаходження відстані від джерела до всіх вершин в графі

//з ненегативними вагами (метод Дейкстри).

//Знаходження найкоротшого шляху з S в T.

# include <iostream.h>

# define MaxNodes 7

# define B 1000 //Машинний еквівалент нескінченності.

//Опис типу вузла стека.

typedef struct Zveno *svqz;

typedef struct Zveno {

int Element;

svqz Sled; };

//======================================================================

classSpisok {

private:

int A[MaxNodes][MaxNodes]; //Матриця вагів дуг.

int D[MaxNodes]; //Матриця відстаней від джерела до

//всіх вершин графа.

svqz Stack; //Вказівник на робочий стек.

void UDALENIE(svqz *, int *);

void W_S(svqz *, int);

int Pusto_Q( int *);

public:

Spisok() {Stack = NULL;}

void Vvod_Ves();

void Reshenie(); };

//======================================================================

void main() {

Spisok A;

A.Vvod_Ves();

A.Reshenie(); }

//======================================================================

int Spisok::Pusto_Q( int *Q) {

for( int i=0;i<MaxNodes;i++)

if( *(Q+i)!=0 ) return 0; //Брехня – не порожньо!

return 1; //Істина – порожньо!

}

//======================================================================

void Spisok::Reshenie() {

int S; //Початкова вершина шляху (джерело).

int T; //Кінцева вершина шляху.

int u,v,Min;

int i,j,k;

svqz UkZv;

int Q[MaxNodes];

cout<<"Введіть джерело: ";

cin>>S; S--;

//Ініціалізація.

for(i=0;i<MaxNodes;i++) { D[i]= A[S][i]; Q[i]= 0; }

D[S]= 0;

for(i=0;i<MaxNodes;i++) Q[i]= 1;

Q[S]= 0;

//Обчислення матриці відстаней від джерела до всіх вершин графа.

while(!Pusto_Q(&Q[0])) { //Поки Q не порожньо.

Min = B;

for(i=0;i<MaxNodes;i++)

if(Q[i]==1 && D[i]<Min) { Min = D[i]; u = i; }

Q[u]= 0;

for(i=0;i<MaxNodes;i++)

if(Q[i]== 1)

if( D[i]> D[u]+A[u][i] ) D[i]= D[u]+ A[u][i]; }

//Виведення матриці відстаней від джерела до всіх вершин графа.

cout<<"Матриця відстаней:\n";

for(i=0;i<MaxNodes;i++) cout<<D[i]<< " ";

cout<<endl;

// -----------------------------------------------------------------

//Знаходження найкоротшого шляху з S в T з використанням побудованої

//матриці відстаней.

// -----------------------------------------------------------------

cout<<"Введіть кінцеву вершину шляху: ";

cin>>T; T--;

W_S(&Stack,T);

v = T;

while( v!=S ) {

for(i=0;i<MaxNodes;i++)

if( D[v]==D[i]+A[i][v] ) u = i;

W_S(&Stack,u);

v = u; }

//Виведення найкоротшого шляху на екран дисплея.

cout<<"Найкоротший шлях: ";

UkZv = Stack;

while( UkZv != NULL ) {

cout<<(UkZv->Element+1)<<" ";

UkZv = UkZv->Sled; }

cout<<endl; }

//======================================================================

void Spisok::Vvod_Ves() {

//Введення матриці вагів дуг заданого графа.

cout<<"Вводьте елементи матриці вагів дуг по стрічкам:\n";

for( int i=0;i<MaxNodes;i++)

for( int j=0;j<MaxNodes;j++) {

cout<<"Введіть A[" <<(i+1)<<"," <<(j+1)<<"]: ";

cin>>A[i][j];

if( A[i][j]==0 ) A[i][j]= B; } }

//======================================================================

voidSpisok::W_S(svqz *stk, int Elem) {

//Приміщення Elem в стек stk.

svqz q= new(Zveno);

(*q).Element = Elem;

(*q).Sled = *stk;

*stk = q; }

//======================================================================

voidSpisok::UDALENIE(svqz *stk, int *Klad) {

//Видалення ланки із стека, заданого вказівником *stk. Значення

//інформаційного поля ланки зберігається в параметрі Klad.

svqz q;

if( *stk == NULL ) cout<<"Спроба вибору з порожнього стека!\n";

else *Klad =(**stk).Element;

q = *stk;

*stk =(**stk).Sled;

delete q; } }
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 10:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru