Помощь студентуФайлылабы на Паскалеработа со списками Паскаль
01 Февраля 2026, Воскресенье
19:56
>>> Качественная веб-разработка <<<
19:56
Меню сайта
>Г Л А В Н А Я

>Ф А Й Л Ы

>С Т А Т Ь И

>Р Е Ф Е Р А Т Ы

>Ф О Р У М

>О Т З Ы В Ы

>Т Е С Т Ы

>F l a s h И Г Р Ы

>Ф О Т О Ш О П


Советуем...
Механика, колебания и волны, молекулярная физика - Савельев И.В.
Очень хороший учебник по физике, все подробно и понятно описывается, все темы по Механике, Колебаниям и Молекулярке. Советую качать тем, кто начал учить только за день до экзамена.

Ссылка открывается в новом окне установленного размера
Ссылка открывается в новом окне установленного размера. Подойдет для входа на сайт или удобной для пользователя регистрации.

Работа с Турбо Паскалем #1/2
Хороший учебник по языку Паскаль. Очень много полезной информации, все описывается без лишних слов.

Вторая часть.

Карта для контры (Counter Strike 1.6)
Карту делал сам. Ваши комментарии помогут исправить ошибки на карте. Ну карта что-то типа меншен.


Опрос
Зацените дизайн сайта
Всего ответов: 382

Сотрудничество
Поставьте себе на сайт и сообщите мне


код кнопки:



Файлы
Главная » Файлы » Учебные материалы » лабы на Паскале

работа со списками Паскаль

Название: работа со списками Паскаль
Категория: лабы на Паскале
Формат файла: *.pas
Размер: 2.8 Kb
Просмотров: 7242
Загрузок: 2043

Дата добавления: 01 Июня 2009, 12:23
Теги:преобразовать, информатика, Программирование, списки, процедуры, паскаль, функции, ссылка, готовые лабы, индексы
Поделиться:
Скачать:

Скачать работа со списками Паскаль бесплатно и без регистрации


Внимание! Если ссылка не работает, файл не найден или просто возникают какие-либо вопросы, напишите об этом, пожалуйста, мне на почту: xdypx@yandex.ru. В письме достаточно указать ссылку на эту страницу и описание проблемы или свой вопрос.


Описание:
Задание:



Дан
текстовый файл с изображением целых чисел, которые необходимо переписать в
список L1. Удалить
из списка все числа – палиндромы, вставив вместо них
самое минимальное число всего списка.­



Пример:

исходный список:'127 12321 67897 45654 10001 17 9856 93456 767 984'

преобразованный
в список: '127 17 67897 17 17 9856 93456 17 984'.

Исходный код:
Program spiski;
uses crt;
Type
TElement=^element;
 Element=record
 a:string;
 next:TElement;
End;

var Q,last,head:TElement; m,j,c:integer; mas:string[11];

function polindrom(sl:string):boolean;
var cl:string; i,j:integer; b:boolean;
Begin
  polindrom:=false;
  b:=true;
  j:=1; i:=length(sl);
  while (j<i) and b do
   Begin
    if sl[i]<>sl[j] then b:=false;
    j:=j+1;
    i:=i-1;
   End;
   polindrom:=b;
End;

procedure proverka(filename:string);
var f:text;
Begin
 {$I-}
  Assign(f,filename);
  reset(f);
 {$I+}
  if ioresult<>0 then Begin textcolor(204); writeln('ERROR FILE!!!'); readln; halt; End
  else writeln('fail "',filename,'" otkrit');
End;

procedure printfile(filename:string);
var f:text;
    a:string; b:integer;
 Begin
 Assign(f,filename);
 reset(f);
 while not eof(f) do
  Begin
   readln(f,a);
   writeln(a);
  End;
 close(f);
End;

{====sozdanie spiska====}

procedure createhead(var head,last:TElement);
Begin
 new(head);
 head^.next:=nil;
 last:=head;
End;

{====zapolnenie spiska=====}

Procedure add(var last:TElement; k:string);
var Q:TElement;
Begin
  new(Q);
   Q^.a:=k;
   Q^.next:=nil;
   last^.next:=Q;
   Last:=Q;
 End;

{====vivod na ekran spiska====}

procedure print(head:TElement);
var Q:TElement;  l:integer;
Begin
 Q:=head^.next;
 while Q<>nil do
  Begin
  if polindrom(Q^.a)=true then Begin textcolor(5); write(Q^.a,'-->'); End else Begin textcolor(9); write(Q^.a,'-->'); End;
   Q:=Q^.next;
  End;
 writeln;
End;

{====vipoln9Iet...====}

procedure transfer(head:TElement; filename:string);
var Q:TElement; F:text; st,sl:string; l:integer;

Begin
 new(Q);
 Assign(f,filename);
 reset(f);
 st:='';
 sl:='';
 Q:=head^.next;
 while not eof(f) do
  Begin
   readln(f,st);
    for l:=1 to length(st) do
     Begin
      if st[l]<>' ' then sl:=sl+st[l] else
       Begin
        Add(last,sl);
        sl:='';
       End;
     End;
  End;
close(F);
End;

procedure poisk(head:TElement);
 var Q:TElement; sl:string; b,code,min:integer;
Begin
{poisk minimalnogo}
 Q:=head^.next;
 sl:=Q^.a;
 val(sl,b,code);
 min:=b;
 Q:=Q^.next;
  while Q^.next<>nil do
  Begin
   sl:=Q^.a;
   val(sl,b,code);
   if b<min then min:=b;
   Q:=Q^.next;
  End;
 writeln('min= ',min);
 Str(min,sl);
 
 {zamena polindromov}
 Q:=head^.next;
 while Q<>nil do
  Begin
   if polindrom(Q^.a)=true then Q^.a:=sl;
   Q:=Q^.next;
  End;
 
End;

BEGIN
clrscr;


textBackground(14);
textcolor(210);
proverka('g:\in.txt');
textBackground(0);
textcolor(12);
writeln('vivod faila: ');
textcolor(14);
printfile('g:\in.txt');
createhead(head,last);
transfer(head,'g:\in.txt');
textcolor(12);
writeln('vivod spiska: ');
print(head);
poisk(head);
textcolor(12);
writeln('vivod izmenennogo spiska: ');
textcolor(1);
print(head);
writeln;
readln;
END.

Комментарии:
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Разделы новостей
Образование [4]
лабы на Паскале [11]
Шпоры [10]
Учебники [19]
Лабы по физике [3]
Лабы по С++ [7]

Статистика

Яндекс.Метрика


Онлайн всего: 1
Гостей: 1
Пользователей: 0

Все пользователи

Яндекс цитирования Rambler's Top100

Сайт работает с 2008 года