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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.05.2009, 11:55   #1
breakfast
Новичок
Джуниор
 
Регистрация: 03.05.2009
Сообщений: 2
По умолчанию Программа по линейному списку, нужна помощь.

Имеется линейный список, содержащий информацию о студентах. Элементы списка определены след. образом:
1. ФИО - STRING[30]
2. № зачетной книжки - INTEGER
3. Оценки, полученные в период обучения - STRING[100] (каждый элемент символьной строки содержит одну оценку, незанятые элементы содержат пробелы)
4. Ссылка не след. элемент списка

Список упорядочен по возрастанию номеров зачетной книжки. Разработать в среде делфи модуль, обеспечивающий выдачу списка студентов, имеющих только отличные оценки.
breakfast вне форума Ответить с цитированием
Старый 03.05.2009, 17:35   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

элементарно, Ватсон!
ищите здесь готовую программу по заполнению/выводу односвязанного списка. Изменяете тип под Ваш.
Изменяете процедуру вывода списка добавив одну строчечку:
Код:
 if (Pos('1', p^.Оценки) = 0) 
       and (Pos('2', p^.Оценки)=0) 
         and (Pos('3', p^.Оценки)=0) then <Выводим данные студента>
всё.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 03.05.2009, 23:43   #3
breakfast
Новичок
Джуниор
 
Регистрация: 03.05.2009
Сообщений: 2
По умолчанию

искал, ничего не нашел( как делать слабо представляю, но надо срочно.
breakfast вне форума Ответить с цитированием
Старый 04.05.2009, 05:38   #4
He77ga
Пользователь
 
Аватар для He77ga
 
Регистрация: 14.04.2009
Сообщений: 19
По умолчанию

По-моему, должно быть что то такое.
Код:

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure FormActivate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
type
TPStudent=^TStudent;
Tstudent=record
name: string;
nomer: integer;
osenka: integer;
next:TPStudent;
end;
var
Head: TPStudent;
procedure TForm1.Button1Click(Sender: TObject);
//добавление элемента
var
node: TPStudent;///
curr: TPStudent;///
pre:  TPStudent;//
begin
new(node);
node^.name:=edit1.Text;
node^.nomer:=strtoint(edit2.text);
node^.osenka:=strtoint(edit3.Text);
curr:=head;
pre:=NIL;
while (curr<>NIL)and(node.nomer>curr^.nomer) do
begin
pre:=curr;
curr:=curr^.next;
end;
if pre =NIL
  then
  begin
  node^.next:=head;
  head:=node;
  end
   else
   begin
   node^.next:=pre^.next;
   pre^.next:=node;
   end;
 edit1.Text:='';
 edit2.Text:='';
 edit3.Text:='';  
end;

procedure TForm1.Button2Click(Sender: TObject);
//вывод 
var
curr: TPStudent;
n:integer; ///
st: string;
begin
n:=0;
st:='';
curr:=head;
while curr<>nil do
begin
n:=n+1;
if curr^.osenka=5  then
st:=st+'  '+inttostr(curr^.nomer)+'  '+curr^.name+#13;
curr:=curr^.next;
end;
 if n<>0
 then showmessage('список:'+st)
 else showmessage('пусто');
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
head:=NIL;
end;

end.

Последний раз редактировалось He77ga; 04.05.2009 в 06:20. Причина: Выделение кода
He77ga вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна программа mrgrek Фриланс 14 27.11.2011 18:58
Обратиться к впадающему списку Exo Microsoft Office Excel 9 28.11.2008 14:01
Как выбрать последнее по списку значение? CaustiC Microsoft Office Excel 2 17.11.2008 09:03
Нужна программа ryton Софт 0 19.06.2008 10:43
Переименовать файлы по списку!? jungo Microsoft Office Excel 14 19.05.2008 11:43