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

Построить список - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Ввести с клавиатуры строку символов и обработать ее http://www.cyberforum.ru/cpp-beginners/thread383648.html
Здравствуйте! помогите пожалуйста со строками в С++! Ввести с клавиатуры строку символов и обработать ее в соответствии со своим вариантом, используя функции: 1.Формирование,печать и обработку массивов и строк оформить в виде функции. Массивы передавать как параметры функций. 2.Ввод/вывод строк организовать с помощью функций: char* gets(char*s) int puts(char*s) 3.Для обработки строк...
C++ Удалить все гласные буквы из строки Здравствуйте,помогите составить программу!!! Нужно удалить все глассные буквы из строки используя функции: 1.Формирование,печать и обработку массивов и строк оформить в виде функции. Массивы передавать как параметры функций. 2.Ввод/вывод строк организовать с помощью функций: char* gets(char*s) int puts(char*s) 3.Для обработки строк использовать стандартные функции из библиотечного файла... http://www.cyberforum.ru/cpp-beginners/thread383647.html
Написать функцию вещественного типа, находящую максимальное из трех вещественных чисел C++
Написать функцию Max3(A,B,C) вещественного типа, находящую максимальное из трех вещественных чисел A, B и C. С помощью этой функции найти максимальные из наборов (A,B,C), (A,B,D), (A,C,D), если даны числа A, B, C, D.
C++ Ошибка при компиляции
При компиляции программы борланд выдает ошибку Unresolved external '_main' referenced from C:\PROGRAM FILES\BORLAND\CBUILDER6\LIB\C0X32.OBJ.Подскажите как решить эту проблему. приведу код: #include <iostream> using namespace std; int main() { void PC_dinamik (bool bOn) { switch (bOn) {
C++ Написать программу, которая находит заданное количество чисел, являющихся квадратами натуральных чисел, и выводит их на экран. Проверку "квадрат – не http://www.cyberforum.ru/cpp-beginners/thread383612.html
Написать программу, которая находит заданное количество чисел, являющихся квадратами натуральных чисел, и выводит их на экран. Проверку "квадрат – не квадрат" оформить в виде функции. Вообщем думаю задача ясна... Всем сделавшим даю пасипку=))
C++ Проблема с strlen Доброго времени суток. При подсчете длин строки strlen считает до 1 пробела, в итоге в 2 строке только 1 слово из 1 строки. В чем может быть проблема? VS 2008 ED #include <iostream> #include <string> using namespace std; int main() { подробнее

Показать сообщение отдельно
staket
 Аватар для staket
0 / 0 / 0
Регистрация: 11.11.2011
Сообщений: 4
14.11.2011, 19:31     Построить список
Дано задание
Построить список , исключить первые и n элементы , расположенные после
1. первого отрицательного
2. после наибольшего

Добавлено через 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
#include<iostream.h>
#include<conio.h>
 
struct node {
    int info;
    node *next, *prev;
    };
 
void add_L(node*&first, node*&last, int x) {
    node*p = new node;
    p->info = x;
    p->prev = 0;
    p->next = first;
    if(first == 0) last = 0;
        else first->prev = p;
    first = p;
    }
 
void add_R(node*&first, node*&last, int x) {
    node*p = new node;
    p->info = x;
    p->next = 0;
    p->prev = last;
    if(last) last->next = p;
        else first = p;
    last = p;
    }
 
void make(node*&first, node*&last) {
    first = 0;
    last = 0;
    int x;
    do {
        cout<<"\n VVesti nomer: \n";
        cin>>x;
        add_R(first, last, x);
        cout<<"\n Continue ? Y/N \n";
        //cout<<"\nFirst: "<<first<<"\nLast: "<<last;
        } while(getch()!='n');
    }
 
void output(node*first, char t[]) {
    if(first == 0) cout<<"\n List empty \n";
        else {
            node*p = first;
            cout<<t;
            while(p) {
                cout<<p->info<<"  ";
                p = p->next;
                }
            cout<<endl;
            }
    }
 
void insert(node*&last, node*p, int x) {
    node*t = new node;
    t->info = x;
    t->next = p->next;
    t->prev = p;
    if(p == last) last = t;
        else p->next->prev = t;
        p->next = t;
    }
 
void remove(node*&first, node*&last, int &x, node*p) {
    if(p == first) first = p->next;
        else p->prev->next = p->next;
    if(p == last) last = p->prev;
        else p->next->prev = p->prev;
    x = p->info;
    delete p;
    }
void sort(node*first, node*last) {
    node*p = first, *t, *pmin;
    while(p != last) {
        pmin = p;
        t = p->next;
        while(t) {
            if(t->info < pmin->info) pmin = t;
            t = t->next;
            }
        int z = p->info;
        p->info = pmin->info;
        pmin->info = z;
        p = p->next;
        }
    }
 
void main() {
    clrscr();
    int x, z, sum = 0;
    node*first, *last, *p, *a;
    make(first, last);
    output(first, "\n Spisok: \n");
    //Delete 1 pozitive
    p = first;
    while (p!=0&&p->info<0){
    p=p->next;
    }
    if(p==0) cout<<"\n Net polzitelnih \n";
        else{ remove (first, last, x, p);
        sum = sum + x;
        output(first,"\n Spisok posle udaleniya 1  polozitelnogo \n");
        }
    //Add novogo elementa posle min
    p = first;
    a = first;
    z = p->info;
    while(p!=0) {
        p = p->next;
        if(z>p->info) {
            z = p->info;
            a = p;
            }
    }
    cout<<"\n Novii Element ";
    cin>>x;
    insert(last, a, x);
    output(first,"\n Spisok posle dobavlenya\n");
 
    //Udalenie vseh polozitelnih
    p = first;
    while(p!=0) {
        if(p->info>0) {
            remove(first, last, x, p);
            sum = sum + x;
            p = p->prev;
            }
        p = p->next;
    }
    output(first,"\n Spisok posle udaleniya vseh polozitel'nih\n");
 
    sort(first,last);
    output(first,"\n Spisok posle sortirovki\n");
 
    getch();
    }
Добавлено через 3 часа 56 минут
Пожалуйста проверьте кто понимает - чувствую что я не удовлетворил условию задачи ! покажите , где это может быть и как исправить!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:55. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru