Відкрити головне меню
Círculos Concéntricos.svg
Стаття «Алгоритм» входить до спільного для всіх мовних розділів Вікіпедії списку необхідних статей.
Її покращення й доведення до статусу вибраної є важливим напрямком роботи проекту.
Dobra6.png
Ця стаття належить до числа добрих. Див. сторінку обговорення. Статус надано 2 квітня 2010 року.
Рік 2010 2011 2012
Переглядів 17750 31159 39355

Зміст статтіРедагувати

vityok 15:37, 3 березня 2010 (UTC): Пропоную наступний зміст:

  1.   Історія
  2.   Визначення
    1.   Неформальне визначення
    2.   Формальне визначення
      1.   Машина Тюринга
      2.   Рекурсивні функції
      3.   Нормальні алгорифми Маркова
    3.   Рандомізовані алгоритми (недетерміновані)
  3.   Алгоритмічно нерозв'язні задачі (поліпшити посилання на джерела, перевірити та трохи доповнити)
  4.   Аналіз алгоритмів
    1.   Час роботи
    2.   Доведення вірності
  5.   Представлення алгоритмів (як описувати алгоритм, блок-схеми, алгоритмічні мови, мови програмування, скінченні автомати та діаграми станів, тощо)
  6.   Реалізація алгоритмів (в кремнії, програмування)
  7.   Приклади

Бажані темиРедагувати

Слід згадати про:

  • недетермінована машина Тюринга
  • стохастична машина Тюринга (для моделювання стохастичних алгоритмів?)
  • квантовий ком'ютер (щось нове, не всюди згадують про них)
  •   формальні методи (для доведення вірності)

КоментаріРедагувати

Стаття написана добре! Можна ще сказати про два правила Мугаммада, якими є шкільні формули:

1. Вирішення рівняння  :

 

2. Вирішення квадратного рівняння. --Борис Пряха 19:57, 19 березня 2010 (UTC)

Дякую за теплий відгук. На жаль, я помітив деякі мовні огріхи в статті й ще пару днів її притримаю а потім подаватиму на добру.
Як приклад вже наведено один "стандартний" арифметичний алгоритм — алгоритм Евкліда. Я так планував, що в якості додаткового прикладу було б бажано навести щось незвичне, наприклад, обчислення на квантових або хімічних (молекулярних) комп'ютерах, аби в читача було ширше уявлення про можливості та розмаїття реалізації алгоритмів.
Ще раз дякую--vityok 19:03, 21 березня 2010 (UTC)

Пропозиції щодо оформленняРедагувати

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

 
Блок-схема алгоритму визначення дієвідміни в дієслові

Volodimirg 12:35, 22 березня 2010 (UTC)

Дякую. Гадаю, ліпше замінити блок-схему в розділі "представлення", бо вона там потрібна, а дві блок-схеми на одну статтю виглядатимуть зайвими. Зображення на початку статті також можна замінити, лише альтернативу підібрати б...--vityok 12:43, 22 березня 2010 (UTC)

ЗображенняРедагувати

Пропоную додати декілька зображень. Ну хоча б фото Тюринга. А то стаття сирувато виглядає. --Вальдимар 21:16, 22 березня 2010 (UTC)

Пропоную зображення машини Тьюринга:   --Bunyk 22:25, 22 березня 2010 (UTC)

Додав фото Ади Лавлейс та анімацію зі схематичним зображенням роботи простої машини Тюринга.--vityok 15:16, 23 березня 2010 (UTC)

Деякі питання та зауваженняРедагувати

Гарна, велика, читабельна стаття. Навіть не знаю чи вправі я як новачок вносити тут свої рекомендації. Я ж бо навіть критерії такої номінації ще не читав... Однак:

Можна було б якось наголосити на тому, що МТ-обчислюваність, ЧРФ-обчислюваність, та нормальна обчислюваність еквівалентні. І ще, кожен алгоритм має номер, та існує кодування, що дозволяє поставити в еквівалентність номери для МТ, ЧРМ та НАМ.

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

Що таке РАМ-машина? В нас на теорії алгоритмів вчили поняття Машина з натуральнозначними регістрами. Може це регістрова машина?

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

І прикладів справді можна більше. З екзотичних... Може генетичні алгоритми? --Bunyk 22:25, 22 березня 2010 (UTC)

