37807

Вказівники

Лабораторная работа

Информатика, кибернетика и программирование

Мета: навчитися програмувати з використанням вказівників та динамічних змінних, створювати та опрацьовувати черги та стеки.

Украинкский

2013-09-25

2.14 MB

1 чел.

3

Міністерство освіти і науки України

Хмельницький національний університет

Кафедра системного програмування

Лабораторна робота №1

з програмування

на тему:

«Вказівники»

Виконав:

Студент групи КІ-10-1

Ноль М.Г.

Перевірив:

Мостовий С.В.

Хмельницький

2011

Лабораторна робота №1

Тема: вказівники.

Мета: навчитися програмувати з використанням вказівників та динамічних змінних,  створювати та опрацьовувати черги та стеки.

Завдання

Дано число D і «покажчики» P1 й P2 на початок і кінець черги (якщо черга порожня, то P1=P2=nil). Записати елемент зі значенням  D у кінець черги та вивести нові адреси початку і кінця черги.

uses crt;

type vkaz=^cherga;

       cherga=record

           num:integer;

           next:vkaz

           end;

procedure add(var a:vkaz);

   var temp:vkaz;

   begin

   new(temp);

   temp^.next:=a;

   temp^.num:=random(100);

   a:=temp;

   end;

procedure addnew(var a:vkaz; D:integer);

   var temp:vkaz;

   begin

   new(temp);

   temp^.next:=a;

   temp^.num:=D;

   a:=temp;

   end;

function tail(a:vkaz):vkaz;

   begin

   while a<>nil do

       begin

       tail:=a;

       a:=a^.next;

       end;

   end;

procedure create(var a,p1,p2:vkaz; var n:integer);

   var i:integer;

   begin

   write('vvedit kilkist chysel: ');

   readln(n);

   if n<>0 then

       begin

       for i:=1 to n do

           begin

           add(a); write(a^.num,' ');

           if i=1 then p1:=a;

           a:=a^.next;

           end;

        p2:=tail(a);

       writeln;

       writeln('pochatok: ',seg(p1^),ofs(p1^));

       writeln('kinets: ',seg(p2^),ofs(p2^));

       end

       else writeln('pochatok i kinets = NIL');

   end;

procedure newP(var a,p1,p2:vkaz; n:integer);

    begin

    if n=0 then p1:=a;

    p2:=tail(a);

    writeln('pochatok: ',seg(p1^),ofs(p1^));

    writeln('kinets: ',seg(p2^),ofs(p2^));

    end;

procedure free(var a:vkaz; p1:vkaz);

    var temp:vkaz;

    begin  a:=p1;

    while a<>nil do

        begin

       temp:=a;

       a:=a^.next;

       dispose(temp);

       end;

    end;

   var el,p1,p2:vkaz; n,d:integer;

begin clrscr; randomize;

create(el,p1,p2,n);

write('vvedit chyslo D: ');  readln(d);

addnew(el,d);

newP(el,p1,p2,n);

free(el,p1);

repeat until keypressed

end.

Висновок.  Виконавши лабораторну роботу, я навчився працювати з вказівниками та динамічними змінними, створювати черги та додавати нові елементи, виділяти пам'ять для динамічних змінних та звільняти її, а також виводити адреси початку та кінця черги.


 

А также другие работы, которые могут Вас заинтересовать

40015. Оценка текущего состояния предприятия 311.5 KB
  Общие сведения о продукции предприятия. Расчет структуры выпуска продукции предприятия. Анализ выпуска товарной продукции. Факторный анализ выпуска товарной продукции.
40016. Анализ финансовых результатов деятельности предприятия 626 KB
  Выводы по финансовому состоянию ориентируют предприятие на выбор определенной стратегии: рост удержание положения или сворачивание производства.1 Расчет основных показателей и их нормативные значения Показатели Формулы расчета Нормативные значение Показатели ликвидности предприятия Коэффициент покрытия коэффициент текущей ликвидности показывает не обеспеченность обязательств предприятия оборотными средствами стр.290 баланса стр.220 баланса стр.
40017. Анализ маркетинговой среды предприятия 150.5 KB
  Анализ финансовых результатов от реализации продукции. Высоким темпам роста российской автомобильной промышленности будет способствовать сочетание развитого внутреннего рынка и значительного экспортного потенциала продукции с высокой добавленной стоимостью. Предполагаются следующие тенденции развития автомобильной промышленности: рост товарной продукции; рост инвестиций; рост экспорта автомобильной продукции; сохранение достаточно высокого уровня рентабельности производства; стабильный рост средней заработной платы; глобализация...
40018. Анализ издержек и безубыточности производства 132 KB
  Во второй строке определяется сумма затрат согласно условию 1 при неизменных структуре выпуска продукции сумме переменных затрат и сумме постоянных затрат затраты базового периода приводятся к объему выпуска отчетного фактического периода: ЗТтпУсл1 = ∑08 bуср08 IА УПЗ∑08. абсолютных...
40019. База данных для учета информации об участниках гаражного кооператива 8.77 MB
  Аccess достаточно хорошо совместим с MS SQL Server и другими форматами баз данных. Аccess изначально представлялся как настольная база данных и в этой сфере ему трудно найти равного соперника. ccess позволяет разработать профессиональную базу данных в более короткие сроки и за меньшие деньги и вполне удовлетворить запросы заказчика. Кроме того такое решение обладает большей гибкостью настраиваемостью в него легко можно внести дополнения и изменения быстрее и дешевле чем в промышленные базы данных на основе Orcle и C.
40020. База данных «Магазин музыкальных дисков» 669 KB
  Описание исходных данных и предметной области.Разработка базы данных на базе СУБД CCESS 9 2.Обработка данных с помощью ТП EXCEL 3. Представление имеющихся в данных тенденций соотношений в виде диаграммгистограмм круговых диаграмм графиков 19 Заключение 31 Список использованных источников 32 Введение Базы данных БД составляют в настоящее время основу программного обеспечения информационных процессов входящих практически во все сферы человеческой деятельности.
40021. База данных «Бюро проката автомобилей» 2.13 MB
  Описание исходных данных и предметной области. Является основным связующим звеном всех данных других таблиц она отражает какой автомобиль был взят в аренду на какой срок какой был оставлен залог. Ниже приведена Схема данных Бюро проката автомобилей: 1. Microsoft ccess Microsoft ccess создана на основе реляционной модели базы данных и предназначена для создания быстрых эффективных баз данных применяемых в быту и бизнесе.
40022. Состав и структура автоматизированной информационной системы 32 KB
  Состав АИС Кадры Цель функционирования Объект АИС Предмет АИС Обеспечивающие подсистемы Таблица 2. Задачи решаемые АИС Кадры Первичный документ Формулировка задачи Тип задачи Функциональная подсистема Примечание Контрольные вопросы: 1.Что понимают под целью задачами АИС 2.
40023. Анализ данных в MS Excel 573 KB
  Подбор параметра Часто мы сталкиваемся с необходимостью решить то или иное уравнение например определить процентную ставку при которой предлагаемая сделка выгодна или определить скорость оборота капиталовложений. Подбор параметра как раз и является тем средством Excel которое позволяет очень просто решать эти задачи. Если значение функции может быть изменено только с помощью изменения значения одного параметра сама функция возможно зависит и от других параметров но мы не хотим или не можем изменять их значения то тогда отыскать...