Портал освітньо-інформаційних послуг «Студентська консультація»

  
Телефон +3 8(066) 185-39-18
Телефон +3 8(093) 202-63-01
 (093) 202-63-01
 studscon@gmail.com
 facebook.com/studcons

<script>

  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){

  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),

  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)

  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

 

  ga('create', 'UA-53007750-1', 'auto');

  ga('send', 'pageview');

 

</script>

Задача Ейнштейна

Тип роботи: 
Курсова робота
К-сть сторінок: 
36
Мова: 
Українська
Оцінка: 

Old Gold, розводить равликів.

У жовтому будинку курять Kool.
У центральному будинку п'ють молоко.
Норвежець живе в першому будинку.
Сусід того, хто курить Chesterfield, тримає лисицю.
У будинку по сусідству з тим, в якому тримають коня, курять Kool.
Той, хто курить Lucky Strike, п'є апельсиновий сік.
Японець курить Parliament.
Норвежець живе поруч з синім будинком.
Потрібно знайти: хто п'є воду? Хто тримає зебру?
 
1.2. Обгрунтування вибору середовища програмування
 
Для розробки програмного забезпечення мною вибрано мову програмування Pascal, оскільки Pascal - володіє потужними системами, які полегшують роботу по вводу-виводу. Дана мова програмування підтримує сучасні методи проектування програм. 
Мова програмування Pascal була розроблена професором швейцарського університету Николаусом Віртом в технічному інституті в Цюріху і опублікована в 1971 р Мова названа на честь французького вченого Блеза Паскаля, який розробив один з перших сумуючих пристроїв. Pascal призначався для навчання студентів програмуванню і став першою мовою, в якій знайшли відображення концепції структурного програмування, визначені Дейкстрою і Хором. Міжнародний стандарт мови Pascal був затверджений в 1982 р. Наступні вдосконалення мови зробили її однією з найпоширеніших у світі професійних алгоритмічних мов, тому вона найбільш зручний як перша мова програмування для навчання. Найбільш популярним є версії Turbo Pascal 6.0, Turbo Pascal 7.0 і модифікація Turbo Pascal 7.1.
додаткові кошти. Однак, для швидкого ознайомлення з мовою можна вивчити, як реалізовані в мові елементи, і на їх основі будувати програми. Наведемо короткий опис кожного елемента мови Pascal, які використовуються для розробки програми.
Дані. Це константи, змінні і структури, що містять числа (цілі і речові), текст (символи і рядка) або адреси (змінних і структур).
Операції. Операції здійснюють присвоювання значень, їх комбінування (складання, розподіл і так далі) і порівняння значень (рівні, нерівні і так далі).
Введення. Це означає зчитування значень, що надходять з клавіатури, з диска або з порту введення / виводу.
Умовне виконання. Умовне виконання передбачає виконання набору команд у випадку, якщо виконується (є істинним) деякий умова (якщо ця умова не виконується, то ці команди пропускаються або ж виконується інший набір команд) або якщо деякий елемент даних має деяке спеціальне значення або значення з деякого спектру.
Цикли. Завдяки циклам деякий набір команд виконується повторно або фіксований число разів, або поки є істинним деякий умова, або поки деякий умова не стало дійсним.
За програмне середовище був обраний розроблений усередині 80-х років фірмою "Borland" варіант Turbo Pascal. У даному варіанті цієї мови програмування реалізовано наступні можливості:
а) інтегроване середовище користувача;
б) додаткові можливості компілятора і вмонтований асемблер;
в) об'єктно орієнтовану оболонку для створення прикладних програм.
Система програмування Turbo Pascalє однією з найпопулярніших систем програмування у світі. Цьому сприяє простота та потужність мови програмування Pascal, що є основою системи. Система програмування Turbo Pascal забезпечує ефективність створення і відлагоджування програм. Різноманітні сервісні послуги, які надає програмна оболонка, являються інтегрованим середовищем Turbo Pascal. Для створення великих програм у Turbo Pascal передбачені засоби структурування, тобто, механізм підпрограм. Процедури і функції, як різновиди підпрограм, дозволяють розробляти добре структуровані програми. В таких програмах легко прослідковується основний алгоритм, вони простіші у відлагоджуванні і менш чутливі до помилок програмування. Всі ці властивості дозволяють розробляти великі та надійні програмні комплекси, зокрема, інформаційно-пошукові системи для різних предметних областей.
 
1.3. Теоретичні відомості
 
Для розв’язання задачі використовується дедуктивний метод, який полягає в тому, що у відповідності з правилами заносяться співвідношення у таблицю, послідовно виключаючи неможливі варіанти.
Крок 1.
За умовою норвежець живе в першому будинку (10). Не має значення звідки – зліва чи справа - ведеться нумерація. Нас цікавить тільки порядок будинків, а не напрямок, в якому вони нумеруються. Однак для зменшення невизначеності будемо вважати, що він живе в першому будинку зліва.
З (10) і (15) випливає, що другий будинок синій. Якого кольору перший будинок? Не зелений і не білий, тому що вони повинні стояти поруч (це випливає з 6-ї посилки і того, що 2-й будинок синій). Не червоний, бо там живе англієць (2). Тому перший будинок жовтий.
З цього випливає, що в першому будинку курять Kool (8), а в другому будинку тримають коня (12).
Що п'є норвежець, який живе в першому, жовтому будинку і курить Kool? Це не чай, оскільки чай п'є українець (5). І не кава, бо каву п'ють в зеленому будинку (4). І не молоко, яке п'ють в третьому будинку (9). І не апельсиновий сік, тому що людина, яка п'є сік, курить Lucky Strike (13). Отже, норвежець п'є воду, і це відповідь на перше питання загадки.
будинок12345
коліржовтийсиній ? ? ?
національністьнорвежець ? ? ? ?
напійвода ?молоко ? ?
сигаретиKool ? ? ? ?
тварина ?кінь ? ? ?
Крок 2
Тоді що ж курять в другому, синьому будинку, де, як ми знаємо, тримають коня?
Це не Kool, який курять в першому будинку (8).
Фото Капча