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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Rofl
1 / 1 / 0
Регистрация: 08.12.2010
Сообщений: 22
#1

Исправть код. Срок - до завтра. - C++

20.12.2010, 23:54. Просмотров 425. Ответов 8
Метки нет (Все метки)

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
#include <iostream>
using namespace std;
struct element
{
public:
    element *next;
    element *pred;
    int data;
};        
class Spisok
{
private:
    element* first;
    element* last;
public:
    Spisok()
    {
        element *ptr;
        element *ttd;
        ptr=new element;
        cout << "Enter 1 element:\n";
        cin >> ptr->data;
        first=ptr;
        last=ptr;
        ptr->next=NULL;
        ptr->pred=NULL;
    }
    void add()
 {
  element *ptr;
  ptr=new element;
  cin >> ptr->data;
  last->next=ptr;
  first->pred=ptr;
  ptr->next=NULL;
    last=ptr;
 }
    void see()
    {
        element *ptr;
        ptr=first;
        cout << "\n";
        while(ptr!=last)
        {
            cout << ptr->data << " ";
            ptr=ptr->next;
        }
        cout << ptr->data << " ";
    }
    void obmen()
    {
    element *ptr;
    element *ttd;
    int temp;
    ptr=first;
    ttd=last;
    while (ptr!=ttd||ptr!=ttd->pred)
    {
    temp=ptr->data;
    ptr->data=ttd->data;
    ttd->data=ptr->data;
    ptr=ptr->next;
    ttd=ttd->pred;
    }
    }   
};
 
 
int main()
{
    unsigned int n;
    Spisok spisok;
    cout << "\n";
    int key=1;
    do
    {
        cout << " How many elements?\n";
        cin >> n;
        for (unsigned short int i=0; i<n; i++)
        {
            cout << "Enter " << i+2 << " element:\n";
            spisok.add();
        }
        cout << "\nRepeat? (0-no, 1-yes)\n";
        cin >> key;
    }
    while(key);
    cout << "\n\nSpisok:\n\n";
    spisok.see();
    spisok.obmen();
    cout << "\n\nNew:\n\n";
    spisok.see();
    cout << "\n\n";
    system("pause");
    return 0;
}
Комппилятор выдаёт ошибку в ходе работы программы в этой строчке
ptr->data=ttd->data;
Нужно сделать до завтра...

Добавлено через 1 минуту
Т е компилятор просит задать ту ячейку памяти куда мы будем "записывать" указатель ttd.

Добавлено через 3 минуты
Если что ptr->data=ttd->data; это 61 сточка
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.12.2010, 23:54
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Исправть код. Срок - до завтра. (C++):

Задача срок до завтра. Без встроенных функции - Python
Create dictionary of students, which will contain dictionaries of attendance of students. Teacher should be able to enter attendance by...

Пояснить код php программы, на завтра нужно - PHP
Здравствуйте. Если не в том разделе, извините, просто тороплюсь. Такая проблема, есть программа (сайт) с базой данных. Нужно...

почему не работает ввод из файла? что нужно исправть?? - Pascal
почему не работает ввод из файла? что нужно исправть?? помогите! Program Matrix; const m=15; n=10; {размерности массивов}...

Кто может разобрать код? Завтра проверочная работа - PHP
Задали полностью разобрать код по каждой строке, помогите пожалуйста! &lt;?php header ('Content-Type: image/png'); // задаем тип...

Допишите код, пожалуйста. Завтра последняя пара перед зачетом - Turbo Pascal
Сделал 4 из 5 лабораторных. Эту никак не могу. Мне помогли с заданиями 1 и 2 Dencil и Puporev. Нужно написать код к программам 10.3 10.4...

Найти вероятность того, что а) оба прибора выдержат гарантийный срок; б) хотя бы один выдержит гарантийный срок. - Теория вероятностей
Покупатель приобрел пылесос и полотер. Вероятность того, что пылесос не выйдет из строя в течение гарантийного срока, равна 0,95, для...

8
deadlock
376 / 355 / 8
Регистрация: 14.12.2010
Сообщений: 1,265
20.12.2010, 23:56 #2
компилятор не выдает ошибок во время исполнения программы. ошибка на этапе компиляции или во время работы программы?
0
Rofl
1 / 1 / 0
Регистрация: 08.12.2010
Сообщений: 22
20.12.2010, 23:57  [ТС] #3
Извините ошибся, в процессе работы.
0
deadlock
376 / 355 / 8
Регистрация: 14.12.2010
Сообщений: 1,265
21.12.2010, 00:00 #4
а почему сначала первый элемент задается, а потом количество элементов?
1
Rofl
1 / 1 / 0
Регистрация: 08.12.2010
Сообщений: 22
21.12.2010, 00:03  [ТС] #5
Да просто))а что оно и влияет на ошибку?

Добавлено через 1 минуту
Ато просто уже не знаю, что думать=(
0
deadlock
376 / 355 / 8
Регистрация: 14.12.2010
Сообщений: 1,265
21.12.2010, 00:09 #6
да вроде нет. неправильно функция obmen() работает, выводится то на экран все верно, перестановка косячит.
1
Rofl
1 / 1 / 0
Регистрация: 08.12.2010
Сообщений: 22
21.12.2010, 00:12  [ТС] #7
ну да...ну сама перестановка вроде правильная, а как быть со вторым указателем...
0
deadlock
376 / 355 / 8
Регистрация: 14.12.2010
Сообщений: 1,265
21.12.2010, 00:35 #8
не вылетает, но чуть перестановку не докручивает, додумай, (спать пошел):
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
#include <iostream>
using namespace std;
struct element
{
public:
        element *next;
        element *pred;
        int data;
};
class Spisok
{
private:
        element* first;
        element* last;
public:
        Spisok()
        {
                element *ptr;
                element *ttd;
                ptr=new element;
            cout << "Enter 1 element:\n";
                cin >> ptr->data;
                first=ptr;
                last=ptr;
                ptr->next=NULL;
                ptr->pred=NULL;
        }
        void add()
 {
  element *ptr;
  ptr=new element;
  cin >> ptr->data;
  last->next=ptr;
  first->pred=ptr;
  ptr->next=NULL;
    last=ptr;
 }
        void see()
        {
                element *ptr;
                ptr=first;
                cout << "\n";
                while(ptr!=last)
                {
                        cout << ptr->data << " ";
                        ptr=ptr->next;
                }
                cout << ptr->data << " ";
        }
 
void obmen()
 {
  element *ptr;
  element *ttd;
  element *tmp;
  int temp;
  ptr=first;
  ttd=last;
   while (ptr<=last)
    {
      temp=ptr->data;
      ptr->data=ttd->data;
      ttd->data=temp;
      ptr=ptr->next;
      ttd=ttd->pred;
    }
 
  }
};
 
 
 
int main(int argc, char *argv[])
{
    unsigned int n;
    Spisok spisok;
    cout << "\n";
    int key=1;
    do
    {
            cout << " How many elements?\n";
            cin >> n;
            for (unsigned short int i=1; i<n; i++)
            {
                    cout << "Enter " << i+1 << " element:\n";
                    spisok.add();
            }
            cout << "\nRepeat? (0-no, 1-yes)\n";
            cin >> key;
    }
    while(key);
    cout << "\n\nSpisok:\n\n";
    spisok.see();
    spisok.obmen();
    cout << "\n\nNew:\n\n";
    spisok.see();
    cout << "\n\n";
    system("pause");
        return 0;
}
1
Rofl
1 / 1 / 0
Регистрация: 08.12.2010
Сообщений: 22
21.12.2010, 01:22  [ТС] #9
У меня всерано вылетает ошибка. =(

Добавлено через 42 минуты
Всё. Проблема решена.
0
21.12.2010, 01:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.12.2010, 01:22
Привет! Вот еще темы с ответами:

Не могли бы вы написать код этой задчи. Завтра сдавать,а ничего не получается - Java SE
На складе завода имеется некоторое количество деталей. Детали различаются материалом, назначением (комплектующие или инструменты),...

Народ завтра сдавать экзамен, нужны эти задачи. кому не сложно скиньте код ради бога - PascalABC.NET
1.С помощью программы создать текстовый файл и записать в него в качестве первой строки предложение «а это первая строка», в качестве...

Срок базы - MS Access
Добрый день. Столкнулись с такой проблемой: Есть база данных в access. При запуске на ПК база работает какое-то время (около месяца),...

Срок обучения C++ - C++
Здравствуйте! Учу C++, хочу узнать за сколько его реально можно выучить? Времени полно, могу уделять хоть целыми сутками! И можете...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru