Помощь студентуФайлылабы на Паскалеработа со списками Паскаль
30 Января 2025, Четверг
08:44
>>> Качественная веб-разработка <<<
08:44
Меню сайта
>Г Л А В Н А Я

>Ф А Й Л Ы

>С Т А Т Ь И

>Р Е Ф Е Р А Т Ы

>Ф О Р У М

>О Т З Ы В Ы

>Т Е С Т Ы

>F l a s h И Г Р Ы

>Ф О Т О Ш О П


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

Пример:
исходный список:'127 12321 67897 45654 10001 17 9856 93456 767 984'
преобразованный в список: '127 17 67897 17 17 9856 93456 17 984'.

Сборник шпор по физике
Если Вам лень бродить по интернету или просто уже нет времени для поиска шпор по физике, то качайте этот архив. В нем Вы найдете много различных шпор, решений задач и многого другого.

Шпоры по Теории Информации (ТИ)
Шпоры по Теории Информации. Смагин А. А. , Ульяновск, Ульяновский Государственный Университет (УлГУ),  Факультет Математики и Информационных Технологий (ФМиИТ)
Нужно распечатать каждую страницу с обеих сторон листка!

Шпора по матану Интегралы, Ряды
Очень хорошая шпора по Математическому анализу. Удобно сделана: скачал, распечатал, разрезал. Почти все темы по интегралам и рядам. Делал для себя, поэтому сделана хорошо. формат .doc


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

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


код кнопки:



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

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

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

Дата добавления: 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 года