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

Односвязный список. Подсчитать сумму N первых элементов. Удалить эти элементы и вставить в конец списка - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вывести все целочисленные элементы массива http://www.cyberforum.ru/cpp-beginners/thread867343.html
помогите пожалуйста с задачей: дан массив С. Вывести все целочисленные значения этого массива. Не знаю как именно вывести целочисленные значения.
C++ передача массива классов в метод класса 1. этап. Разработать библиотеку функций(h-файл) для выполнения: – чтения базы данных из файла; //read() – печати на экран; //print() – добавления и удаления строк базы данных; //add(), del() – записи базы данных в файл; //record() – сортировка по вычисляемому полю.//sort() 2 этап. Создать класс на основе структуры в предыдущей лабораторной работе удаление строки я собираюсь... http://www.cyberforum.ru/cpp-beginners/thread867327.html
Создать класс вектор; перегрузка; с++ C++
Здравствуйте. Помогите пожалуйста с задачей. Создать класс "вектор", содержащий ссылку на int, размерность вектора и переменную ошибки. Класс имеет конструкторы по умолчанию, конструктор с одним и двумя параметрами, конструктор копирования и деструктор. Определить операторы: +, -, *, =, +=, -=, *=, - как функции члены класса. Определить функцию печати, выполнить перегрузку операторов ввода и...
ооп на с++ Вызвать виртуальную функцию C++
написала класс, но есть одна проблемка. необходимо вызывать virtual float Storona()=0;, но где и как разобрать не могу. Подкиньте идейку пожалуйста)) Добавлено через 30 секунд #include <iostream> #include <math.h> using namespace std; class Figura { protected:
C++ Объявление двухмерного динамического массива в функции http://www.cyberforum.ru/cpp-beginners/thread867278.html
Подскажите, как объявить динамический массив размерности n*n. Допустим есть функция void F1(..., int n) { … } Что написать в скобках?
C++ Не работает DLL написал DLL и вроде бы как правильно (во всяком случае при компиляции ничего не было) Закинул все по папочкам: в инклуд, в либы и рядом с запускаемым приложением саму .dll, но у меня выдает ошибку. Почему? подробнее

Показать сообщение отдельно
Romantikkk
0 / 0 / 0
Регистрация: 19.10.2012
Сообщений: 144
16.05.2013, 18:43     Односвязный список. Подсчитать сумму N первых элементов. Удалить эти элементы и вставить в конец списка
Помогите, плиз доработать функцию summ - она должна подсчитать сумму N первых элементов. Удалить эти элементы и вставить в конец списка.

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
#include <iostream>
#include <time.h>
using namespace std;
 
struct list
{
    int value;
    list* next;
};
list* f = NULL;
list* l = NULL;
void print_all()
{
    list* a = f;
    while (a)
    {
        cout << a->value << endl;
        a = a->next;
    }
}
void add_from_head()
{
    list* a = new list;
    a->value = rand() % 10;
    a->next = NULL;
    f = a;
    l = a;
    for (int i = 0; i < 5; i++)
    {
        l->next = new list;
        l = l->next;
        l->value = rand() % 10;
        l->next = NULL;
    }
}
void add_from_tail()
{
    list* a = NULL;
    for (int i = 0; i <= 5; i++)
    {
        list* b = new list;
        b->value = rand() % 10;
        b->next = a;
        a = b;
    }
    f = a;
}
int summ(int N)
{
    list* a = f;
    cout<<"Enter N:"<<endl;
    cin>>N;
    int sum=0;
    for(int i=0;i<N; i++){
        sum=sum+a->value;
        /*a->value=a->next;*/
    }
 
    for(int j=0; j<N;j++){
        a->next==NULL;
    }
 
    return sum;
 
 
    /*while (a)
    {
        if (a->value == in)
            a->value = out;
        a = a->next;
    }*/
}
int main()
{
    srand (time(NULL));
    while (1)
    {
        int nl;
        cout << "1. Add from the head\n2. Add from the tail\n3. Print\n4. Search and replace\n5. Quit\n";
        cin >> nl;
        cout << endl;
        switch (nl)
        {
        case 1:
            add_from_head();
            cout << endl;
            break;
        case 2:
            add_from_tail();
            cout << endl;
            break;
        case 3:
            print_all();
            cout << endl;
            break;
        case 4:
            int N, out;
            out=summ(N);
            cout << "Work done! ";
            
            /*replace(in, out);*/
            cout << endl<<"______________"<<endl<<out<<"______________"<<endl;
            break;
        case 5:
            return 0;
            break;
        }
    }
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru