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

Динамическая структура — двусвязный список - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Функция: для заданного числа А вывести предшествующее ему простое число http://www.cyberforum.ru/cpp-beginners/thread1620945.html
Для заданного числа А вывести на экран предшествующее по отношению к нему простое число. Столкнулся с проблемкой, при вводе 1, печает 0, как это исправить? В самом цикле do while поменять что-то? #include <iostream> using namespace std; int f(int n) {
C++ Найти сумму и произведение натуральных чисел, не превышающих заданного значения N Разработайте графическую схему алгоритма и напишите программу для решения следующей задачи: найти сумму и произведение натуральных чисел,не превышающих заданного значения N. Сумму определить двумя способами: применяя циклический алгоритм суммирования и формулу для определения суммы арифметической прогрессии. КАк записать циклический метод суммирования? http://www.cyberforum.ru/cpp-beginners/thread1620943.html
Написать программу которая получает с клавиатуры натуральное число N - размерность массива C++
Разработать графическую схему алгоритма и два варианта программы (первый вариант –со статическим выделением памяти под массив, второй –с динамическим), которая получает с клавиатуры натуральное число N -размерность массива, а также N целых чисел –элементы этого массива, выводит этот массив на экран монитора в прямом и обратном порядке, а также определяет сумму положительных,...
C++ Объясните, пожалуйста, программу!Нужно нарисовать алгоритм!
Условие: Указать то число заданного множества целых чисел,в двоичном представлении которого больше всего единиц. #include <iostream> #include <bitset> #include <string> #include <conio.h> using namespace std; #define LENGTH 8 int countones(bitset<LENGTH> number) { string numstr = number.to_string();
Assembler как это сделать на ассемблере http://www.cyberforum.ru/cpp-beginners/thread1620895.html
Лабораторная работа №1. Средствами BIOS получать код нажатой клавиши и выводить на экран соответствующую клавише букву русского или латинского алфавита. Переключение «раскладки» клавиатуры одновременным нажатием клавиш Shift и Ctrl. Лабораторная работа №2. В символьном режиме средствами BIOS или DOS перемещением любого символа на экране отмечать текущее положение указателя мыши. Нажатием...
C++ Класс "Домашняя библиотека" "Разработать набор объектов и программный продукт для организации домашней библиотеки. Программный модуль должен обеспечивать возможность вводить, редактировать и удалять элементы, хранимые в библиотеке." т.е. имеется библиотека допустим из книг,журналов и аудио.у каждого свои: название,дата выхода, кол-во страниц(для книг и журналов) и т.д. Все хранится в файле(-ах).пользователь должен иметь... подробнее

Показать сообщение отдельно
olya7
476 / 293 / 91
Регистрация: 18.02.2013
Сообщений: 684
21.12.2015, 17:54     Динамическая структура — двусвязный список
как-то так, только надо дописать функцию поиска веса чистого металла
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
#include <cstdlib>
#include <iostream>
#include <conio.h>
using namespace std;
struct   list
{
int num;
double ves;
double v_m;
list *next;
list *prev;
};
 
void vivod( list  *p)
{
 
    if (p == NULL)
    {
        cout << "pusto\n";
        return;
    }
 
    list *t = p;
    while (t != NULL)
    {   cout<< t->num << "\t"<< t->ves<< "\t"<< t->v_m<<endl;
 
        t = t->next;
    }
    cout<<endl;
 
}
void Del(list **p,list **end)
{
    list *t;
    while (*p != NULL)
    {
        t = *p;
        *p = (*p)->next;
        delete t;
    }
    *p=*end=NULL;
 
}
list* InStack (list  **b,list **e) 
{
        list *t = new list;
        cout<< "Enter number ";
        cin >> t->num;
        cout<< "Enter ves ";
        cin >> t->ves;
        cout<< "Enter ves metalla ";
        cin >> t->v_m;
        if (*b==NULL)
        {
            t->prev=t->next=NULL;
            *b=*e=t;
        }
        else
        {
            t->next=NULL;
            t->prev=*e;
            (*e)->next=t;
            *e=t;
        }
        return   t;
 
}
 
int main()
{
    int x,n;
 
    cout << "Vvedite kol-vo elementov: ";
    cin >> n;
    list *begin = NULL,*end=NULL;
    for (int i = 1; i <= n; i++)
    {
 
            end = InStack(&begin,&end);
 
    }
 
    cout << List :\n";
    vivod(begin);cout << "ok!\n";
    Del(&begin,&end);
 
getch();
}
 
Текущее время: 09:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru