МЕНЮ


Фестивали и конкурсы
Семинары
Издания
О МОДНТ
Приглашения
Поздравляем

НАУЧНЫЕ РАБОТЫ


  • Инновационный менеджмент
  • Инвестиции
  • ИГП
  • Земельное право
  • Журналистика
  • Жилищное право
  • Радиоэлектроника
  • Психология
  • Программирование и комп-ры
  • Предпринимательство
  • Право
  • Политология
  • Полиграфия
  • Педагогика
  • Оккультизм и уфология
  • Начертательная геометрия
  • Бухучет управленчучет
  • Биология
  • Бизнес-план
  • Безопасность жизнедеятельности
  • Банковское дело
  • АХД экпред финансы предприятий
  • Аудит
  • Ветеринария
  • Валютные отношения
  • Бухгалтерский учет и аудит
  • Ботаника и сельское хозяйство
  • Биржевое дело
  • Банковское дело
  • Астрономия
  • Архитектура
  • Арбитражный процесс
  • Безопасность жизнедеятельности
  • Административное право
  • Авиация и космонавтика
  • Кулинария
  • Наука и техника
  • Криминология
  • Криминалистика
  • Косметология
  • Коммуникации и связь
  • Кибернетика
  • Исторические личности
  • Информатика
  • Инвестиции
  • по Зоология
  • Журналистика
  • Карта сайта
  • Отчет по лабораторной работе №1

    Отчет по лабораторной работе №1

    МОСКОВСКИЙ ИНСТИТУТ РАДИОТЕХНИКИ,

    ЭЛЕКТРОНИКИ И АВТОМАТИКИ

    (ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ)

    Отчет по лабораторной работе №1

    Программирование на языках В/У

    Студент:

    Группа:

    Москва 2003

    СОДЕРЖАНИЕ

    1 ЗАДАНИЕ 3

    2 БЛОК-СХЕМА ПРОГРАММЫ 3

    3 ТЕКСТ ПРОГРАММЫ 4

    4 ОПИСАНИЕ РАБОТЫ ПРОГРАММЫ 5

    5 РУКОВОДСТВО ОПЕРАТОРА 7

    1 ЗАДАНИЕ

    Программа должна вставить новый элемент E после первого элемента

    непустого списка L.

    2 БЛОК-СХЕМА ПРОГРАММЫ

    да

    нет

    нет

    да

    нет

    да

    3 ТЕКСТ ПРОГРАММЫ

    Program Project1;

    {$APPTYPE CONSOLE}

    Uses SysUtils;

    type

    spisok=^s;

    s=record

    i:integer;

    p:spisok; end;

    var

    n,k:word;

    E:integer;

    L,FstL,LL:spisok;

    BEGIN

    Write('Kol. Elementov L:> ');ReadLn(k);

    FOR n:=1 to k do BEGIN

    New(L); Write('L',n,' :> '); ReadLn(L^.i);

    L^.p:=nil;

    IF n=1 THEN begin FstL:=L; LL:=L; end

    ELSE begin LL^.p:=L;LL:=L; end;

    END;

    Write('Element E:> '); ReadLn(E);

    New(L); L^.i:=E; L^.p:=FstL^.p; FstL^.p:=L; L:=FstL;

    While L<>nil do begin Write(L^.i,' '); L:=L^.p; end;

    ReadLn;

    END.

    4 ОПИСАНИЕ РАБОТЫ ПРОГРАММЫ

    ТАБЛИЦА ТИПОВ, ИСПОЛЬЗУЕМЫХ ПРОГРАММОЙ

    |Имя |Тип |Назначение |

    |типа | | |

    |spisok| |Тип динамической переменной со структурой s |

    |s |record |запись, содержащая переменную типа integer (i) и|

    | | |ссылку (p) |

    ТАБЛИЦА ПЕРЕМЕННЫХ, ИСПОЛЬЗУЕМЫХ ПРОГРАММОЙ

    |Имя |Тип |Назначение |

    |n |Word |Счетчик циклов |

    |k |Word |Количество элементов в списке L |

    |E |integer |Элемент, который необходимо вставить после |

    | | |первого элемента в списке L |

    |L |spisok |Указатель, содержащий адрес произвольного |

    | | |элемента списка L |

    |FstL |spisok |Указатель, содержащий адрес первого элемента |

    | | |списка L |

    |LL |spisok |Указатель, содержащий адрес последнего элемента |

    | | |списка L |

    Вначале работы программа выводит на экран строку "Kol. Elementov L:>",

    после чего необходимо ввести значение количества элементов, которые будут

    записываться в список L. Затем происходит считывание этого значения и

    переменной k присваивается значение количества элементов списка L.

    Далее организуется цикл для ввода элементов списка L c помощью

    операторов FOR и TO. Начиная с n, принимающего значение единицы до значения

    k, которое равно числу элементов списка, программа выполняет следующее. С

    помощью процедуры New резервирует место в памяти ЭВМ под динамическую

    переменную, адрес которой содержит указатель L. Выводит на экран строку, в

    которой содержится номер элемента списка, который следует вводить. Строка

    заканчивается символами ":>". После вывода строки программа ждет ввода

    значения элемента. После ввода значения оно присваивается в поле i

    динамической переменной структуры s, на которую ссылается указатель L. В

    поле p этой переменной записывается значение nil. Дальше проверяется

    условие: если n равно 1, что соответствует первому элементу списка, тогда

    программа присваивает значение указателя L указателям FstL (указатель,

    содержащий адрес первого элемента списка) и LL (указатель, содержащий адрес

    последнего элемента списка). То есть указатель FstL будет содержать адрес

    первого элемента списка. А иначе если n не равно 1, что соответствует

    второму и последующим элементам списка, программа присваивает ссылке

    последнего элемента списка, на который указывает указатель LL значение

    указателя L, и указателю LL присваивает адрес указателя L. Элемент, на

    который ссылается указатель L становится последним в списке. На этом цикл

    оператора FOR завершается. Таким образом происходит заполнение списка

    значениями.

    Далее программа выводит на экран строку "Еlement E:>", после чего

    необходимо ввести значение элемента Е. Программа считывает это значение и

    присваивает его переменной Е. Затем программа вставляет элемент Е в список

    после первого его элемента. Для этого программа с помощью процедуры New

    резервирует место в памяти ЭВМ под динамическую переменную, адрес которой

    содержит указатель L. Затем поле i этого элемента получает значение

    переменной Е. В ссылку текущего элемента записывается адрес, содержащийся в

    ссылке первого элемента списка. А ссылка первого элемента списка получает

    значение нового элемента списка, который имеет адрес, содержащийся в

    указателе L. Таким образом после первого элемента списка программа вставила

    еще одни элемент.

    Для вывода списка указателю L присваивается адрес первого элемента

    списка, содержащийся в указателе FstL.

    Затем организуется цикл: в то время как L имеет адрес отличающийся от

    значения nil программа делает следующее. Он организуется операторами WHILE

    и DO. Выводит на экран содержимое поля i динамической переменной структуры

    s, на которую ссылается указатель L. Далее указателю L присваивается

    значение, содержащееся в ссылке p данной динамической переменной. На этом

    один цикл, организованный операторами WHILE и DO завершается. В результате

    этого цикла будут выведены на экран значения всех элементов списка L.

    Далее программа ждет нажатия на клавишу "Enter". Программа завершает

    работу.

    5 РУКОВОДСТВО ОПЕРАТОРА

    Программа вставляет новый элемент E после первого элемента непустого

    списка L.

    Вначале программа формирует список произвольный список L. Для этого

    программа выдает на экран строку:

    |Kol. Elementov L:> |

    После этого необходимо ввести количество элементов, которые будут

    заноситься в список и нажать клавишу "Enter". Программа запоминает это

    значение.

    После программа выдает на экран строки, после которых нужно вводить

    элементы списка начиная с первого и заканчивая последним элементом.

    Программа вначале выдаст на экран строку:

    |L1 :> |

    После этого нужно ввести значение элемента №1 списка и нажать клавишу

    "Enter".

    После этого на экран будет выведена следующая строка:

    |L2 :> |

    Соответственно после нее следует ввести значение элемента №2 списка и

    нажать клавишу "Enter". И так далее программа будет выводить строки,

    содержащие номер элемента, который следует вводить. Например, если

    количество элементов, которое вы ввели вначале работы с программой равно

    10, то последняя строка будет выглядеть так:

    |L10 :> |

    После вывода этой строки следует ввести значение этого элемента и

    нажать клавишу "Enter". Все вводимые значения программа запоминает и

    формирует список, содержащий все эти значения.

    Далее программа выдаст на экран строку:

    |Element Е:> |

    После этого следует ввести значение элемента Е и нажать клавишу

    "Enter". Программа запоминает это значение. Затем программа корректирует

    список L таким образом: вставляет значение элемента Е после первого

    элемента списка. Таким образом в списке L появляется еще один элемент. Если

    вы вводили 10 элементов, то теперь их будет 11.

    Далее на экран выводятся все значения скорректированного списка L

    начиная с первого.

    Если вы вводили следующие значения элементов начиная с первого: 1, 2,

    3, 4, 5, 6, 7, 8, 9, 10 и ввели элемент Е равный 0, то на экране появится

    следующая строка:

    |1 0 2 3 4 5 6 7 8 9 10 |

    Далее программа ждет нажатия на клавишу "Enter". После этого программа

    завершает работу.

    -----------------------

    L<>nil

    L:=FstL;

    Write(L^.i,' ');

    L:=L^.p;

    LL^.p:=L;

    LL:=L;

    n=1

    Выход

    ReadLn

    n:=1

    New FstL:=L;

    LL:=L;

    Write('Element E:> ');

    ReadLn(E);

    New(L);

    L^.i:=E;

    L^.p:=FstL^.p;

    stL^.p:=L;

    n:=n+1

    New(L);

    Write('L',n,' :> ');

    ReadLn(L^.i);

    L^.p:=nil;

    n=k

    Начало программы

    Write('Kol. Elementov L:> ');

    ReadLn(k);


    Приглашения

    09.12.2013 - 16.12.2013

    Международный конкурс хореографического искусства в рамках Международного фестиваля искусств «РОЖДЕСТВЕНСКАЯ АНДОРРА»

    09.12.2013 - 16.12.2013

    Международный конкурс хорового искусства в АНДОРРЕ «РОЖДЕСТВЕНСКАЯ АНДОРРА»




    Copyright © 2012 г.
    При использовании материалов - ссылка на сайт обязательна.