Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Заполнить матрицу, от левого верхнего угла по диагонали: вправо - вверх https://www.cyberforum.ru/ cpp-beginners/ thread844965.html
Помогите пожалуйста, уже второй день мучаюсь...
C++ Ввод-вывод из файла
Товарищи форумчане, помогите разобраться с выводом из файла на экран. Забить в файл у меня получилось,авот вывести никак. Вот часть кода: #include <conio.h> #include <windows.h> #include <iostream> #include <stdio.h> /*Сформировать файл из целых чисел, вводимых с клавиатуры. Напечатать его. Переставить компоненты файла так, чтобы сначала шли все компоненты, являющиеся четными числами, а...
C++ Как удалить столбцы https://www.cyberforum.ru/ cpp-beginners/ thread844923.html
Нужна программа , которая удаляет столбцы из двумерного массива , запрашивая номер столбца по одному.
C++ суммарное смещение в новый массив Доброго всем дня! Прогуглил,но не нашёл искомого. Суть такова:имеется массив,например , из 4 элементов(заполненный). Имеется еще массив, размерностью на 1 менее, т.е. 3. И необходимо, чтобы элементы второго массива были суммой элементов, стоящих перед соответствующим индексом массива первого. ДОСТУПНЕЕ НА КАРТИНКЕ: http://s020.***********/i707/1304/52/684bb0d4fdc0.jpg https://www.cyberforum.ru/ cpp-beginners/ thread844900.html
C++ Вычислить среднеарифметическое нечетных элементов массива
Дан одномерный массив, состоящий из N целочисленных элементов. Заполнить массив случайными числами. Вычислить среднеарифметическое нечетных элементов массива.
C++ Вычислить произведение не нулевых элементов массива Дан одномерный массив, состоящий из N целочисленных элементов. Заполнить массив случайными числами.Вычислить произведение не нулевых элементов массива. https://www.cyberforum.ru/ cpp-beginners/ thread844884.html
C++ Классы и объекты https://www.cyberforum.ru/ cpp-beginners/ thread844859.html
В чем ошибка помогите пожалуйста #include <iostream> #include <windows.h> using namespace std; class Student { public: Student () { lastname=NULL;
C++ Перевод программы паскаль в с++
Var A:array of integer; i,n,t:integer; Begin write('Vvedite razmernost ');readln(n); writeln('Ishodni massiv: '); For i:=1 to n do Begin A:=random(30)-15; write(A:4); End;
C++ Применение указателей Доброй ночи. Встретил вот такое выражение в книге и не могу понять что к чему: Distance& dist = *(new Distance); После чего можно обращаться к объекту через операцию точки, а не "->". Disntace - класс. Операция new выделяет место равное объекту класса Distance и возвращает указатель на блок памяти, который выделили мы у операционной системы. Не могу понять к чему там ссылка (знак амперсанда... https://www.cyberforum.ru/ cpp-beginners/ thread844846.html C++ Setlength Здравствуйте, Друзья! Помогите решить данную проблему, когда допустим прописываю следующие строчки кода setlength(Pnum,kP); Появляется следующая ошибка: Невозможно разрешить идентификатор setlength error: 'setlength' was not declared in this scope ---- (при нажатии сочетания клавиш ALT+ВВОД отображаются всплывающие подсказки) https://www.cyberforum.ru/ cpp-beginners/ thread844842.html
Операции с кольцами C++
Даны два кольца А и В.Содержимое-интовые числа. Написать функции объединения двух колец(из двух сделать одно, без повторов чисел), удаления кольца А из кольца В, нахождения общей части и содержится ли кольцо А в кольце В.
C++ Метод статистических испытаний Методом статистических испытаний оцените точность вычисления функции sin х с помощью многочлена наилучшего приближения вида: (рис.1) а1 = 1,570627, а2 = -0,643229, а3 = 0,072710. Считаем, что аргумент равномерно распределён в интервале (а, b). Построить зависимость МО, СКО и доверительного интервала при ра = 0,95 ошибки вычисления функции sin х от величины интервала. Принять... https://www.cyberforum.ru/ cpp-beginners/ thread844820.html
4863 / 2662 / 913
Регистрация: 29.11.2010
Сообщений: 5,743
22.04.2013, 13:55 0

Выручайте! Нужно переделать прогу под двусвязный список.ничего не понимаю) - C++ - Ответ 4452348

22.04.2013, 13:55. Показов 1797. Ответов 23
Метки (Все метки)

Ответ

Цитата Сообщение от Lonter Посмотреть сообщение
Ну я еще поспрашиваю) может кто напишет еще)
Да конечно напишут. Как говорил один замечательный преподаватель: "Чем меньше вы знаете, тем ценнее я как специалист".


