![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Zorka |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 2 Пол: Женский Репутация: ![]() ![]() ![]() |
главная программа точно неверная..но как не разбиралась...не знаю как её написать((
Условие задачки: При помощи стэка проверить действительно ли строка символов симметрична относительно середины. Признак середины - цифра 0. вот то, что сама пыталась написать: program lab13;
zv=^pointer;
pointer=record
elem: char;
next: zv
end;
var
k,sym: char;
s: zv;
b: boolean;
procedure vstek(var st: zv; buk: char);
var Q: zv;
begin
new(Q);
Q^.elem:=buk;
Q^.next:=st;
st:=Q
end;
procedure vdstek(var st: zv; var A: char; var L: boolean);
var Q: zv;
begin
l:=true;
if st=nil then L:=false
else
begin
A:=st^.elem;
Q:=st;
st:=st^.next;
dispose(Q);
end
end;
begin {golovna programa}
s:=nil;
writeln('vvedu sumvolu');
read(sym);
vstek(s,sym);
b:=true;
while (sym<>'.') and b do
begin
if sym='0' then vdstek(s,k,b);
read(sym);
end;
if (S=nil) and b then
writeln('rjadok sumetruchnuj')
else
writeln('ne sum');
end.
|
![]() ![]() |
![]() |
Текстовая версия | 28.07.2025 20:33 |