Вопрос задан 20.07.2023 в 00:34. Предмет Информатика. Спрашивает Магомедов Сулейман.

Помогите кто знает PASCAL Сформировать очередь, элементами которого являются целые числа.

Написать процедуру Add, которая вставляет элемент в очередь и процедуру Delete, которая удаляет элемент из очереди.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Целищев Мирон.

Ответ:

program sum;  

var a, b: Double;  

begin  

Write(число a например 7 : ');  

Readln(a);  

Write('число b= например 8: ');  

Readln(b);  

Write(a, '+', b, '=', a+b) ;  

Readln;  

end.

Объяснение:

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, я помогу! Вот пример реализации очереди на языке Pascal с процедурами Add и Delete:

pascal
program QueueExample; const MaxQueueSize = 100; type Queue = record Data: array [1..MaxQueueSize] of Integer; Front, Rear: Integer; end; procedure InitializeQueue(var Q: Queue); begin Q.Front := 0; Q.Rear := 0; end; function IsEmptyQueue(const Q: Queue): Boolean; begin IsEmptyQueue := Q.Front = 0; end; function IsFullQueue(const Q: Queue): Boolean; begin IsFullQueue := (Q.Rear mod MaxQueueSize) + 1 = Q.Front; end; procedure Add(var Q: Queue; Element: Integer); begin if IsFullQueue(Q) then begin WriteLn('Queue is full. Cannot add element ', Element); Exit; end; Q.Rear := (Q.Rear mod MaxQueueSize) + 1; Q.Data[Q.Rear] := Element; if Q.Front = 0 then Q.Front := 1; end; procedure Delete(var Q: Queue); begin if IsEmptyQueue(Q) then begin WriteLn('Queue is empty. Cannot delete element.'); Exit; end; Q.Data[Q.Front] := 0; if Q.Front = Q.Rear then InitializeQueue(Q) else Q.Front := (Q.Front mod MaxQueueSize) + 1; end; procedure PrintQueue(const Q: Queue); var i: Integer; begin if IsEmptyQueue(Q) then begin WriteLn('Queue is empty.'); Exit; end; i := Q.Front; while i <> Q.Rear do begin Write(Q.Data[i], ' '); i := (i mod MaxQueueSize) + 1; end; WriteLn(Q.Data[i]); end; var MyQueue: Queue; begin InitializeQueue(MyQueue); Add(MyQueue, 10); Add(MyQueue, 20); Add(MyQueue, 30); WriteLn('Queue after adding elements:'); PrintQueue(MyQueue); Delete(MyQueue); WriteLn('Queue after deleting an element:'); PrintQueue(MyQueue); end.

Обратите внимание, что в данном примере используется кольцевая реализация очереди с фиксированным максимальным размером MaxQueueSize. Вы можете изменить MaxQueueSize на необходимое значение или использовать динамический массив, если нужно обрабатывать очередь переменного размера.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос