МОСКОВСЬКИЙ Екстерну ГУМАНІТАРНИЙ p>
УНІВЕРСИТЕТ p>
АКАДЕМІЯ ПЕДАГОГІКИ p>
ПЕДАГОГІЧНИЙ ФАКУЛЬТЕТ p>
КАФЕДРА ПСИХОЛОГІЇ та психологічної p>
КОНСУЛЬТУВАННЯ p>
«Поняття про алгоритми» p>
Авторизований реферат з курсу p>
«Математика та інформатика» p>
Прізвище, ім'я, по батькові студента
Номер залікової книжки p>
Керівник (викладач) проф. Мірзоян Д.В. p>
Рецензент ____________________________ p>
Важко відповісти p>
МОСКВА - 2001 рік p>
Зміст p>
Зміст 2 p>
Визначення алгоритму 3 p>
Властивості алгоритмів 4 p>
Види алгоритмів та їх реалізація 6 p>
Методи зображення алгоритмів 8 p>
Словесний опис алгоритму 8 p>
Блок-схема алгоритму 8 p>
Псевдокод 11 p>
Програмне подання алгоритму 12 p>
Порядок розробки ієрархічної схеми реалізації алгоритмів 13 p>
Автоматизація діяльності людини на основі алгоритмізації 15 p>
Значення алгоритмів при вирішенні повсякденних завдань p>
18 p>
Роль інформаційних технологій сьогодні 20 p>
Література: 23 p>
Визначення алгоритму p>
Слово «Алгоритм» походить від algorithmi - латинського написання іменіаль-Хорезмі, під яким у середньовічній Європі знали видатногоматематика з Хорезму (місто в сучасному Узбекистані) Мухаммеда бен Мусу,що жив в 783-850 рр.. У своїй книзі «Про індійський рахунку» він сформулювавправила запису натуральних чисел за допомогою арабських цифр і правила дійнад ними стовпчиком. Надалі алгоритмом стали називати точнеприпис, що визначає послідовність дій, що забезпечуєотримання необхідного результату з вихідних даних. Алгоритм може бутипризначений для виконання його людиною або автоматичним пристроєм.
Створення алгоритму, нехай навіть самого простого, - процес творчий. Віндоступний виключно живим істотам, а довгий час вважалося, щотільки людині. Інша справа - реалізація вже наявного алгоритму. Їїможна доручити суб'єкту або об'єкту, який не зобов'язаний вникати в сутьсправи, а можливо, і не здатний її зрозуміти. Такий суб'єкт або об'єктприйнято називати формальним виконавцем. Прикладом формального виконавцяможе служити пральна машина-автомат, яка неухильно виконуєпродиктовані їй дії, навіть якщо ви забули покласти в неї порошок.
Людина теж може виступати в ролі формального виконавця, але в першучергу формальними виконавцями є різні автоматичніпристрою, і комп'ютер в тому числі. Кожен алгоритм створюється з розрахунку націлком конкретного виконавця. Ті дії, які може здійснювативиконавець, називаються його його допустимими діями. Сукупністьдопустимих дій утворює систему команд виконавця. Алгоритм повиненмістити тільки ті дії, які допустимі для даного виконавця. p>
Властивості алгоритмів p>
Дане вище визначення алгоритму не можна вважати суворим - не цілкомясно, що таке «точний припис» або «послідовність дій,що забезпечує отримання необхідного результату ». Тому зазвичай формулюютьдекілька загальних властивостей алгоритмів, що дозволяють відрізняти алгоритми відінших інструкцій. p>
Такими властивостями є: p>
. Дискретність (переривчастість, роздільність) - алгоритм повинен представляти процес вирішення задачі як послідовне виконання простих (або раніше визначених) кроків. Кожна дія, передбачене алгоритмом, виконується тільки після того, як закінчилося виконання попереднього. P>
. Визначеність - кожне правило алгоритму має бути чітким, однозначним і не залишати місця для сваволі. Завдяки цій властивості виконання алгоритму носить механічний характер і не вимагає ніяких додаткових вказівок або відомостей про розв'язуваної задачі. P>
. Результативність (кінцівка) - алгоритм повинен призводити до вирішення завдання за кінцеве число кроків. P>
. Масовість - алгоритм рішення задачі розробляється в загальному вигляді, тобто, він повинен бути застосовний для деякого класу задач, що розрізняються тільки вихідними даними. При цьому вихідні дані можуть вибиратися з деякої області, яка називається областю застосовності алгоритму. P>
Правила виконання арифметичних операцій або геометричнихпобудов є алгоритми. При цьому залишається без відповідіпитання, чим же відрізняється поняття алгоритму від таких понять, як «метод»,
«Спосіб», «правило». Можна навіть зустріти твердження, що слова
«Алгоритм», «спосіб», «правило» висловлюють одне й те саме (тобто єсинонімами), хоча таке твердження, очевидно, суперечить "властивостямиалгоритму ". p>
Саме вираз« властивості алгоритму »не зовсім коректно. Властивостямимають об'єктивно існуючі реальності. Можна говорити, наприклад, провластивості певної речовини. Алгоритм - штучна конструкція,яку ми споруджуємо для досягнення своїх цілей. Щоб алгоритм виконавсвоє призначення, його необхідно будувати за певними правилами.
Тому потрібно говорити все ж не про властивості алгоритму, а про правилапобудови алгоритму, або про вимоги до алгоритму. p>
Перше правило - при побудові алгоритму перш за все необхіднозадати безліч об'єктів, з якими буде працювати алгоритм.
Формалізоване (закодований-е) представлення цих об'єктів носитьназва даних. Алгоритм приступає до роботи з певним набором даних,які називаються вхідними, і в результаті своєї роботи-ти видає дані,які називаються вихідними. Таким чином, алгоритм пре-утворює вхіднідані у вихідні. p>
Це правило дозволяє відразу відокремити алгоритми від "методів" і
"Способів". Поки ми не маємо формалізованих вхідних даних, ми не можемопобудувати алгоритм. p>
Друге правило - для роботи алгоритму вимагають пам'яті. У пам'ятірозміщуються вхідні дані, з якими алгоритм починає працювати,проміжні дані і вихідні дані, які є результатом роботиалгоритму. Пам'ять є дискретної, тобто що складається з окремих осередків.
Пойменована комірка пам'яті носить на-звання змінної. У теорії алгоритміврозміри пам'яті не обмежуються, тобто вва-ється, що ми можемонадати алгоритму будь-який необхідний для роботи обсяг пам'яті. p>
У шкільній «теорії алгоритмів» ці два правила не розглядаються. У тойВодночас практична робота з алгоритмами (програмування) починаєтьсясаме з реалізації цих правил. У мовах програмування розподілпам'яті здійснюється декларативними операторами (операторами описузмінних). У мові Бейсік не всі змінні описуються, зазвичайописуються лише масиви. Але все одно при запуску програми транслятормови аналізує всі ідентифікатори в тексті програми і відводить пам'ятьпід відповідні змінні. p>
Третє правило - дискретність. Алгоритм будується з окремих кроків
(дій, операцій, команд). Безліч кроків, з яких складеноалгоритм, звичайно. p>
Четверте правило - детерменірованность. Після кожного кроку необхідновказувати, який крок виконується таким, або давати команду зупинки. p>
П'яте правило - збіжність (результативність). Алгоритм повинензавершувати роботу після кінцевого числа кроків. При цьому необхідно вказати,що вважати результатом роботи алгоритму. p>
Отже, алгоритм - невизначені поняття теорії алгоритмів. Алгоритмкожного певного набору вхідних даних ставить у відповідність деякийнабір вихідних даних, тобто обчислює (реалізує) функцію. Прирозгляді конкретних питань у теорії алгоритмів завжди мається на увазіякась конкретна модель алгоритму. p>
Види алгоритмів та їх реалізація p>
Алгоритм стосовно до обчислювальної машини - точний припис,тобто набір операцій і правил їх чергування, за допомогою якого, починаючи здеяких вихідних даних, можна вирішити будь-яке завдання фіксованого типу. p>
Види алгоритмів як логіко-математичних засобів відображають зазначенікомпоненти людської діяльності і тенденції, а самі алгоритми взалежно від мети, початкових умов завдання, шляхів її вирішення,визначення дій виконавця підрозділяються в такий спосіб: p>
. Механічні алгоритми, чи інакше детерміновані, жорсткі p>
(наприклад алгоритм роботи машини, двигуна і т.п.); p>
. Гнучкі алгоритми, наприклад стохастичні, тобто імовірнісні та евристичні. p>
Механічний алгоритм задає певні дії, позначаючи їх уєдиною і достовірної послідовності, забезпечуючи тим самимоднозначний потрібний чи потрібний результат, якщо виконуються ті умовипроцесу, завдання, для яких розроблено алгоритм. p>
. Імовірнісний (стохастичний) алгоритм дає програму рішення задачі декількома шляхами або способами, що приводять до ймовірного досягнення результату. P>
. Евристичний алгоритм (від грецького слова "еврика") - це такий алгоритм, в якому досягнення кінцевого результату програми дій однозначно не визначено, так само як не позначена вся послідовність дій, не виявлено всі дії виконавця. До евристичним алгоритмам відносять, наприклад, інструкції та приписи. У цих алгоритмах використовуються універсальні логічні процедури і способи прийняття рішень, засновані на аналогії, ассоціяціях і минулому досвіді вирішення схожих завдань. P>
. Лінійний алгоритм - набір команд (вказівок), що виконуються послідовно в часі один за одним. P>
. Розгалужуються алгоритм - алгоритм, який містить хоча б одна умова, в результаті перевірки якого ЕОМ забезпечує перехід на один із двох можливих кроків. P>
. Циклічний алгоритм - алгоритм, який передбачає багаторазове повторення одного і того ж дії (одних і тих же операцій) над новими вихідними даними. До циклічним алгоритмам зводиться більшість методів обчислень, перебору варіантів. P>
Цикл програми - послідовність команд (серія, тіло циклу), якаможе виконуватися багато разів (для нових вихідних даних) до задоволеннядеякого умови. p>
Допоміжний (підлеглий) алгоритм (процедура) - алгоритм, ранішерозроблений і цілком використовується при алгоритмізації конкретного завдання.
У деяких випадках за наявності однакових послідовностей вказівок
(команд) для різних даних з метою скорочення запису також виділяютьдопоміжний алгоритм. p>
Методи зображення алгоритмів p>
На практиці найбільш поширеним є такі форми поданняалгоритмів: p>
. словесна (записи на природній мові); p>
. графічна (зображення з графічних символів); p>
. псевдокоду (полуформалізованние опису алгоритмів на умовному алгоритмічній мові, що включають в себе як елементи мови програмування, так і фрази природної мови, загальноприйняті математичні позначення та ін); p>
. програмна (тексти на мовах програмування). p>
Словесний опис алгоритму p>
Даний спосіб отримав значно меншого поширення через йогобагатослівних і відсутності наочності. p>
Розглянемо приклад на алгоритмі знаходження максимального з двохзначень: p>
. Визначимо формати змінних X, Y, M, де X і Y - значення для порівняння, M - мінлива для зберігання максимальне значення, p>
. отримаємо два значення чисел X та Y для порівняння; p>
. порівняємо X і Y. p>
. якщо X менше Y, означає більше число Y. p>
. Помістимо в змінну M значення Y. p>
. Якщо X не менше (більше) Y, означає більше число X. p>
. Помістимо в змінну M значення X. p>
Словесний спосіб не має широкого розповсюдження за наступнимипричин: p>
. такі описи строго не формалiзуються,; p>
. страждають багатослівність записів; p>
. допускають неоднозначність тлумачення окремих приписів. p>
Блок-схема алгоритму p>
А цей спосіб виявився дуже зручним засобом зображення алгоритмів іотримав широке розповсюдження в науковій і навчальній літературі. p>
Структурна (блок-, граф-) схема алгоритму - графічне зображенняалгоритму у вигляді схеми пов'язаних між собою за допомогою стрілок (лінійпереходу) блоків - графічних символів, кожен з яких відповідаєодному кроку алгоритму. Всередині блоку дається опис відповідногодії. p>
Графічне зображення алгоритму широко використовується передпрограмуванням завдання внаслідок його наочності, тому що зоровесприйняття зазвичай полегшує процес написання програми, її коригуванняпри можливі помилки, осмислення процесу обробки інформації. p>
Можна зустріти навіть таке твердження: «Зовні алгоритм представляєсобою схему - набір прямокутників та інших символів, усередині якихзаписується, що обчислюється, що вводиться в машину і що видається надрук і інші засоби відображення інформації «. Тут формапредставлення алгоритму змішується з самим алгоритмом. p>
Принцип програмування «зверху вниз» вимагає, щоб блок-схемапоетапно конкретизувалася і кожен блок «розписувався» до елементарнихоперацій. Але такий підхід можна здійснити при вирішенні нескладних завдань.
При вирішенні скільки-небудь серйозного завдання блок-схема «розповзеться» дотакої міри, що її неможливо буде охопити одним поглядом. p>
Блок-схеми алгоритмів зручно використовувати для пояснення роботи вжеготового алгоритму, при цьому як блоків беруться дійсно блокиалгоритму, робота яких не вимагає пояснень. Блок-схема алгоритму повиннаслужити для спрощення зображення алгоритму, а не для ускладнення. p>
У таблиці наведено найбільш часто вживані символи.
| Назва символу | Позначення та приклад | Пояснення |
| | Заповнення | |
| Процес | | Обчислювальні дію |
| | | Або послідовність |
| | | Дій |
| Рішення | | Перевірка умов |
| Модифікація | | Початок циклу |
| Зумовлений процес | | Обчислення по |
| | | Підпрограмі, стандартної |
| | | Підпрограмі |
| Введення-виведення | | Введення-виведення в загальному вигляді |
| Пуск-зупинка | | Початок, кінець алгоритму, |
| | | Вхід і вихід у |
| | | Підпрограму |
| Документ | | Висновок результатів на |
| | | Друк | p>
Блок «процес» застосовується для позначення дії абопослідовності дій, що змінюють значення, форму подання аборозміщення даних. Для поліпшення наочності схеми кілька окремихблоків обробки можна об'єднувати в один блок. Представлення окремихоперацій досить вільно. p>
Блок «рішення» використовується для позначення переходів управління зумові. У кожному блоці «рішення» повинні бути зазначені питання, умова абопорівняння, які він визначає. p>
Блок «модифікація» використовується для організації циклічнихконструкцій. (Слово модифікація означає видозміна, перетворення).
Всередині блоку записується параметр циклу, для якого вказуються йогопочаткове значення, граничне умова і крок зміни значення параметрадля кожного повторення. p>
Блок «зумовлений процес» використовується для вказівки звернень додопоміжним алгоритмами, що існують автономно у вигляді деякихсамостійних модулів, і для звернень до бібліотечних підпрограм. p>
p>
Малюнок. Приклад блок - схеми алгоритму знаходження максимального з двох значень. P>
Псевдокод p>
Псевдокод являє собою систему позначень і правил,призначену для однакової запису алгоритмів. Він займаєпроміжне місце між природним і формальним мовами. p>
З одного боку, він близький до звичайного природного мові, томуалгоритми можуть на нього записуватися і читатися як звичайний текст. З іншогострони, в псевдокоді використовуються деякі формальні конструкції іматематична символіка, що наближає запис алгоритму до загальноприйнятоїматематичного запису. p>
У псевдокоді не прийняті суворі синтаксичні правила для записукоманд, властиві формальним мовам, що полегшує запис алгоритму настадії його проектування і дає можливість використовувати більш широкийнабір команд, розрахований на абстрактного виконавця. Однак у псевдокодізвичайно є деякі конструкції, властиві формальним мовам, щополегшує перехід від запису на псевдокоді до запису алгоритму на формальномумовою. Зокрема, в псевдокоді, так само, як і в формальних мовах, єслужбові слова, зміст яких визначено раз і назавжди. Вони виділяються вдрукованому тексті жирним шрифтом, а в рукописному тексті підкреслюються.
Єдиного або формального визначення псевдокоду не існує, томуможливі різні псевдокоду, що відрізняються набором службових слів іосновних (базових) конструкцій. p>
Прикладом псевдокоду є шкільний алгоритмічну мову в російськійнотації, описанийв підручнику А.Г. Кушніренко та ін «Основи інформатики таобчислювальної техніки ». p>
Приклад запису алгоритму на шкільному алгоритмічній мові: алг Сума квадратів (АРГ цілий n, рез цілий S) дано | n> 0 треба | S = 1 * 1 + 2 * 2 + 3 * 3 + ... + N * n поч цел i введення n; S: = 0 НЦ для i від 1 до n p>
S: = S + i * i КЦ висновок "S =", S кон p> < p> Програмне подання алгоритму p>
Під час запису алгоритму в словесній формі, у вигляді блок-схеми або напсевдокоді допускається певний свавілля при зображенні команд. Разомз тим такий запис точна настільки, що дозволяє людині зрозуміти суть справиі виконати алгоритм. p>
Однак на практиці в якості виконавців алгоритмів використовуютьсяспеціальні автомати - комп'ютери. Тому алгоритм, призначений длявиконання на комп'ютері, повинен бути записаний на «зрозумілою» йому мовою. Ітут на перший план висувається необхідність точного запису команд, незалишає місця для довільного тлумачення їх виконавцем. p>
Отже, мова для запису алгоритмів повинен бути формалізований.
Такий мова прийнято називати мовою програмування, а запис алгоритму нацією мовою - програмою для комп'ютера. p>
Порядок розробки ієрархічної схеми реалізації алгоритмів p>
До основних методів структурного програмування відноситься, перш заза все, відмова від безсистемного вживання оператора безпосередньогоерехода і переважне використання інших структурованихоператорів, методи спадного проектування розробки програми, ідеїпокрокової деталізації та деякі інші угоди, касающіесся дисциплінипрограмування. p>
Будь-яка програма, відповідно до структурним підходом допрограмування, може бути побудована тільки з використанням трьохосновних типів блоків. p>
1. Функціональний блок, який на блок-схемі зображується у виглядіпрямокутників з одним входом і одним виходом: p>
функціональному блоці в мовах програмування відповідають операторивведення та виведення або будь-який оператор присвоювання. p>
У вигляді функціонального блоку може бути будь-яка зображенапослідовність операторів, що виконуються один за одним, що має одинвхід і один вихід. p>
2. Умовна конструкція. Цей блок включає перевірку деякогологічного умови (P), залежно від якого виконується або один
(S1), або інший (S2) оператори: p>
3. Блок узагальненого циклу. Цей блок забезпечує багаторазовеповторення виконання оператора S поки виконано логічне умова P: p>
При конструюванні програми з використанням розглянутих типівблоків ці блоки утворюють лінійну ланцюжок так, що вихід одного блокупід'єднується до входу наступного. Таким чином, програма має лінійнуструктуру, причому порядок проходження блоків відповідає порядку, вякому вони виконуються. p>
Така структура значно полегшує читання і розуміння програми, атакож спрощує доказ її правильності. Так як лінійна ланцюжокблоків може бути зведена до одного блоку, то будь-яка програма може, вЗрештою, розглядатися як єдиний функціональний блок з однавходом і одним виходом. p>
При проектуванні і написанні програми потрібно виконати зворотнеперетворення, тобто цей блок розбити на послідовність подблоков,потім кожен подблок розбити на послідовність більш дрібних блоків дотих пір, поки не буде отримано «атомарні» блоки, розглянутих вищетипів. Такий метод конструювання програми прийнято називати тих, що сходять
( «Згори вниз »). p>
При низхідному методі конструювання алгоритму і програмиспочатку розглядається усе завдання в цілому. На кожному наступномуетапі завдання розбивається на більш дрібні підзадачі, кожна підзадача, вкінцевому підсумку на ще більш дрібні підзадачі і так до тих пір, поки небудуть отримані такі підзадачі, які легко кодуються обраною мовоюпрограмування. При цьому на кожному кроці уточнюються все нові й новідеталі ( «покрокова деталізація »). p>
У процесі спадного проектування зберігається сувора дисциплінапрограмування, тобто розбиття на підзавдання здійснюється шляхомзастосування тільки розглянутих типів конструкцій (функціональний блок,умовна конструкція, узагальнений цикл), тому, в кінцевому підсумку,виходить добре структурована програма. p>
Автоматизація діяльності людини на основі алгоритмізації p>
Автоматизація супроводжує людське суспільство з моменту йогозародження. Вона внутрішньо притаманна його розвитку. У методології її визначаютьяк заміщення процесів людської діяльності процесами технічнихпристроїв. Цікавість змушувало наших предків вивчати навколишній світ. Яктільки вони пізнавали який-небудь елемент його, лінь штовхала їх до створенняпристроїв, які виконували б роботу за них. Навіть печерна людина, взявшипалицю в руки, звільнив себе від необхідності залазити на дерево. З кожнимновим відкриттям, людина знімав з себе яку-небудь обов'язок іперекладав її на підручні засоби, на тварин, потім на машини. p>
Сьогодні будь-яке, підприємство має справу з потоками різної інформації,які потребують швидкої та оперативної обробки. Кількість інформаціїзалежить в основному від розміру підприємства та виду діяльності, чим більшепідприємство, тим більше обсяг і рівень складності оброблюваноїінформації. Величезну допомогу тут надають сучасні комп'ютерніінформаційні технології, професійно розроблена комп'ютернаінформаційна система може істотно полегшити життя бухгалтерії такерівникам, дозволить вести оперативний облік на підприємстві швидко іточно, надасть широкі можливості аналізу, автоматизувавши обліковіоперації, позбавить від величезної кількості зайвої папери. p>
Проектування інформаційної системи є, мабуть, найважливішимелементом автоматизації діяльності підприємства. Правильно спроектуватисистему означає забезпечити б? більшу частину успіху всього проектуавтоматизації. Дуже частою помилкою є впровадження інформаційноїсистеми при відсутності будь-якої чітко сформульованої системиуправління. Тобто вислів «створити систему правління» сприймаєтьсяяк «впровадити щось комп'ютерне». Потрібно чітко усвідомлювати, що системауправління є первинною, а вже створення інформаційної системи на її основі,або, просто кажучи, її реалізація у комп'ютерному вигляді - вторинна. p>
Багато компаній вірять в те, що одна тільки автоматизація призведе дополіпшення фінансово-економічної ситуації, і починають зусилля з реалізаціїінформаційних систем безпосередньо з автоматизації, пропускаючикритичні кроки розуміння і спрощення своїх бізнес-процесів. Але нерідкоці процеси настільки невпорядковані, що загалом створюють враження хаосуна підприємстві. Як відомо, автоматизувати хаос далеко не просто, якщонеможливо. Тому перш ніж створювати інформаційну систему слідпереглянути систему управління в організації. Зміна бізнес процесівназивають реінжинірингом (business processes reengineering). Так, для початкупотрібно упорядкувати схему бізнес-процесів і систему управління організації вцілому: p>
. визначитися з організаційною штатною структурою, p>
. розробити механізм фінансово-економічного управління компанією p>
(у тому числі визначити центри відповідальності), p>
. зробити виділення основних технологічних потоків (процесів), p>
. розробити механізми організаційного управління технологічними потоками, p>
. на підставі створених механізмів управління сформувати технологію фінансового аналізу та управління діяльністю технологічних потоків. p>
Якщо будуть матися перераховані вище технології, буде значнолегше розробити інформаційну систему. Однак, часто доводиться спрощуватибізнес процеси на підприємстві, для того, щоб було простіше описати їх намовою комп'ютерів. p>
Організація - це набір правил і процедур. Інформаційна система цетеж набір правил і процедур, тому слід розуміти які інструкції тапроцедури якими замінити. Не слід також забувати про людський факторпри створенні інформаційної системи. По-перше, саме людям доведетьсяпрацювати з системою - одна працювати вона в будь-якому випадку не зможе. По -друге, службовці можуть поліпшити (або спростити) процеси, з якими вонищоденно зустрічаються. Автоматизація повинна відбуватися тільки після того,як службовці зрозуміють процес і приймуть рішення про необхідність автоматизації. p>
Після проведення формування чіткої системи управління, починаєтьсябезпосередньо процес проектування інформаційної системи. Важливо, щобв проектуванні системи брали участь по можливості всі співробітники, якібудуть з нею працювати. Це дозволить визначити невеликі особливості іприватні потреби в роботі кожного відділу організації, оскільки тількикористувачі майбутньої системи найкраще знають, що їм потрібно. p>
У проектуванні інформаційної системи також повинні брати участь їїрозробники, тобто ті, хто буде її створювати. До вибору розробникаінформаційної системи потрібно підходити дуже обережно. Основнимикритеріями у виборі розробника є досвід роботи в галузі створенняінформаційних систем, кількість успішно впроваджених даною компанієюсистем на російських підприємствах. p>
Фінансовий менеджер і керівництво підприємства повинні ставитися доавтоматизації, як до проекту, тобто визначити всі стадії, характеристик,часові рамки та бюджет. Основними етапами роботи над проектом завтоматизації є: p>
1. Проведення обстеження з метою опису бізнес процесіворганізації. p>
2. Розробка технічного завдання на систему автоматизації. P>
3. Розробка технічного проекту системи. P>
4. Розробка системи (іноді називають настройкою). P>
5. Різні стадії та етапи впровадження, дослідної та промисловоїексплуатації. p>
6. Виконання доробок відповідно до змінилися потребамиорганізації. p>
Результатом проектування системи є строго формалізованийопис як об'єкта її автоматизації, так і її самої - це і є алгоритмдіяльності підприємства, а значить і діяльності людей, які на ньомутрудяться. p>
Значення алгоритмів при вирішенні повсякденних завдань p>
Інформатика, як і арифметика, теж дає явно необхідні знаннядля виживання людини в сучасному світі. Наприклад, умінняпрограмувати домашню побутову техніку: відеомагнітофон (складаннясписку записуваних телепередач), магнітофон (складання спискузаписуваних доріжок аудіо-CD), стільниковий телефон (запам'ятовування номерів,встановлення параметрів, управління роумінгом, управління голосовою поштою),годинник і таймери в будь-якому побутовому приладі (виставлення і коректуваннячасу), мікрохвильові печі, кавоварки, хлебопечки, телевізори, нарешті,комп'ютери. p>
Тут під програмуванням розуміється складання плану подальшихдій домашнього приладу - складання алгоритму, запис цього алгоритмумовою приладу (кодування відповідно з доданою інструкцією) знаступним завантаженням складеної програми у комп'ютер (домашнього)приладу. p>
Нехай треба запрограмувати запис на відеомагнітофоні - на 4 каналі з
10.00 ранку до 11.25. Це програма в голові у людини кодується приблизнотак: p>
ПОКИ НЕ 10.00 - НІЧОГО НЕ РОБИТИ p>
ВСТАНОВИТИ КАНАЛ НОМЕР 4 p>
ВКЛЮЧИТИ ЗАПИС p>
ПОКИ НЕ 11.25 - НІЧОГО НЕ РОБИТИ p>
ВИМКНЕНО ЗАПИС p>
Далі ця програма повинна бути перекодовані на мовувідеомагнітофона: p>
ВИБРАТИ ВІЛЬНЕ МІСЦЕ p>
ВСТАНОВИТИ "ДАТА ЗАПИСИ" = СЬОГОДНІ p>
ВСТАНОВИТИ "ПОЧАТОК ЗАПИСИ" = 10:00 p>
ВСТАНОВИТИ "Закінчення ЗАПИСИ" = 11:25 p>
ВСТАНОВИТИ "НОМЕР ТЕЛЕКАНАЛУ" = 4 p>
Завантаження даної програми в відеомагнітофон полягає в натисканні на пультівідеомагнітофона відповідних кнопок для кожного рядка програми. p>
Комп'ютер - це такий дуже складний і універсальний домашній прилад.
Комп'ютерна програма є планом подальших дій комп'ютера такж, як програма домашнього приладу є планом подальших дійцього приладу. Висновок: програмування комп'ютерів нічим не відрізняється відпрограмування в побуті. p>
Чи може людина, що не пройшов ніякого курсу інформатики в школі,розібратися з цим набором сучасних домашніх помічників? Це дужеважке запитання. На нього не можна відповісти однозначно. Відомо, що людистаршого покоління стикаються з певними труднощами при проведеннінавіть елементарних дій з програмування сучасної домашньоїтехніки. Звичайно, простіше за все це пояснити старечим маразмом абовідсутністю сучасної техніки в будинках «літніх батьків». Але це не так
- Програмування можна вчити. А коли навколо все технічне оточеннястає програмованим - треба вчити! p>
Як навчити людину дізнаватися, чи правильно складена програма длядомашнього помічника? Для цього людині треба подати себе як «домашнімприладом »з повним набором функцій-інструкцій і виконати (« прокрутити »усебе в голові) складену програму. А приладів багато, кожен має свіймову, і доводиться постійно бути виполнітелем програм, складених нарізними мовами для різних приладів. p>
Програми з двох-трьох кроків можна просто запам'ятати і вважати своїмирефлексами: «хочу їсти - тисну кнопку два, коли загориться лампочка - можнаїсти ». Але жити, зазубрюючи всі потрібні програми, - не вийде.
Програмованих приладів так багато, інструкції до них так об'ємні, необхідніпрограми так довгі, запам'ятовувати команди на мовах приладів так лінь. Длятелевізора, наприклад, не можна благопріобресті рефлекс: НАТИСНУТИ КНОПКУ ОДИН,
Докрутивши РУЧКУ ДВА, повторити все спочатку ДЛЯ КАНАЛІВ 1-32, ЯКЩО
ТЕЛЕКАНАЛИ вже налаштовано, НІЧОГО НЕ РОБИТИ. Як мінімум в цій інструкціїтреба розуміти, як міняти номери каналів. p>
Без уміння програмувати різноманітні пристрої людині сьогодніжити важко, а завтра буде просто неможливо. p>
Роль інформаційних технологій сьогодні p>
Недаремно нинішній час багато хто називає «століттям прогресу». Прогресутехнічного, наукового, інтелектуального. Ми опинилися під впливомзнань, які породжують розвиток все нових сучасних технологій, розробкупродуктів, створення яких раніше вважалося неможливим, інтелектуальнерозвиток фахівців, що втілюють численні «розумні» ідеї в життя.
Спірним питанням, дебати за яким розпалюються все частіше, однак, по -як і раніше, виявляється питання про роль інформаційних технологій у розвиткуданого прогресу. Багато хто вважає, що Інтернет сприяє лишебезпечного збереження інтелектуальної власності, у той час якінші впевнені в тому, що функція інформаційних технологій набагато більшезначна ... p>
За останні 100 років людство зробило значний крок вперед.
Аналітики стверджують, що якщо б тими знаннями, які були використанів цьому столітті фахівцями з усього світу в різних галузях науки ітехніки, мали наші предки хоча б кілька століть тому, сьогодні насвоїх авто ми б вже точно їздили на чистій воді, а не на бензині, і зовсімне шляхами, а по повітрю. Найкращим поясненням такої ідеї послужили бточні статистичні дані, проте у разі підрахунку обсягувикористаних знань точні дані навести, зрозуміло, неможливо. Щож, звернімося хоча б до приблизними. p>
Наприкінці дев'яностих років XX століття значно зросла кількість заявок наотримання патентів на різні винаходи. У 1997 році, наприклад, у СШАїх налічувалося лише 124068, в 1998 - 163147, а в 1999 вже близько 170000.
Таким чином, лише за два роки зростання числа заявок виріс на 36%. Аотже, рівно на стільки збільшилась і кількість принципово новихрозробок. Сотні тисяч «розумних» книжок видаються щорічно, причому з року врік їх кількість все зростає. Автор одного з них, Роджер Хендрікс, назвавсвій твір «Економіка ідей». Саме так, на його думку, можнаохарактеризувати сьогоднішню економіку. p>
По чем-то з ним не можна не погодитися. У наші дні можна працювати ізаробляти гроші багатьма оригінальними способами, наприклад, продаючипатенти та ліцензії через Інтернет, ніж, до речі, займаються творці Веб -сайту The Patent & License Exchange (www.pl-x.com), які, фактично,перетворили інтелектуальну власність в продукт купівлі-продажу. Втім,вони не перші і не останні. Багато великих і дрібні компанії і фірмитісно зв'язали між собою два поняття: «інтелектуальна власність» і
«Інформаційні технології». Але ось оперують ними по-різному. P>
В результаті опитувань агентств березнякетингових досліджень з'ясувалося,що досить багато освічених людей впевнене в тому, що інформаційнітехнології зовсім не потрібні при вирішенні багатьох завдань, пов'язаних із застосуваннямі зберіганням знань, перетворених в «електронний формат». За їхнімитвердженнями впровадження інформаційних технологій обходиться дорого і спричиняєза собою ряд проблем. Саме тому багато хто намагається вдаватися до допомогисучасних розробок тільки у випадку захисту інформації, що зберігається віднесанкціонованого доступу до неї. Однак таку категорію людейсучасні експерти назвали старомодними. Ті ж, хто міркує більш
«Прогресивно» усвідомлюють, що інформаційні технології сьогодні значнополегшують життя всім, зокрема в питаннях роботи з інформаційнимиданими. Саме тому в даний час все більш активно розвиваєтьсядосить молодий напрямок «розробки програмного забезпечення дляуправління знаннями ». За допомогою таких систем практично будь-який сьогодніможе проконсультуватися в режимі онлайн з фахівцем, знайтицікаву інформацію в Мережі, відповісти на запитання, який переводив напротягом уже тривалого часу. Зрозуміло, з функцією «інформаційногосторожа »сучасні технології справляються також бездоганно (або майжебезперечно), але розуміти їх основну роль все-таки варто трохи по -іншому. p>
Взяти, наприклад, історію Texaco, керівнику групи інформаційногоуправління якої, Джону Олду, довелося ніс до носа зіткнутися зкорисністю інформаційних технологій в питаннях організаціїінтелектуальної підтримки працівників підприємства. p>
Пару років тому багато співробітників почали скаржитися на те, що іноді їмдоводилося стикатися з часом нерозв'язними завданнями, часто рішенняякі знали їх колеги. Однак у силу того, що компанія величезна, наз'ясування всіх подробиць часто йшло дуже багато часу. Олдзадумався над цим. Одного разу Джон зауважив, що співробітники Texaco дужеактивно користуються послугами електронної пошти. У ході листування вони часомперекидаються фразами, багато значущими для інших. Однак як зробититак, щоб корисна інформація виявилася доступною всім і при цьому ім'я їїавтора залишилося в тіні? Олд звернувся до свого друга, співзасновнику Giga
Information Group, який незабаром запропонував вирішення проблеми. Заснувавшикомпанію Tacit Knowledge Systems, він представив на ринок перший продукт --систему KnowledgeMail, яка могла знаходити в безлічі повідомленьключові слова і фрази, залишаючи при цьому ім'я автора повідомлення анонімним. Ітепер будь-який працівник, у якого виникла проблема з тим же свердлувальнимапаратом міг просто ввести в рядку запиту ключову фразу «застряглосвердло », а система сама вивчала базу даних і знаходила можливо наявнийвідповідь на його питання. p>
Рішення схожої проблеми прийшло в голову і фахівцям зінформаційним технологіям компанії Procter & Gamble, коли її працівники,розкидані по всьому світу, стали скаржитися на утруднений пошук ввеличезною Інтранет мережі підприємства, що цікавить їх информаци