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

     

     

     

     

     

         
     
    Програма обліку та вибірки інформації про країни
         

     

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

    Програма обліку та вибірки інформації про країни

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

    Виконав: студент гр. 96-ВВ3 Бубнов А.В.

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

    Пенза 1997

    Вступ

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

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

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

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

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

    1) Введення інформації;

    2) Запис інформації у файл;

    3) Виведення інформації на екран;

    4) Вибірка інформації по заданому ознакою (комбінації ознак);

    5) Збір статистики по заданому ознакою (2-3) та побудова результатів статистики у вигляді лінійної діаграми.

    Імена файлів задаються в діалозі з користувачем.

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

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

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

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

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

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

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

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

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

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

    Дані після сортування;

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

    Графік;

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

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

    Структура country:        

    Поле         

    Тип         

    Назва             

    name         

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

    Назва             

    capt         

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

    Столиця             

    population         

    double         

    Населення             

    money         

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

    Грошова одиниця             

    square         

    double         

    Площа             

    sp         

    int         

    Номер за населенням             

    ss         

    int         

    Номер за площею             

    sn         

    int         

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

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

    Поле         

    Тип         

    Назва             

    cdt         

    масив змінних типу   country на 301 елемент         

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

    cnum         

    int         

    Кількість країн             

    Sort         

    char         

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

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

    6.1 Функція cmp        

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

    if (strcmp (cdt [n]. name, mxc) <0)             

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

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

    Функції:         

    Переглядає   послідовно задану рядок, і якщо в ній знайдена маска, то повертається   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 (54,10, "за   Населення "   

    "по   Площі "   

    "x0 ");   

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

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

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

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

    "x0 ");             

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

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

    Функції:         

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

    Логіка   

    змінні:         

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

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

    Внутрішні   

    змінні:         

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

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

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

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

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

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

    немає             

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

    scroll     

    6.4 Функція sinput        

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

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

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

    SInput (cdt [ed]. money, 20,35,10);             

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

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

    Функції:         

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

    Логіка   

    змінні:         

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

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

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

    Внутрішні   

    змінні:         

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

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

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

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

    немає             

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

    edit     

    6.5 Функція dinput        

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

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

    cdt [ed]. square = 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 (st);             

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

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

    Функції:         

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

    Логіка   

    змінні:         

    str (int) - номер країни                

    Внутрішні   

    змінні:         

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

    mx (int) - Масштаб по х   

    x (int) - х   

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

    py (int) - Минуле значення   Y для першої лінії   

    ppy (int) - Минуле   значення Y для другої лінії             

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

    Ні             

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

    Scroll     

    6.7 Функція index        

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

    index ()             

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

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

    Функції:         

    Cтіраніе старих індексів,   індексація за площею, індексація по населенню, індексація по назві.             

    Логіка   

    змінні:         

    немає             

    Внутрішні   

    змінні:         

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

    mx (double) - значення   найменшого елемента   

    mxc (char) - значення   найбільшого назви   

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

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

    cmp             

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

    scroll     

    6.8 Функція edit        

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

    edit (300);   

    edit (cnum-1);   

    edit (n);             

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

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

    Функції:         

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

    Логіка   

    змінні:         

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

    Внутрішні   

    змінні:         

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

    en (int) - номер пункту   меню   

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

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

    sinput, dinput             

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

    scroll     

    6.9 Функція find        

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

    sv = find (sk + sv-1) +1             

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

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

    Функції:         

    Пошук елемента, Повернення результатів, в залежності від   методу сортування.             

    Логіка   

    змінні:         

    lst (int) - індекс             

    Внутрішні   

    змінні:         

    mss (int) -   

    msn (int) - | найменший знайдений елемент за   Індеко   

    msp (int) -/   

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

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

    cmp             

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

    scroll     

    6.10 Функція scroll        

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

    scroll ()             

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

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

    Функції:         

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

    Логіка   

    змінні:         

    немає             

    Внутрішні   

    змінні:         

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

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

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

    sv, sk (int) - положення   курсору             

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

    output, menu, edit, index, find.             

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

    main     

    6.11 Функція load        

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

    load ()             

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

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

    Функції:         

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

    Логіка   

    змінні:         

    немає             

    Внутрішні   

    змінні:         

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

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

    немає             

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

    main     

    6.12 Функція save        

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

    save ()             

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

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

    Функції:         

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

    Логіка   

    змінні:         

    немає             

    Внутрішні   

    змінні:         

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

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

    немає             

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

    main     

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

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

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

    Функції:         

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

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

    load, save, scroll.     

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

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

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

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

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

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

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

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

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

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

           

    1) Додати до списку             

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

    3) Редагувати             

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

    Це меню зміни списку країн, що при виборі пунктів якого користувач може: додати новий елемент у списку, видалити елемент зі списку, відредагувати вже існуючий елемент списку.

    При натисканні користувачем клавіші Esc з'являється меню:

           

    1) Сортування:             

    2) за кількістю населення             

    3) за Площі             

    4) за Назвою             

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

    6) Побудова графіка             

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

    При натисканні на клавіші управління курсором (вгору, вниз) можна управляти курсором, якщо натиснути клавішу Enter або клавішу з номером пункту меню, то відбудеться те або інше дію відповідно до вибраним пунктом.

    відсортована послідовність виводиться на екран у вигляді списку країн. При виборі пункту "Пошук за маскою" програма запрошує дані для пошуку країни: Назва, Столиця, Грошова одиниця, Населення (тс.чл.), Площа (тс.кв.км).

    Після пошуку, якщо такий абонент є в списку, дані про знайдений абонента виводяться на екран.

    При виборі пункту "Вихід з програми" програма завершує свою роботу.

    9 Тестуванняпрограми

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

    План тестування програми обліку та вибірки інформації про країни полягає в наступному:

    1) Завантаження програми

    2) Введення даних про країни

    3) Видалення країни зі списку

    4) Редагування даних про країну

    5) Сортування по полях

    6) Пошук по масці

    7) Побудова графіка

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

    Далі в пункті "Результати роботи програми" наводиться роздруківка тестування програми по пунктах плану тестування і результатів тестування.

    10 Результати роботи програми

    1) Завантаження програми

    2) Введення даних про країни

    1) Додати до списку

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

    3) Редагувати

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

    Назва: Росія

    Столиця: Москва

    Грошова одиниця: Рубль

    Населення (тс.чл.): 185000.000000

    Площа (тс.кв.км): 54435.000000

    Великобританія Лондон

    Фунт 56678.0 тис.чол. 4667.0 тис.кв.км

    Німеччина Берлін

    Марка 42467.0 тис.чол. 5567.0 тис.кв.км

    Росія Москва

    Рубль 185000.0 тис.чол. 54435.0 тис.кв.км

    США Вашингтон

    Долар 50000.0 тис.чол. 34568.0 тис.кв.км

    3) Видалення країни зі списку

    Великобританія Лондон

    Фунт 56678.0 тис.чол. 4667.0 тис.кв.км

    Росія Москва

    Рубль 185000.0 тис.чол. 54435.0 тис.кв.км

    США Вашингтон

    Долар 50000.0 тис.чол. 34568.0 тис.кв.км

    4) Редагування даних про країну

    Назва: США

    Столиця: Вашингтон

    Грошова одиниця: Долар

    Населення (тс.чл.): 60000.000000

    Площа (тс.кв.км): 34568.000000

    Великобританія Лондон

    Фунт 56678.0 тис.чол. 4667.0 тис.кв.км

    Росія Москва

    Рубль 185000.0 тис.чол. 54435.0 тис.кв.км

    США Вашингтон

    Долар 60000.0 тис.чол. 34568.0 тис.кв.км

    5) Сортування по полях

    за кількістю населення:

    Великобританія Лондон

    Фунт 56678.0 тис.чол. 4667.0 тис.кв.км

    Росія Москва

    Рубль 185000.0 тис.чол. 54435.0 тис.кв.км

    США Вашингтон

    Долар 60000.0 тис.чол. 34568.0 тис.кв.км

    за площею:

    Росія Москва

    Рубль 185000.0 тис.чол. 54435.0 тис.кв.км

    США Вашингтон

    Долар 60000.0 тис.чол. 34568.0 тис.кв.км

    Великобританія Лондон

    Фунт 56678.0 тис.чол. 4667.0 тис.кв.км

    за назвою:

    Великобританія Лондон

    Фунт 56678.0 тис.чол. 4667.0 тис.кв.км

    Росія Москва

    Рубль 185000.0 тис.чол. 54435.0 тис.кв.км

    США Вашингтон

    Долар 60000.0 тис.чол. 34568.0 тис.кв.км

    6) Пошук по масці

    Назва: Росія

    Столиця:

    Грошова одиниця:

    Населення (тс.чл.): 0.000000

    Площа (тс.кв.км): 0.000000

    Росія Москва

    Рубль 185000.0 тис.чол. 54435.0 тис.кв.км

    7) Побудова графіка

    за кількістю населення:

    за площею:

    Висновок

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

    За завданням до даної курсової роботи був розроблений алгоритм, за яким на алгоритмічній мові С + + була розроблена програма , Аналіз результатів якої показав, що поставлене завдання успішно вирішується.

    Список літератури

    1.Бьярн Страуструп. Мова програмування С + +. У двох частинах. Пер. з англ. Київ: "ДіаСофт", 1993.-296 с., Іл.

    2.Корріган Джон Комп'ютерна графіка: Секрети і рішення: Пер з англ. -М.: Ентропія, 1995. - 352 с., Іл.

    Для підготовки даної роботи були використані матеріали з сайту http://kurslab.chat.ru/

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

     

     

     

     

     

     

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