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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.03.2009, 15:35   #1
phantom4eg
Пользователь
 
Регистрация: 04.03.2009
Сообщений: 39
Печаль Описание процедуры

Ребят помогите разобраться..
Описать процедуру, которая :
а) проверяет упорядочены ли элементы списка по алфавиту (элементы типа = 'а'..'z');
б) находит сумму первого и последнего элементов списка (элементы типа Real);
phantom4eg вне форума Ответить с цитированием
Старый 17.03.2009, 15:36   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Что такое "список" в твоем понимании.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.03.2009, 15:41   #3
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

ИМХО делать лучше функции

Код:
const n=10;
type  TComp=array[1..n] of char;

var x:TComp;
    i:integer;
    flag:boolean;
procedure Sort(a:TComp; var res:boolean);
var i:integer;
begin
res:=true;
for i:=1 to n-1 do
 if a[i]>a[i+1] then res:=false;
end;

begin
for i:=1 to n do
 x[i]:=chr(random(26)+97);
Sort(x,flag);
if flag then writeln('Sort')
   else writeln('No');
end.
P.S. Сорри, не обратил внимания, что нужен список и сделал на массивах

Тогда посмотри эту тему
Нормальное состояние техники - нерабочее, все остальное частный случай.

Последний раз редактировалось alex_fcsm; 17.03.2009 в 15:45.
alex_fcsm вне форума Ответить с цитированием
Старый 17.03.2009, 15:41   #4
phantom4eg
Пользователь
 
Регистрация: 04.03.2009
Сообщений: 39
По умолчанию

Как я понял на лекции это структура данных где каждый элемет связан со следующим посредством указателя...
phantom4eg вне форума Ответить с цитированием
Старый 17.03.2009, 15:58   #5
phantom4eg
Пользователь
 
Регистрация: 04.03.2009
Сообщений: 39
По умолчанию

Ребят... Извините за наглость я просто действительно ничего не соображаю в этом.. завтра уже сдать надо... выручет может кто нибудь.. у нас это не профилирующий предмет.. сдать-то надо
phantom4eg вне форума Ответить с цитированием
Старый 17.03.2009, 16:12   #6
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Код:
uses crt;

type TList = ^Node;
      node=record
        x:char;
        next:TList;
      end;

var head,k:TList;
    s:string;
    f:boolean;
    x:char;
    i,n:integer;

procedure Insert(var l,m:TList;x:char);
var cur:TList;

begin
  cur:=l;
while cur^.next<>nil do
 cur :=cur^.next;
 cur^.next:=m;
 m^.next:=nil;
 m^.x:=x;
end;

procedure Print;
var cur:TList;
begin
cur:=head^.next;
while cur<> nil do
begin
 write(cur^.x);
 cur:=cur^.next;
end;
end;

procedure Look(var f:boolean);

var cur:TList;
    s:char;
begin
  f:=true;
  cur :=head^.next;
  s:=head^.x;
  while cur<>nil do
   begin
    if cur^.x<s then f:=false;
    s:=cur^.x;
    cur:=cur^.next;
   end;

end;

begin
writeln('Сколько символов?');
readln(n);
clrscr;
f:=false;
New(head);
head^.next:=nil;
head^.x:=#3;
for i:=1 to n do
  begin
  read(x);
  new(k);
  Insert(head,k,x);
 end;
Look(f);
if f then writeln('Sort')
   else writeln('NO');
Print;
end.
Код:
uses crt;

type TList = ^Node;
      node=record
        x:real;
        next:TList;
      end;

var head,k:TList;
    x:real;
    i,n:integer;

procedure Insert(var l,m:TList;x:real);
var cur:TList;

begin
  cur:=l;
while cur^.next<>nil do
 cur :=cur^.next;
 cur^.next:=m;
 m^.next:=nil;
 m^.x:=x;
end;

procedure Print;
var cur:TList;
begin
cur:=head^.next;
while cur<> nil do
begin
 write(cur^.x);
 cur:=cur^.next;
end;
end;

procedure Look;

var cur:TList;
    s:real;
begin
  cur :=head^.next;
  s:=cur^.x;
  while cur<>nil do
   begin
   if cur^.next=nil then writeln('Сумма:',s+cur^.x);
    cur:=cur^.next;
   end;
end;

begin
writeln('Сколько чисел?');
readln(n);
clrscr;
New(head);
head^.next:=nil;
head^.x:=0;
for i:=1 to n do
  begin
  read(x);
  new(k);
  Insert(head,k,x);
 end;
Look;
Print;
end.
Нормальное состояние техники - нерабочее, все остальное частный случай.

Последний раз редактировалось alex_fcsm; 17.03.2009 в 16:26.
alex_fcsm вне форума Ответить с цитированием
Старый 17.03.2009, 18:55   #7
phantom4eg
Пользователь
 
Регистрация: 04.03.2009
Сообщений: 39
По умолчанию

Спасибо громаднейшее выручил
phantom4eg вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
описание свойств webbrowser Анастасия123456789 Работа с сетью в Delphi 10 25.12.2011 14:41
Описание к файлам Naposaram PHP 4 09.02.2009 09:24
Глюк(описание внутри) Stellvertreter Общие вопросы C/C++ 6 16.10.2008 19:31
Запуск процедуры из процедуры с дополнением 1sal1 Общие вопросы Delphi 3 06.10.2008 21:54