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

Сортировка двусвязного списка - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ исправьте код http://www.cyberforum.ru/cpp-beginners/thread449840.html
Написал код нахождение макс. элемента вектора не работает выводит фигню... исправьте плиз #include <cstdlib> #include <iostream> #define n 3 using namespace std; int main() { int *v1,max;
C++ криво считает произведение всё, кроме произведения, работает правильно #include <stdio.h> #include <stdlib.h> #include <conio.h> #define n 10 int main () { clrscr(); int a,b; http://www.cyberforum.ru/cpp-beginners/thread449830.html
Перевод с паскаля на С++ C++
Даны два массива A и B одинакового размера N. Сформировать новый массив C того же размера, каждый элемент которого равен максимальному из элементов массивов A и B с тем же индексом.} Program...
" -> "and " . " C++
Ребятя,розбираюсь с ООП,но так и не понял разницу между между " . "(точка) и "->";Объясните мне не грамотному :( . Только написал и сразу понял что при помощи точки осуществляется доступ к...
C++ криво считает сумму http://www.cyberforum.ru/cpp-beginners/thread449816.html
всё, кроме подсчёта суммы, работает правильно. need help! #include <stdio.h> #include <stdlib.h> #include <conio.h> #define n 10 int main () { clrscr(); int a,b;
C++ Удалить символы из строки за минимальное количество ходов. Удалить символы из строки за минимальное количество ходов. Пример input.txt acdcbbc output.txt 4 вот что Я набодяжил, но не работает, может подскажите в чем ошибка подробнее

Показать сообщение отдельно
06041992
0 / 0 / 0
Регистрация: 06.01.2012
Сообщений: 13

Сортировка двусвязного списка - C++

20.02.2012, 22:02. Просмотров 1924. Ответов 0
Метки (Все метки)

Разработать программу учета продажи и поступления товаров в магазин. Перечень товаров, имеющихся в магазине, оформить в виде линейного двусвязного списка. Предусмотреть возможность сортировки товаров по цене.
Код ниже. Зависает на условии в сортировке. Правильно ли определены указатели?
Среда Borland C.


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
#include <conio.h>
#include <stdio.h>
#include <iostream.h>
#include <stdlib.h>
#include <string.h>
 
 
struct Element {
char Name[20];
float price;
Element *Next;
Element *Previous;
};
 
 
class list
{
Element *begin,*end;
public:
int n;
void Add(void);
void Show (void);
void Sort(void);
void Menu(void);
list(){
begin=end=NULL;
};
 
~list()
{
Element *del;
while (begin)
{
del=begin;
begin = begin->Next;
delete del;
}
};
};
 
void list::Add(void)
{ Element *part= new Element;
cin >> part->Name;
cin >> part->price;
part->Next=NULL;
if (begin==NULL)
begin=part;
else
{
end->Next=part;
part->Previous=end;
}
end=part;
}
 
void list::Show(void)
{ Element *part=begin;
while (part!=NULL)
{
cout<<"\n "<<part->Name;
cout<<"\n "<<part->price;
cout<<"\n";
part=part->Next;
}
if(begin==NULL) cout<<"\n Empty \n";
getch();
}
 
void list::Sort(void)
{ Element *count,*prev;
int i=0,j;
count=begin;
prev=begin;
while (count->Next!=NULL)
{
for (j=0;j<n-i-1;j++)
if (count==begin&&(count->price >= count->Next->price))
{ prev=count;
count=count->Next;
prev->Previous=count;
prev->Next=count->Next;
count->Previous=NULL;
count->Next=prev;
}
if (count!=begin&&(count->price >= count->Next->price))
{prev=count;
prev->Previous=count->Next;
prev->Next=count->Next->Next;
count=count->Next;
count->Next=prev;}
i++;
}
getch();
}
 
 
void list::Menu(void)
{
list product;
int key;
clrscr();
do {
cout<<" 1 - Add\n"
<<" 2 - Sort*\n"
<<" 3 - Show \n"
<<" Esc - Exit \n";
 
key=getch();
switch (key) {
case 49 :
product.Add();
break;
case 50 :
product.Sort();
break;
case 51 :
product.Show();
break;
} clrscr();
} while (key!=27);
}
 
main()
{
list T;
T.Menu();
return 0;
}
 Комментарий модератора 
Используйте теги форматирования кода!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru