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

     

     

     

     

     

         
     
    Алгоритм і програма
         

     

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

    Алгоритм і програма

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

    Алгорітм1 - Одне з фундаментальних понять інформатики. Цим словом позначають точне і безвідмовне припис послідовності дій, що переводить автоматичне пристрій з початкового стану в результуюче. Тобто ми можемо вважати алгоритмом будь-яку інструкцію, якщо:

    її команди не допускають різних варіантів виконання;

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

    З цієї точки зору можна скласти, наприклад, алгоритм переливання з пустого в порожнє. Однак, на практиці алгоритми складають для вирішення тих чи інших завдань, тобто отримання необхідних результатів за заданими вихідними даними. Вид алгоритму, та й сама можливість його написання залежать від виконавця (це може бути і людина, і автоматичний пристрій), або точніше, від його системи команд (тобто набору інструкцій, які він "уміє" виконувати). Тому, надалі ми будемо користуватися таким визначенням.

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

    Якими властивостями повинен володіти алгоритм? Перерахуємо їх:

    діскретность2 - Алгоритм ділиться на окремі елементарні кроки;

    визначеність - Кожна команда однозначно визначає дію виконавця;

    кінцівку (результативність) - Алгоритм повинен завершаться за кінцеве число кроків.

    Крім цього, алгоритм може мати ще одним корисним (але не обов'язковим) властивістю - масовістю. Це означає, що він буде годиться не для однієї конкретного завдання, а для цілого класу схожих завдань.

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

    Існує багато різних способів запису алгоритмів: графічні (наприклад, у вигляді блок-схем), за допомогою природної мови, якими-небудь умовними знаками идр. Але якщо ми хочемо, щоб алгоритм був виконаний комп'ютером, він повинен бути обов'язково записаний на особливому мовою. Такий запис називається программой4, а мова - Мовою програмування.

    Ви знаєте, що вся інформація в комп'ютері представляється у вигляді двійкових кодів. У кодах, кожен з яких означав одне просте дію (начебто, "перенести число з однієї комірки пам'яті в іншу"), доводилося писати і програми для перших ЕОМ. Але це заняття дуже складна і копітка, а крім того, що вимагає глибокого знання особливостей конкретної машини. Тому були придумані мови програмування високого рівня. Програма на такою мовою - це послідовність команд, що позначаються словами природної мови або їх скороченнями. Кожна з них відповідає послідовності з десятків, а то й сотень машинних команд. У результаті запис виходить набагато більш компактною і зрозумілою.

    Але процесор не розуміє команд мов високого рівня, тому їх попередньо потрібно "перевести". Для цього є особливі програми - транслятори5.

    Зараз в світі існує безліч мов програмування, розрахованих на різні області застосування. Ми в нашому курсі будемо використовувати Лого6 - мова, спеціально створений для навчання основам програмування. Ця мова дуже простий (до речі, на відміну від професійних мов програмування, він дозволяє записувати команди російською мовою), але, в той же час, сприяє формування навичок, що дозволяють потім, при бажанні, без особливих проблем перейти до роботи з такими популярними мовами, як Сі або Паскаль. Особливо знаменитий мова логотип своєї "черепашачою графікою". Про те, що це таке, ми і поговоримо слідом чолі.

    Примітки

    Algorithmi (лат.) - перекручене ім'я математика IX століття аль-Хорезмі, який запропонував спосіб виконання арифметичних обчислень з багатозначними числами.

    Зауважимо, що підхід до визначення алгоритму як послідовності операцій - не єдино можливий. Крім такого - процедурного (імперативного), можливий і функціональний підхід, коли алгоритм розглядається як система функцій.

    Discrete (англ.) - що складається з окремих частин

    Formalis (лат.) - строго за встановленими правилами

    Programma (грец.) - розпорядження

    Translator (англ.) - перекладач

    Мова Лого (Logo, від грец. Logos - слово, думка) розроблений у 1972 р. Сеймуром Пейпертом (Массачусетський технологічний інститут, США). "Прародителем" його був найбільш відомий з мов функціонального програмування - Лісп, однак, у процесі розвитку Лого придбав ряд особливостей, що дозволяють використовувати при роботі з ним як функціональний, так і процедурний підходи.

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

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

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

     

     

     

     

     

     

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