Звичайно ж можете рекомендації подавати: в решті решт, статтю ж не для одних вікіпедистів написано. Та і досвід у Вікіпедії не грає в питаннях наповнення статей жодної ролі.
Відповідатиму на висловлені зауваження далі "по пунктах"
  1. Трохи розширив про метод та алгоритм. Якщо коротко, то деякі книжки кажуть про метод (коли результат обчислень невірний з деякою ймовірністю), а інші називають це алгоритмом Монте-Карло.
  2. Про еквівалентність визначень згадано на початку розділу "Формальне визначення", може треба було окремим розділом, але тоді стаття ще більше розшириться...
  3. створив статтю РАМ-машина
  4. властивості алгоритмів було взято з книжки Кнута, а там дискретності чомусь не було. Додав дискретність з посиланням на "конспект лекцій..."
  5. еволюційні/генетичні алгоритми все ж таки близькі до електронних комп'ютерів, а хотілось би щось незвичне таке, я б обрав або квантові, або хімічні комп'ютери
Дякую за пропозиції, (-; запрошую до наступної ітерації обговорення нової версії статті.--vityok 14:34, 23 березня 2010 (UTC)
  1. Пропоную представлення алгоритмів переставити вище і тут вже згадувались генетичні алгоритми, непогано б було б згадати трішки про них - це доволі цікава тема. --Volodimirg 17:44, 23 березня 2010 (UTC)
  1. «На численні просьби трудящих» згоден з необхідністю навести генетичний алгоритм в якості додаткового прикладу.--vityok 09:18, 24 березня 2010 (UTC)

Задача зупинкиРедагувати

Тут слово будь-які, в статті проблема зупинки вказані, що докорінно міняє зміст. Як на мене, будь-які неправильно. --Дядько Ігор 18:45, 23 березня 2010 (UTC)

Справа в тому, що "проблема зупинки" не посилається на джерела інформації, а визначення з цієї статті посилається на:
  • «computability and complexity». Encyclopedia of computer Science and Technology. Facts On File. 2009. ISBN 978-0-8160-6382-6. «Given any computer program, can you determine whether the program will halt (end) given any input?» 
де вжито саме «given any input». Мені довелось взяти визначення з цієї енциклопедії, оскільки не вдалось знайти визначень так само доступно сформульованих в інших виданнях.--vityok 08:59, 24 березня 2010 (UTC)

Список ?Редагувати

У визначенні стоїть список, а не перелік і не послідовність, що породжує запитання у читача - який алгоритм складається з інструкцій, які можна виконувати в будь-якому порядку? Стаття не дає на це запитання відповіді. Я не знаю, чи це помилка. --Дядько Ігор 19:14, 23 березня 2010 (UTC)

мені здається, що список, на відміну від множини (англ. set), вже задає порядок слідування елементів. Той же Лісп явним чином розглядає програми як вкладені списки.--vityok 09:20, 24 березня 2010 (UTC)

Недоступне зовнішнє посиланняРедагувати

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

--DixonDBot 13:07, 7 січня 2011 (UTC)

Види алгоритмівРедагувати

@Владислав Карпік: Добридень! Дякую за вашу увагу до статті та хотів би попросити вказати джерела звідки взято інформацію. Тому поки що вашу правку буде відкинуто, але вона залишиться в історії та може бути відновлена щойно будуть вказані джерела інформацію. Дякую та сподіваюсь на розуміння.--vityok (обговорення) 11:14, 13 листопада 2017 (UTC)

@VictorAnyakin: Доброго дня. Ось посилання на джерела інформації: https://sites.google.com/site/infosite44e/Home/vstup/pravila-zobrazenna-blok-shem https://lnvk24.wordpress.com/2017/02/03/%D1%83%D1%80%D0%BE%D0%BA-19-%D1%82%D0%B8%D0%BF%D0%B8-%D0%B0%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%96%D0%B2/ http://distance.edu.vn.ua/metodic/pascal/5.htm

@Владислав Карпік: дякую, що вказали посилання на джерела інформації! думаю, що цю інформацію можна буде включити, але перед тим варто буде розібратись чи йдеться про "структуру" алгоритмів, про їхні "типи", чи про щось інше. Можливо вдасться знайти і авторитетніші джерела з цієї теми.--vityok (обговорення) 14:12, 15 листопада 2017 (UTC)
Повернутися до сторінки «Алгоритм»