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

     

     

     

     

     

         
     
    Програма обробки даних у бібліотеці
         

     

    Інформатика, програмування

    Програма обробки даних у бібліотеці

    Пояснювальна записка до курсової роботи з дисципліни "Основи алгоритмізації і програмування"

    Виконав: студент гр. 96-ВВ3 Мітіко Р.О.

    Пензенський державний університет, Кафедра "Обчислювальна техніка"

    Пенза 1998

    Вступ

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

    Інтерес до персональних комп'ютерів постійно росте, а коло їх користувачів безперервно расшіряется.В число користувачів ПЕОМ залучаються як новачки в комп'ютерному справі, так і фахівці з інших класів ЕОМ.

    Мова С + + - універсальна мова загального призначення, область додатків якого - програмування систем в самому широкому сенсі. Крім цього, С + + успішно використовується як у багатьох додатках, так і в потужних операційних системах. Реалізація С + + здійснена для машин в діапазоні від найпростіших персональних комп'ютерів до найпотужніших суперкомп'ютерів і для всіх операційних систем.

    1 Постановка завдання

    Завдання курсової роботи полягає в розробці мовою програмування С + + програми обробки даних в бібліотеці, яка повинна здійснювати наступні функції:

    1) Введення даних про книги, що є в бібліотеці: назва книги, автор, кількість примірників, порядковий номер, вартість книги

    2) Виведення інформації на екран (у файл) за запитом про книгах, що є в бібліотеці: читальному залі, абонементі, сховище за назвою, автору, тематиці.

    3) Збір статистики про книжки одного автора з різними назвами.

    4) Побудова графічної діаграми для пункту в вибором.

    Робота програми повинна бути організована з використанням меню.

    Програму розробити на мові С + + v.3.1.

    2 Метод вирішення завдання

    Аналізуючи постановку завдання стає зрозуміло, що для її рішення необхідно застосувати метод багатофункціонального програмування -- цей метод заснований на розбивання програми на окремі функціональні модулі, які викликаються з основної програми в процесі її роботи.

    В основі розробки такої програми лежить нізходящее програмування - тобто спочатку розробляється основна програма - в даному випадку програма введення тексту на екран, обробки функціональних клавіш і меню , За допомогою вибору пунктів якого буде надалі організовуватися її робота. При виборі того чи іншого пункту меню або натискання функціональної клавіші буде викликатися один або кілька підпрограм, але на початковому етапі розробки програми методом спадного програмування замість цих підпрограм ставить "заглушки" - порожні підпрограми, які в процесі розробки будуть замінюватися програмами, які виконують певну функцію.

    3 Опис логічного подання даних

    Вхідними даними в програмі є:

    Файл бази даних, який записаний на диску у файлі librarym.dat.

    Дані, які в процесі роботи програми можна додати, видалити або відредагувати.

    Вихідними даними в програмі є:

    Дані, сортовані за назвою або автору

    Результат пошуку по заданій масці

    Графік

    Файл бази даних, що записується на диск у файл librarym.dat під час завершення роботи програми.

    Дані про книзі зберігаються в масиві структур типу books:

    Структура books:        

    Поле         

    Тип         

    Назва             

    name         

    рядок 30 символів типу char         

    Назва             

    fio         

    рядок 30 символів типу   char         

    Автор             

    num         

    int         

    Кількість             

    price         

    float         

    Вартість             

    number         

    long         

    Порядковий номер             

    loc         

    int         

    Розташування             

    ss         

    int         

    Тематика             

    nn         

    int         

    Номер за назвою             

    nf         

    int         

    Номер за автором     

    Глобальні змінні програми:        

    Поле         

    Тип         

    Назва             

    cdt         

    масив змінних типу   books на 501 елемент         

    Масив даних про країни             

    cnum         

    Int         

    Кількість книг             

    sort         

    Char         

    тип сортування             

    ftm         

    Char         

    Розташування     

    6 Специфікація на функціональні модулі

    6.1 Функція cmp        

    Рядок виклику:         

    if   (cmp (cdt [n]. name, cdt [500]. name) & & cmp (cdt [n]. fio, cdt [500]. fio) & & (cdt [n]. price> = cdt [500]. price) )             

    Призначення:         

    Здійснює порівняння   рядки з маскою             

    Функції:         

    Переглядає   послідовно задану рядок, і якщо в ній знайдена маска, то   повертається 1, якщо ні - 0.             

    Логіка   

    змінні:         

    * a (char) - покажчик на   рядок   

    * b (char) - покажчик на   маску для пошуку             

    Внутрішні   

    змінні:         

    k (int) - результат   порівняння   

    n (int) - лічильник             

    Викликає функції:         

    немає             

    Викликається з:         

    index, find     

    6.2 Функція output        

    Рядок виклику:         

    output (sv, sk)             

    Призначення:         

    Здійснює виведення на екран   списку книг             

    Функції:         

    Очищення екрану, висновок 10   елементів, якщо елемент обраний, виділення кольором, виведення даних про книгу на   екран.             

    Логіка   

    змінні:         

    sv, sk (int) - координати   першого елемента на екрані             

    Внутрішні   

    змінні:         

    n (int) - лічильник   

    m (int) - тимчасова   мінлива   

    nd (int) - порядковий номер   даної книги             

    Викликає функції:         

    немає             

    Викликається з:         

    scroll     

    6.3 Функція menu        

    Рядок виклику:         

    st = menu (30,5, "Додати   в список "   

    "Видалити зі списку"   

    "Редагувати"   

    "За Автору"   

    "За Назвою"   

    "Вихід в головне меню"   

    "x0")   

    st = menu (30,5, "Список   книг "   

    "Пошук за маскою"   

    "Кількість книг"   

    "Вихід з програми"   

    "x0")   

    st = menu (40,6, "   Розміщення: "   

    "   Читальний зал "   

    "   Абонемент "   

    "   Сховище "   

    "x0")                

    Призначення:         

    Здійснює обробку меню             

    Функції:         

    Висновок меню на екран, опитування   клавіатури, при натисканні клавіш управління курсором (вгору, вниз)   переміщення колірного курсору по пунктам меню, вибір певного пункту   меню при натисненні клавіші з номером пункту меню, при натисканні клавіші Enter   повертається номер обраного пункту меню, при натисканні клавіші Esc   повертається -1.             

    Логіка   

    змінні:         

    * capt (char) - покажчик на   текст меню   

    x, y - координати виводу   меню на екран             

    Внутрішні   

    змінні:         

    n, m (int) - Лічильники   

    num (int) - Кількість   пунктів   

    k (int) - Обраний пункт   

    * pt (char) - Тимчасовий   покажчик на символ   

    c (char) - рахуватися з   клавіатури символ             

    Викликає функції:         

    немає             

    Викликається з:         

    scroll, main     

    6.4 Функція sinput        

    Рядок виклику:         

    SInput (cdt [ed]. name, 30,35,6)   

    SInput (cdt [ed]. fio, 30,35,8)   

    SInput (name, 40,20,23)                

    Призначення:         

    Здійснює введення рядка.             

    Функції:         

    Висновок порожнього рядка,   установка координат, висновок рядка запиту, зчитування рядка посимвольний з   клавіатури, вихід, якщо натиснута клавіша Enter або Esc, якщо натиснута Esc то   рядок не записується.             

    Логіка   

    змінні:         

    * s (char) - покажчик на   рядок   

    lng (int) - максимальна   довжина   

    x, y - координати введення             

    Внутрішні   

    змінні:         

    rs [100] (char) - Тимчасова   рядок   

    n (int) - Лічильник   

    c (char) - Введений з   клавіатури символ             

    Викликає функції:         

    немає             

    Викликається з:         

    edit, find     

    6.5 Функція dinput        

    Рядок виклику:         

    cdt [ed]. price = DInput (35,10)   

    cdt [ed]. number = DInput (35,12)   

    cdt [ed]. num = DInput (35,14)                

    Призначення:         

    Здійснює введення числа.             

    Функції:         

    Висновок порожнього рядка,   установка координат, висновок рядка запиту, зчитування рядка посимвольний з   клавіатури, отримання введеного числа, вихід, якщо натиснута клавіша Enter   або Esc, якщо натиснута Esc то число не записується.             

    Логіка   

    змінні:         

    * s (char) - покажчик на   рядок   

    lng (int) - максимальна   довжина   

    x, y - координати введення             

    Внутрішні   

    змінні:         

    s [100] (char) - Тимчасова   рядок   

    * сtpe (char) - покажчик   на Сторк   

    rs (double) - Результат   

    n (int) - Лічильник   

    c (char) - Введений з   клавіатури символ             

    Викликає функції:         

    немає             

    Викликається з:         

    edit     

    6.6 Функція graph        

    Рядок виклику:         

    graph ()                

    Призначення:         

    Здійснює побудови   стовпчастий діаграми з розподілу книг.             

    Функції:         

    Визначення масштабу,   побудова осей координат, висновок діаграми, очікування натискання користувачем   клавіші.             

    Логіка   

    змінні:         

    немає             

    Внутрішні   

    змінні:         

    drv, mode (int) - для   ініціалізації графіки   

    c (int) - Колір   

    k1, k2, k3 (int) - кількість   книг   

    n (int) - Лічильник   

    m (int) - Масштаб             

    Викликає функції:         

    немає             

    Викликається з:         

    main     

    6.7 Функція index        

    Рядок виклику:         

    index ()             

    Призначення:         

    Здійснює індексування   масиву - призначення номерів елементів за алфавітом для кожного поля запису.             

    Функції:         

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

    Логіка   

    змінні:         

    немає             

    Внутрішні   

    змінні:         

    n, m (int) - лічильники   

    tm (int) - перебір тем   

    mxc (char [100]) - значення   найменшою рядка   

    nm (int) - номер чергового   елемента             

    Викликає функції:         

    cmp             

    Викликається з:         

    scroll     

    6.8 Функція edit        

    Рядок виклику:         

    edit (cnum-1)   

    edit (n)   

    edit (500)                

    Призначення:         

    Здійснює редагування   елемента масиву.             

    Функції:         

    Введення даних, виведення одного   з полів структури, опитування клавіатури, вибір дії - редагування поля   або вихід (клавіша Esc).             

    Логіка   

    змінні:         

    ed (int) - номер елемента   масиву             

    Внутрішні   

    змінні:         

    n (int) - лічильник   

    en (int) - редагувати   поле   

    c (char) - Введений з   клавіатури символ             

    Викликає функції:         

    sinput, dinput             

    Викликається з:         

    scroll     

    6.9 Функція find        

    Рядок виклику:         

    find ()                

    Призначення:         

    Здійснює пошук елемента   в заданій рядку по заданій масці.             

    Функції:         

    Пошук елемента, Повернення   результатів у файл чи на екран.             

    Логіка   

    змінні:         

    немає             

    Внутрішні   

    змінні:         

    n (int) - лічильник   

    * F (file - файл введення   

    name [50] (char) - Файл             

    Викликає функції:         

    cmp, sinput             

    Викликається з:         

    main     

    6.10 Функція scroll        

    Рядок виклику:         

    scroll ()             

    Призначення:         

    Здійснює обробку   списку.             

    Функції:         

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

    Логіка   

    змінні:         

    немає             

    Внутрішні   

    змінні:         

    st (int) - номер обраного   пункту меню   

    n (int) - лічильник   

    c (char) - Введений з   клавіатури символ   

    sv, sk (int) - перші   елемент на екрані і положення курсору             

    Викликає функції:         

    output, menu, edit,   index.             

    Викликається з:         

    main     

    6.11 Функція load        

    Рядок виклику:         

    load ()             

    Призначення:         

    Здійснює завантаження бази   даних з файлу.             

    Функції:         

    Відкриття файлу з ім'ям   librarym.dat, читання кількості рядків у масиві, читання даних у масив, закриття   файлу.             

    Логіка   

    змінні:         

    немає             

    Внутрішні   

    змінні:         

    * f (file) - покажчик на   файл             

    Викликає функції:         

    немає             

    Викликається з:         

    main     

    6.12 Функція save        

    Рядок виклику:         

    save ()             

    Призначення:         

    Здійснює запис бази   даних у файл.             

    Функції:         

    Відкриття файлу librarym.dat   , Запис кількості елементів, запис даних у файл, закриття файлу.             

    Логіка   

    змінні:         

    немає             

    Внутрішні   

    змінні:         

    * f (file) - покажчик на   файл                

    Викликає функції:         

    немає             

    Викликається з:         

    main     

    6.13 Основна програма - main        

    Призначення:         

    Здійснює установку   початкових значень, читання бази даних з файлу, обробку, запис бази   даних у файл.             

    Функції:         

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

    Викликає функції:         

    load, save, scroll, menu, find, graph.     

    7 Технічні вимоги для використання

    Для запуску даної програми необхідна наявність персонального комп'ютера IBM PC/XT c операційною системою MS-DOS.

    Необхідний обсяг оперативної пам'яті -640 Кбайт.

    Дла запуску програми необхідно зробити поточному каталог з програмою kurs.exe і викликати її на виконання.

    Програма працює в текстовому режимі 80х25 символів, побудова діаграми здійснюється в графічному режимі 640х480 пікселів 16 квітів.

    Файл бази даних програми librarym.dat буде записуватися і зчитуються з поточного каталогу поточного диска.

    Керування програмою здійснюється за допомогою клавіатури.

    8 Керівництво користувача

    Після своєї завантаження програма здійснює оформлення екрана, виведення на екран списку книг, що міститься у файлі бази даних, за яким можна пересувати колірної курсор.

    При натисканні клавіші Enter на одному з елементів списку , То на екран буде викликати меню:        

    1) Список книг             

    2) Пошук за маскою             

    3) Кількість книг             

    4) Вихід із програми     

    При виборі першого пункту меню моявітся наступне підменю:        

    1)   

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

     

     

     

     

     

     

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