Чета лень мне читать тот код. Да и в тэги не обернут. Да и написан скучно как-то.

С нуля:
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
#include <ctime>
#include <cstdlib>
#include <iostream>
#include <stdexcept>
#include <new>
 
struct Block {
  size_t size;
  void *pointer;
  Block() : size(0), pointer(0) {}
  Block(size_t size, void *pointer) : size(size), pointer(pointer) {}
};
 
bool operator<(const Block &a, const Block &b) {
  return a.size < b.size;
}
 
class BlockList {
 public:
  BlockList() : base() {}
  virtual ~BlockList() {
    clear();
  }
  void put(const Block &block) {
    NodeBase *node = lowerBound(block.size);
    new Node(node->prev, node, block);
  }
  Block get(size_t size) {
    NodeBase *node = lowerBound(size);
    if (node != &base) {
      Block result = ((Node*)node)->data;
      delete node;
      return result;
    }
    throw std::bad_alloc();
  }
  bool isEmpty() const { return base.next == &base; }
  void clear() {
    while (!isEmpty()) {
      delete base.next;
    }
  }
  friend std::ostream &operator<<(std::ostream &stream, const BlockList &b) {
    stream << "BlockList{[";
    NodeBase *node = b.base.next;
    while (node != &(b.base)) {
      stream << ((Node*)node)->data.size;
      if (node->next != &(b.base)) {
        stream << ",";
      }
      node = node->next;
    }
    return stream << "]}";
  }
 private:
  BlockList(const BlockList&);
  BlockList &operator=(const BlockList&);
  struct NodeBase {
    NodeBase *prev, *next;
    NodeBase() : prev(this), next(this) {}
    NodeBase(NodeBase *prev, NodeBase *next) : prev(prev), next(next) {
      prev->next = next->prev = this;
    }
    virtual ~NodeBase() {
      prev->next = next;
      next->prev = prev;
    }
  };
  struct Node : public NodeBase {
    Block data;
    Node(NodeBase *prev, NodeBase *next, const Block &data)
      : NodeBase(prev, next), data(data) {}
  };
  // возвращает позицию первого блока, не меньше указанного
  NodeBase *lowerBound(size_t size) {
    NodeBase *result = base.next;
    while (result != &base && ((Node*)result)->data.size < size) {
      result = result->next;
    }
    return result;
  }
  NodeBase base;
};
 
int main(int argc, char *argv[]) {
  srand(time(0));
  
  BlockList heap;
  
  for (int i = 0; i < 15; ++i) {
    heap.put(Block(rand() % 10 + 1, 0));
  }
  
  std::cout << heap << std::endl;
  
  for (int i = 0; i < 25; ++i) {
    Block block;
    size_t size = rand() % 13;
    std::cout << "Trying to allocate " << size << " bytes: ";
    try {
      block = heap.get(size);
      std::cout << "allocated block with " << block.size << " bytes.";
      if (!(rand() % 5)) {
        std::cout << " Returning.";
        heap.put(block);
      }
    } catch (std::bad_alloc &e) {
      std::cout << "could not allocate.";
    }
    std::cout << std::endl;
  }
  
  std::cout << "Leftover:" << std::endl << heap << std::endl;
  
  return 0;
};


Вернуться к обсуждению:
Выручайте! Нужно переделать прогу под двусвязный список.ничего не понимаю) C++
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.04.2013, 13:55
Готовые ответы и решения:

Как переделать эту прогу в шаблон классов "Двусвязный список" произвольных элементов
#include &lt;iostream.h&gt; #include &lt;stdlib.h&gt;2 #include &lt;conio.h&gt; using namespace std; struct...

программа есть но пока ничего не понимаю там,выручайте
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics,...

Переделать двусвязный список в двусвязный кольцевой
Здравствуйте, у меня єсть двусвязный список однако он не кольцевой! как это запрограммировать? и...

Переделать на Двусвязный список
#include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;string.h&gt; #include &lt;iomanip&gt; #include...

23
22.04.2013, 13:55
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.04.2013, 13:55
Помогаю со студенческими работами здесь

Переделать двусвязный список в односвязный список
//--------------------------------------------------------------------------- #include &lt;stdio.h&gt;...

Переделать программу с односвязного на двусвязный список
Помогите переделать програмку с односв'язного на двосв'язний список. Условие задачи было такое:...

Как переделать двусвязный список в циклический c++
Как переделать двусвязный список в циклический c++

Как переделать линейный двусвязный список в циклический?
Нужна помощь с данным двусвязным списком, как переделать его в циклический? #include &quot;stdafx.h&quot;...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru