Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.02.2014, 15:02   #1
Dina 85
Пользователь
 
Регистрация: 09.10.2012
Сообщений: 49
Смущение Динамические структуры(список) Turbo Pascal

помогите пожалуйста чтобы программа уже заработала
Задача была такая, Создать список записей, содержащих сведения об учениках. Структура записи имеет следующий вид:
type PNT=^S;
LerBook = record ученик
Fam: String [20]; фамилия ученика
Year: 1..10; год обучения
Ch: Char; буква (от А до К)
next: PNT;
end;
var rec, beg, endd, current: PNT;
Выяснить, имеются ли однофамильцы в каком-нибудь классе

Примерный код есть, но нужно исправить ошибки, потому что я уже не знаю
Код:
Program PR5;
Uses crt;
type PNT=^S;
LerBook = record
Fam: String [20];
Year: 1..10;
Ch: Char;
next: PNT;
end;
var rec, beg, endd, current: PNT;im:string[20];
Procedure  CreateLL(var  pBegin, pEnd: PComp; var Fam: String [20] );
begin
New(pBegin);
pBegin^.pNext:=NIL; pBegin^.Fam:=current;
pEnd:=pBegin
end;
Procedure AddLL(var  pEnd: PComp; var current: PNT );
var  pAux: PComp;
begin
New(pAux);
pAux^.pNext:=NIL; pEnd^.pNext:=pAux; pEnd:=pAux;
 pEnd^.Fam:=current;
 end;
procedure okno;
begin
textbackground(0);
clrscr;
window(2,2,79,24);
textbackground(11);
textcolor(15);
clrscr;
end;
Begin
clrscr;
okno;
writeln('|    God obychenia   |  Familia  |');
writeln(' ---------------------------------');
for rec:=1 to n do
                begin
                beg:=rec+2;
                write(' ');
                gotoXY(15,beg); readln(LerBook[i].Fam);
                gotoXY(27,beg); readln(LerBook[i].Year);
 
                end;
End;
BEGIN
write('Vvedite familiy: ');readln(im);
endd:=0;
for rec:=1 to n do begin
                 if ord(im[1])=ord(LerBook[rec].Fam[1]) then
                 if ord(im[2])=ord(LerBook[rec].Fam[2]) then
                 if ord(im[3])=ord(LerBook[rec].Fam[3]) then
                 endd:=endd+1;
                 end;
writeln('kolichestvo odnofamilcev, 'im', = ',endd);
pAux:=pBegin;
repeat
writeln(pAux^.Fam); pAux:=pAux^.pNext;
until pAux=NIL
readln;
END.
Dina 85 вне форума Ответить с цитированием
Старый 09.02.2014, 17:50   #2
Son Of Pain
Участник клуба
 
Регистрация: 23.12.2010
Сообщений: 1,129
По умолчанию

Не похоже, чтобы этот код писал один человек. Смахивает на бездумный копипаст кусков из разных источников )
Son Of Pain вне форума Ответить с цитированием
Старый 09.02.2014, 17:52   #3
Dina 85
Пользователь
 
Регистрация: 09.10.2012
Сообщений: 49
По умолчанию

можно и так сказать, делалось по примеру, поэтому не складно и ошибки
Dina 85 вне форума Ответить с цитированием
Старый 09.02.2014, 18:41   #4
Son Of Pain
Участник клуба
 
Регистрация: 23.12.2010
Сообщений: 1,129
По умолчанию

Ну да. ) В одном примере было написано pnt, в другом LerBook, в третьем PComp, в четвертом s. В программировании нельзя просто так слепить паззл из левых кусков - надо хотя бы минимально понимать, как оно работает.
Son Of Pain вне форума Ответить с цитированием
Старый 09.02.2014, 18:47   #5
Dina 85
Пользователь
 
Регистрация: 09.10.2012
Сообщений: 49
По умолчанию

Это да, но я в мелких программах еще более менее понимаю как и что с этими указателями и списками, а вот в этой запутанно
Dina 85 вне форума Ответить с цитированием
Старый 09.02.2014, 19:05   #6
Son Of Pain
Участник клуба
 
Регистрация: 23.12.2010
Сообщений: 1,129
По умолчанию

Начни с мелкой программы ) сделай структуру и функции добавления и удаления записей из списка. А потом уже можно будет об остальном думать.
Son Of Pain вне форума Ответить с цитированием
Старый 09.02.2014, 20:07   #7
Dina 85
Пользователь
 
Регистрация: 09.10.2012
Сообщений: 49
По умолчанию

Да я бы еще посидела, но котелок не варит, завтра уже сдавать нужно работу, а это затянется еще на пол дня, кто-нибудь может поправить код, кто разбирается в динамических структурах, кому не сложно
Dina 85 вне форума Ответить с цитированием
Старый 09.02.2014, 20:14   #8
Son Of Pain
Участник клуба
 
Регистрация: 23.12.2010
Сообщений: 1,129
По умолчанию

Quilibet fortunae suae faber )
Son Of Pain вне форума Ответить с цитированием
Старый 09.02.2014, 20:25   #9
Dina 85
Пользователь
 
Регистрация: 09.10.2012
Сообщений: 49
По умолчанию

Errare humanum est
Dina 85 вне форума Ответить с цитированием
Старый 09.02.2014, 20:51   #10
Son Of Pain
Участник клуба
 
Регистрация: 23.12.2010
Сообщений: 1,129
По умолчанию

Errare humanum est, stultum est in errore perseverare
Son Of Pain вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамические структуры данных в Delphi.Список. JonnyFletcher Помощь студентам 6 20.05.2013 11:51
Динамические структуры, Pascal Live1SMR Помощь студентам 2 23.04.2013 21:30
Список (динамические структуры), выведение на экран molekyla Паскаль, Turbo Pascal, PascalABC.NET 4 21.03.2011 09:14
Динамические структуры (линейный список). Си Zaya007 Помощь студентам 4 12.03.2009 18:14