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

Списки - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вывод map через ostream_iterator с использованием алгоритма reverse_copy!!! http://www.cyberforum.ru/cpp-beginners/thread380895.html
У меня есть два класса Time и Patient, я засунул их в map (ключ Time, значение - Patient), и мне надо вывести через ostream_iterator в убывающем порядке (reverse_copy), скажите пожалуйста как это...
C++ Область применения С/С++ Я программирую на C++ и С# под Windows. Хотелось бы узнать по конкретнее для каких сфер применяется С++ в настоящее время? На С# пишутся в основном офисные приложения(хотя можно написать и многое... http://www.cyberforum.ru/cpp-beginners/thread380887.html
Одномерный массив. Найти наименьшие среди элементов первого массива, которые не входят во второй массив. C++
Задано два массива. Найти наименьшие среди элементов первого массива, которые не входят во второй массив. Ни как не могу придумать:cry:, помогите пожалуйста. вот что смог, программа немного не...
C++ Найти в введеном числе цифру "1"
Если хотя бы один раз встречается "1" вывести "Yes" и закончить программу. Подскажите что не так тут. #include<iostream> using namespace std; int main(){ int a,r; cin>>a; ...
C++ Помогите написать программу, плиз... http://www.cyberforum.ru/cpp-beginners/thread380880.html
Цель работы:Дана функция, заданная бесконечным рядом. С клавиатуры вводятся x и e(e - точность 0,001 - 0,00001), нужно вычислить бесконечную сумму с заданной точностью е. Вычисления прекращаются,...
C++ Открыть файл Как открыть существующий файл? Делать мне с ним ничего не надо, т.е. хендл не нужен, нужно просто, чтоб он открылся подробнее

Показать сообщение отдельно
KOPC1886
27 / 6 / 0
Регистрация: 28.10.2010
Сообщений: 352
12.11.2011, 20:23  [ТС]
Вот что у меня получилось
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
// Списки и структуры.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
#include <iostream>
#include "H1.h"
using namespace std;
 
/*
struct Node
{
    char a;
    int d;
    Node *next;
    Node *prev;
 
};
 
Node * first(char a);
void add(Node **pend, char a);
Node * find(Node * const pbeg, int i);
bool remove(Node **pbeg, Node **pend, int key);
Node * incert(Node * const pbeg, Node **pend, int key, char a);
*/
 
int _tmain(int argc, _TCHAR* argv[])
{
    Node *pbeg = first('a'); // Формирование первого элемента списка
    Node *pend = pbeg;
    Node *n2=first('e');
    Node *pendn=n2;
    // Список заканчивается, едва начавшись
    // Добавление в конец списка четырех элементов 2, 3. 4. и 5:
    int size;
    int size2;
    int ind;
    int scob=0;
    char Form[]={"bcdefrtyklop"};
    size=strlen(Form);
    for (int i = 0; i<size; i++)
    {
        add(&pend,Form[i]);
        if (Form[i]=='(')
        {               
            scob++;
            ind=i;
            
        }
        if (Form[i]==')')
        {
            scob--;
            ind=i;
        }   
    }
    
        
        
    Node *pv = pbeg;
    Node *pk;
 
    char Temp[]={"frt"};
    size2=strlen(Temp);
    for (int i = 0; i<size2; i++)
    {
        
        add(&pendn,Temp[i]);
        //n2->a=Temp[i];
        //n2=n2->next;
        
    
    }
    /*
    while (n2)
    {
        cout<<n2->a<<' ';
        n2=n2->next;
 
    }
    */
    
    
 
    //incert(pbeg, &pend, 'y',&pendn);
    // Удаление элемента 5
    //if(!remove (&pbeg, &pend, Form[3]))cout << "не найден";
    // Вставка элемента 200 гюсле элемента 2:
    
    while (pv)
    {   /*  
        if(pv->a=='(')
        {                   
            pk=pv;
            //pv=pv->next;
            //break;
            
            while(pk->next!=NULL)
            {
                pk = pk->next;
                if(pk->a==')')
                {
                    pk->a=' ';
                    pv->a=' ';
                    break;
                }
                    
                
            }
        
        }*/
 
        if(pv->a=='c')
        {
            pk=pv;      
            (pk->next)=(n2->next)->prev;//n2->next      
        }
        
        // вывод списка на экран
        cout << pv->a;
        pv = pv->next;
        
    }
    
    cout <<endl;
 
    /*
    if (scob> 0)
           cout << "( bigger"<<ind<<endl;
    else if (scob< 0) 
           cout << ") bigger"<<ind<<endl;
    else if (scob == 0) cout << "Good";
    */
 
    return 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
while (pv)
    {   /*  
        if(pv->a=='(')
        {                   
            pk=pv;
            //pv=pv->next;
            //break;
            
            while(pk->next!=NULL)
            {
                pk = pk->next;
                if(pk->a==')')
                {
                    pk->a=' ';
                    pv->a=' ';
                    break;
                }
                    
                
            }
        
        }*/
 
        if(pv->a=='c')
        {
            pk=pv;      
            (pk->next)=(n2->next)->prev;//n2->next      
        }
        
        // вывод списка на экран
        cout << pv->a;
        pv = pv->next;
        
    }
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru