0 / 0 / 0
Регистрация: 08.12.2014
Сообщений: 2
1

Построить линейный список из входной последовательности чисел. Удалить из него все отрицательные числа

11.01.2019, 13:40. Показов 2656. Ответов 1
Метки нет (Все метки)

Построить линейный список из входной последовательности чисел. Удалить из него все отрицательные числа.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.01.2019, 13:40
Ответы с готовыми решениями:

Построить линейный список из входной последовательности чисел. Удалить из него все отрицательные числа
Выполнить задание, используя односвязные списки Построить линейный список из входной...

Построить линейный список из входной последовательности чисел. Перестроить его так, чтобы сначала стояли все четные числ
Построить линейный список из входной последовательности чисел. Перестроить его так, чтобы сначала...

Построить линейный список из входной последовательности чисел
Уважаемые программисты, помогите, пожалуйста, с кодом. Поиском эту задачу нашла только на С++, а...

Построить линейный список из входной последовательности чисел
Подскажите, как правильно решить данную задачу: построить линейный список из входной...

1
5043 / 2619 / 2343
Регистрация: 10.12.2014
Сообщений: 9,977
12.01.2019, 06:32 2
Pascal
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
type
  tList = ^pList;
  pList = record
    n : Integer;
    p, x : tList;
  end;
  
function CreateList : tList;
var
  First, Last : tList;
  i : Integer;
begin
  Randomize;
  New(First); First^.n := Random(21)-10; First^.p := nil;
  Last := First;
  for i := 2 to 10 do
    begin
      New(Last^.x); Last^.x^.p := Last; Last := Last^.x; Last^.n := Random(21)-10;
    end;
  Last^.x := nil;
  CreateList := First;
end;
 
procedure OutList(L : tList);
begin
  if L = nil then
    Write('Список пуст.')
  else
    while L <> nil do
      begin
        Write(L^.n:3); L := L^.x;
      end;
  WriteLn;
end;
 
procedure DeleteNeg(var L : tList);
var
  cur, tmp : tList;
begin
  while (L <> nil) and (L^.n < 0) do
    begin
      tmp := L; L := L^.x; L^.p := nil; Dispose(tmp);
    end;
  cur := L^.x;
  while cur <> nil do
    begin
      if cur^.n < 0 then
        begin
          tmp := cur; cur := cur^.p; cur^.x := tmp^.x;
          if tmp^.x <> nil then tmp^.x^.p := cur;
          Dispose(tmp);
        end;
      cur := cur^.x;
    end;
end;
 
var
  L : tList;
begin
  L := CreateList;
  OutList(L);
  DeleteNeg(L);
  OutList(L);
end.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.01.2019, 06:32
Помогаю со студенческими работами здесь

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

Создать односвязный список из последовательности чисел, удалить из него все простые числа
Прошу помощи, не могу понять в чем ошибка, надо создать односвязный список из последовательности...

Кольцевой односвязный список, удалить из него все отрицательные числа
Здравствуйте, необходимо решить проблему в задаче: &quot;Сформулируйте кольцевой список с вещественным...

Исправить код линейный список из входной последовательности чисел
Буду благодарен, за помощь. #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #define...


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

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

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