Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 1
Регистрация: 23.10.2011
Сообщений: 23
1

Односвязный список(помогите немного исправить)

09.04.2012, 12:12. Показов 364. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задание: из списка удалить элементы меньше заданного.
Наваял что-то, но нифига не получается)

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
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>
#include <iostream>
#include <cstdlib>
#define N 10
using namespace std;
 
struct list
{
int number;
list *next;
list (int n=0, list*p=NULL)
{number=n;
next=p;
}
};
list *Add_host(list*head, int num)
{
list *q=new list(num),*t=head;
if (head==NULL)return q;
while (t->next!=NULL)t=t->next;
t->next=q;
return head;
}
list *Build()
{
char str[N];
list *head=NULL;
cout<<"\n sozdaem spisok(enter-konec)\n";
while (1)
{
gets(str);
if (str[0]=='\0') break;
head=Add_host(head, atoi(str));
}
return head;
}
void Print (list *head)
{
cout<<"\n poluchenni spisok\n";
while (head!=NULL)
{
cout<<head->number<<"->";
head=head->next;
}
}
 
list * Delete_value(list *first, int val)
{
list *t=first;
if(first==NULL)
{puts("No value");
return NULL;
}
if(first ->number<=val)
{
    first=first->next;
    delete t;
    cout<<first->next;
    return first;
}
while(t->next !=NULL)
    if(t->next->number<=val)
        {
            tmp=t->next;
            t->next=t->next->next;
            delete *tmp;
            cout<<t->next;
            return first;
    }
    else t=t->next;
    puts("no value");
    return first;
}
void main()
{
list*head;
int a,val;
cout<<"programma ydalayet elementi spiska men'she zadannogo\n";
head=Build();
Print(head);
cout<<"\n vvedite element  spiska: ";
cin>>val;
Delete_value(head, val);
if (val!=0)
{
cout<<"element naiden";
Print(head);
}
system("pause");
 
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.04.2012, 12:12
Ответы с готовыми решениями:

Помогите организовать односвязный список!
Ребят, помогите пожалуйста организовать односвязный список и вывести его на экран... Вот пример той...

Сформировать список из 10 книг, используя динамическую структуру данных односвязный список
друзья спасайте Сформировать список из 10 книг, используя динамическую структуру данных...

Создать односвязный список, затем вывести весь список в ListBox
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; class List { public: ...

Создать класс «Квартира», в котором список комнат реализовать как односвязный список
Добрый день,написал фот такой клас по заданию:Создать класс «Квартира», в котором список комнат...

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

Составить односвязный список на основе класса, объекты которого будут формировать этот список
Составить односвязный список на основе класса, объекты которого будут формировать этот список. В...

Односвязный список: заносить в новый список элементы исходного, которые больше заданного значения
Можете пожалуйста помочь в решении проблемы не. Не могу создать функцию которая будет с созданного...

Заменить массив структур на односвязный список, и на двусвязный список
Взять текст задания и заменить массив структур на односвязный список, и на двусвязный список ...

Создать двусвязный список групп факультета, где каждая группа представляет собой односвязный список студентов
Задание: создайте двусвязный список групп факультета. Каждая группа представляет собой односвязный...

Сформировать односвязный список так, чтобы после вставки каждого нового значения, список оставался отсортированным по возрастанию
сформировать односвязный список целочисл знач, таким образом чтобы после вставки каждого нового...

Задали односвязный линейный список с целыми числами. Создать новый список, который содержит элементы заданного списка в обратном порядке
Задали односвязный линейный список с целыми числами. Создать новый список, который содержит...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru