ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

         
     
    Звіт з лабораторної роботи № 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 Lnil 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". Після цього програмазавершує роботу.

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

    Lnil

    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);

         
     
         
    Реферат Банк
     
    Рефераты
     
    Бесплатные рефераты
     

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status