13002

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

Лекция

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

ЛЕКЦІЯ 9 1.1: Програмування. Основні етапи розробки прикладних програм. Під програмуванням розуміють представлення в деякій символічній формі певного алгоритму. В якості символічної форми може використовуватися будьяка мова спілкування спеціально створена штучна...

Украинкский

2013-05-07

42.5 KB

6 чел.

ЛЕКЦІЯ 9

1.1: Програмування. Основні етапи розробки прикладних програм.

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

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

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

1.2: Етапи розробки прикладних програм.

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

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

Розв’язання математичної моделі. Якщо математичні співвідношення допускають точні розв’язки , то нема потреби використовувати наближені методи. Якщо ж модель є достатньо складною, то використовується якийсь із наближених чисельних методів.

Побудова алгоритму розв’язку. Часто одну і ту ж задачу можна розв’язати різними способами. Отримавши різні алгоритми, звичайно обирається найефективніший з них. В якості критерію ефективності вибирається час виконання, точність отриманого результату, використанням системних ресурсів. Оскільки час роботи суттєво залежить від машини, на якій реалізується алгоритм, то швидкодію алгоритму прийнято в кількості так званих „важких” операцій. Під „важкими” розуміють ті операції, на які процесор затрачає більше часу та ресурсів. Для математичних задач – операції  множення, ділення та звернення до функції, для задач обробки структур даних – операція порівняння, для задач системного програмування процесора – операція пересилки даних.

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

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

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

Під коректним алгоритмом розуміють такий алгоритм, який дає єдиний стійкий розв’язок за скінчену кількість кроків. Остання умова означає, що він не повинен зациклюватися.

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

В будь-якому випадку алгоритм повинен будуватися без орієнтації на якусь конкретну мову програмування.

Програмна реалізація алгоритму. Вибір мови програмування здійснюється з двох основних міркувань:

а) можливостями мови;

б) наявність матеріальних ресурсів та апаратних засобів.

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

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

Документування програми.  При передачі П.З. замовнику, складається додатковий файл коментарів та пояснень. Такі пояснення в окремому файлі використовуються, якщо програма передається у вигляді виконуваного чи командного файлу, тобто тоді, коли текст програми не є об’єктом передачі. Якщо ж передбачається передача тексту програми, то в цьому випадку бажане включення коментарів у програмі, що полегшують розуміння її замовником.

1.3. Структурне програмування. Основні структурні     елементи алгоритмів.

При розробці великих програмних систем виникає проблема контролю за виконанням всього проекту. Одним із способів вирішення принципів цієї проблеми є принцип „розділяй і володарюй”. Він передбачає розбиття основної задачі на деякі під задачі, які більш-менш незалежні. Кожен з компонентів теж може поділятися на під задачі. При цьому зрозуміло, що алгоритм розв’язку теж розділяється на під алгоритми. Такий поділ значно полегшує розробку і від лагодження певних частин.

Такий поділ – структурна декомпозиція, а програмування за цим принципом – структурним. Структурне програмування – дедуктивне (від складного до простого).

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

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

продовжуватися до рівня елементарних операторів мови програмування, тому виникає питання: які основні структурні елементи можна виділити в алгоритмів і програм. Для побудови основних елементів алгоритму використовують три базових елементи.

 - об’єднуюча частина. Це точка алгоритму, в якій нічого не виконується. Це лише вхід чи вихід з окремого блоку алгоритму.

  -  функціональна вершина. Відповідає окремій дії алгоритму.    Виклик підпрограм, елементарний оператор мови.

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

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

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

До структурних мов програмування відносять Pascal, C++,Delphi. В цих мовах основною компонентою є програми, процедури або функції. Це є ніби програма, яка виконує окрему частину алгоритму. Структурні мови зручні тим, що на основі них можна будувати модулі, бібліотеки зовнішніх програм, які використовуються декількома програмами одночасно.

PAGE  1


 

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

76706. ПЕРВЫЙ ЭТАП СЕСТРИНСКОГО ПРОЦЕССА 423.5 KB
  Она может быть получена от самого пациента членов его семьи свидетелей случившегося самой медицинской сестры её коллег. Для этого в первую очередь необходимо определить проблемы пациента связанные с актуальным или потенциальным состоянием его здоровья.
76707. Los Angeles 33.76 KB
  Los Angeles officially the City of Los Angeles, often known by its initials L.A., is the most populous city in the U.S. state of California and the second-most populous in the United States, after New York City, with a population at the 2010 United States Census of 3,792,621.
76708. Biography of Winnie the Pooh 29.95 KB
  Like many other characters from Milne, Winnie was given the name of one of the real toys Christopher Robin (1920-1996), son of the writer. In turn, the teddy bear Winnie the Pooh was named for the mother bear named Winnipeg (Winnie) contained in the 1920 at the London Zoo.
76709. Развитие и современное состояние автомобилизации 658.64 KB
  Значение автомобильной промышленности и перспективы её развития определяются тем, какое место занимает автотранспорт в транспортно-энергетической инфраструктуре, и его общей ролью в национальной экономике той или иной страны.
76710. Развитие жизни на Земле 87.5 KB
  Эволюционное развитие организмов исследуется целым рядом наук, рассматривающих разные аспекты этой фундаментальной проблемы естествознания. Ископаемые остатки животных и растений существовавших на Земле в прошедшие геологические эпохи, изучает палеонтология,...
76711. Наркомания. Влияние наркотиков на организм человека 36.46 KB
  Злоупотребление наркотиками, известное с древнейших времен, сейчас распространилось в размерах, тревожащих всю мировую общественность. Даже при сужении, с точки зрения наркологов, границ наркомании до юридически приемлемых, во многих странах наркомания признана социальным бедствием.
76712. Ионизирующие излучения. Источники радиоактивного облучения 55.76 KB
  Человек испытывает облучение двумя способами - внешним и внутренним. Если радиоактивные вещества находятся вне организма и облучают его извне, то в этом случае, говорят о внешнем облучении.
76713. Основные виды страховых услуг в сфере страхования жизни 94.5 KB
  Особенности страхования жизни заключаются в обеспечении приемлемых доходов, уровня и качества жизни людей при наступлении случайных событий с неблагоприятными и благоприятными последствиями, именуемых страховыми случаями.
76714. Здоровье – понятие и его показатели 35.92 KB
  В научной литературе одновременно используют не только разные определения, но и различные подходы к их формулировке. Больше всего определений, рассматривающих здоровье человека как какой-то функциональный оптимум, как гармонию всех частей организма.