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

Pascal ABC

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

Ошибка Assigned (Que) - Pascal ABC

26.05.2015, 21:49. Просмотров 259. Ответов 3
Метки нет (Все метки)

ДОБРОГО ВРЕМЕНИ СУТОК)
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
65
66
67
68
69
70
71
type PRec = ^TRec; { Тип указатель на запись} 
TRec = record { Тип запись для хранения связанных строк} 
mStr : string[31]; { хранимая строка(имя) } 
mNext : PRec; { указатель на следующую запись} 
end; 
{ роцедура размещения строки в очереди} 
procedure PutInQue(var Que: PRec; const arg: string); 
var p: PRec; 
begin 
New(p); { создаем новую переменную-запись} 
p^.mStr:= arg; { размещаем строку} 
{ размещаем указатель в голове очереди} 
p^.mNext:= Que; { указатель на предыдущую запись} 
Que:=p; { текущая запись в голове очереди} 
end; 
{ Извлечение строки из начала очереди(из конца списка) } 
function GetFromQue(var Que: PRec; var arg: string): boolean; 
var p1, p2: PRec; 
begin 
GetFromQue:= Assigned(Que);  
if Assigned(Que) then begin 
{ оиск первого элемента очереди} 
p1:= Que; p2:=p1; 
{ если в очереди только один элемент, цикл не выполнится ни разу! } 
while Assigned(p1^.mNext) do begin 
p2:=p1; { текущий} 
p1:=p1^.mNext; { следующий} 
end; 
{ теперьp1 указывает на первый элемент очереди,  аp2 – на второй
(или на тот-же самый, если в очереди всего один элемент) } 
arg:= p1^.mStr;    { извлекаем данные} 
if p1=p2      { если в очереди был один элемент... } 
then Que:= nil  { очередь стала пустой} 
else p2^.mNext:= nil;  { а иначе отцепляем первый элемент} 
Dispose(p1);    { освобождаем память первого элемента} 
end; 
end; 
Глава 56
И снова очереди, и снова стеки… 
448 
var 
Boys : PRec; { очередь мальчиков} 
Girls : PRec; { очередь девочек} 
S1, S2 : String; { строки с именами} 
Boy: boolean; { признак чтения имени мальчика} 
F_In, F_Out : Text; { входной и выходной файла} 
begin  {--- Главная программа---} 
{ Очищаем очереди мальчиков и девочек} 
Boys := nil ; { очередь мальчиков} 
Girls := nil; { очередь девочек} 
Assign(F_In, 'P_56_2.in'); Reset(F_In); 
Assign(F_Out,'P_56_2.out'); Rewrite(F_Out); 
{ Цикл обработки входного потока} 
while not Eof(F_In) do begin 
Readln(F_In, S1); { выбираем имя из входного потока} 
Boy:= S1[1]<>' '; { строки с именами девочек начинаются с пробела! } 
while S1[1]=' ' do Delete(S1,1,1); 
if Boy 
then begin { если это мальчик...} 
if GetFromQue(Girls, S2) { если в очереди есть девочка} 
then Writeln(F_Out,S1+' + '+S2) { пару-> в выходной поток} 
else PutInQue(Boys, S1); { а иначе мальчика в очередь} 
end 
else begin { а если это девочка...} 
if GetFromQue(Boys, S2) { если в очереди есть мальчик} 
then Writeln(F_Out,S2+' + '+S1) { пару-> в выходной поток} 
else PutInQue(Girls, S1); { а иначе девочку в очередь} 
end 
end; 
Close(F_In); Close(F_Out); 
end.
ошибка Assigned(Que)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.05.2015, 21:49
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Ошибка Assigned (Que) (Pascal ABC):

Ошибка: left side cannot be assigned to - Delphi
Помогите пожалуйста правильно составить программу, которая заданные числа вводит в массив, увеличивает каждый элемент в 3 раза, а затем...

Ошибка: left side cannot be assigned to - Delphi
Вот код кнопки: procedure TForm1.BitBtn1Click(Sender: TObject); begin Memo1.Text:=IntToStr(w); Memo2.Text:=IntToStr(e); ...

Ошибка Left side cannot be assigned to - Delphi
После компиляции выдает вот эту ошибку &quot; Left side cannot be assigned to&quot; в следующих строках with adDraw.Display do begin width...

Ошибка присвоения - Left side cannot be assigned to - Delphi БД
Не получается вычислить мое &quot;ИТОГО&quot;. Понимаю, что, возможно, он не понимает, что это всего одно поле, а нескольким полям присвоить что-то...

Ошибка UnassignedReferenceException: The variable prefab of deed has not been assigned - Unity, Unity3D
Я не понимаю, что ему не нравится переменная prefab. using System.Collections; using System.Collections.Generic; using...

Ошибка в коде: somestruct.e must be fully assigned before control is returned to te caller - C#
а что за ошибка,никак не могу понять :-| using System; using System.Collections.Generic; using System.Linq; using System.Text; ...

3
JuriiMW
1821 / 1001 / 806
Регистрация: 10.12.2014
Сообщений: 3,735
27.05.2015, 06:54 #2
Цитата Сообщение от Mafian Посмотреть сообщение
Assigned(Que)
замени на
Pascal
1
Que = nil
1
ФедосеевПавел
Модератор
3392 / 1889 / 754
Регистрация: 01.02.2015
Сообщений: 6,426
27.05.2015, 07:37 #3
Немножко не так (по мнемонике "assigned" - "назначенный")
Pascal
1
Que <> nil
0
JuriiMW
1821 / 1001 / 806
Регистрация: 10.12.2014
Сообщений: 3,735
27.05.2015, 08:28 #4
ФедосеевПавел, сорри! Точно!

Delphi функция Assigned проверяет является ли указатель nil. Если не nil, то возвращает True; если nil, то False.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.05.2015, 08:28
Привет! Вот еще темы с ответами:

Ошибка Genymotion. For an unknown reason, VirtualBox DHCP has not assigned an IP address to virtual device - Программирование Android
Eclipse + Genymotion (на базе VirtualBox). Удалил, а потом установил Java. Удалил android sdk(с Eclipse). Затем скачал заново(установил все...

Ошибка: "Value assigned to 'x' never used" что это за ошибка? - Delphi
(Заголовок)

Ошибка при создании класса "Field is never assigned to, and will always have its default value" - C#
Добрый день! Помогите понять причину возникновения ошибки, а так же подскажите, плз, способ ее устранения. Ошибка: Warning 1 Field...

Qt 5.0.2, Visual Studio 2010 и ошибка "There's no Qt version assigned to this project for platform x64" - C++ Qt
Собственно вопрос, хотел их связать, скачал: qt-windows-opensource-5.0.2-msvc2012_64-x64-offline qt-vs-addin-1.2.1-opensource ...


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

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

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