Ази програмування і навчальні програми

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Р. Манекін

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

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

§ I. Загальні відомості про ЕОМ.

Історія ЕОМ налічує ось вже понад півтора століття. Біля витоків електронно-обчислювальної техніки стояли такі відомі інженери і дослідники, як Ч. Беббідж, А. Лавлейс (дочка Ч. Байрона), Дж. Буль, Ф. М. Слобідської, В. Я. Слонімський, І. Штоффеля, Ю. М. Дьяков, П.Л. Чебишов, Г. Холлеріт, Атанасов, Айткен, ін Перша ЕОМ, що володіє всіма компонентами сучасного комп'ютера (проміжної внутрішньою пам'яттю, програмним забезпеченням, інш. - Мова чекає про машину «EDSAC», винайденої Дж.Еккертом і Дж.Моучлі) була створена в 1947 р. в Пенсильванському університеті (Англія). З тих пір змінилося вже три покоління ЕОМ, кожне з яких відрізнялося від іншого цілим набором технічних характеристик. А саме:

I. своєї елементної базою [1]

2. швидкодією [2];

3. об'ємом оперативної пам'яті [3]

4. математичним забезпеченням;

5. зовнішніми пристроями [4], [5], інш,

Сьогодні існує вже кілька видів і незліченна кількість модифікацій (типів) ЕОМ, а загальний обсяг парку ЕОМ перевищує 109 машин. [6]

Більшість ЕОМ працює на основі двійкової системи числення. [7] Що це таке?

Двійкове навивається така система числення, де є тільки дві цифри - нуль і одиниця.

Чому винахідники ЕОМ відмовилися від звичної нам десяткової системи і перейшли на іншу?

Справа в тому, що електронні системи, в яких електричний струм може знаходитися в двох станах (або він є в ланцюзі, або його немає), найбільш прості і надійні. Разом з тим навіть з допомогою двох цифр - 0 і 1 - можна записувати числа будь-якої величини, складати їх, множити і ділити. Будь-яке повідомлення, найскладніше, може бути виражене в двійковому коді у виді серії відповідей типу «так» і «ні».

(Якщо повідомлення записано словами, можна знайти кожне слово в словнику, задаючи такі питання: чи перебуває воно в першій половині словника - так чи ні? Далі: чи перебуває воно в першій половині цієї частини - так чи ні? І так далі. І в цьому випадку слова буде відповідати ланцюжок чисел типу 100111001. Для того, щоб зaкодіровать слово в словнику у чверть мільйона слів, достатньо щонайбільше вісімнадцяти питань з відповідями 1 або 0 (оскільки 218 більше 250 тис)).

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

Мови ассемблерного типу безпосередньо «переводять» інструкції програмістів в машинні команди. (Машинні команди різні для різних типів ЕОМ. Для їх написання потрібно добре знати «пристрій» кожної конкретної машини, що з неминучістю відволікає фахівців від вирішення завдань змістовного характеру).

Алгоритмічні мови призначені для «проміжного спілкування фахівців та електронно-обчислювальних машин. Щоб машина могла «розуміти» алгоритмічні мови, в пам'яті ЕОМ постійно зберігаються т.зв. «Транслятори з мов програмування» - спеціальні програми-»перекладачі» на мову машинних команд.

Серед мов високого рівня розрізняють процедурно-орієнтовані і проблемно-орієнтовані. До процедурно-орієнтованим зазвичай відносять універсальні мови (FORTRAN, PL-1, PASKAL, інш.); Проблемно-орієнтовані мови призначені для вирішення вузько спеціальних завдань. Багато універсальні мови програмування часто використовують для вирішення однотипних задач. Так, FORTRAN застосовується при веденні обчислювальних розрахунків, PASKAL - для вирішення економічних завдань, GPSS називають «мовою моделювання», BASIС вважається мовою, що спрощує процес користування ЕОМ.

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

Далі. Елементарні операції по роботі з пристроями ЕОМ, з управління її ресурсами - все це операції дуже низького рівня. Робота користувача на ЕОМ складається з декількох сотень або навіть тисяч таких операцій. Звичайно, описувати кожну з них спеціально в комп'ютерних програмах дуже незручно. Тому більшість сучасних електронно-обчислювальних машин мають «вбудованою» в пам'ять універсальної комп'ютерною програмою, яка здійснює управління пристроями ЕОМ, розпоряджається її ресурсами (оперативною пам'яттю, інш.), Запускає інші прикладні програми на виконання і т.д.

Подібні програми називаються операційними системами [8]. Основне призначення операційних систем полягає в тому, щоб приховати від користувача складні і непотрібні подробиці управління машиною і надати йому зручний інтерфейс (тобто спосіб спілкування з її пристроями).

Взаємодія користувача ЕОМ з операційними системами побудовано за принципом діалогу. Практично це виглядає так: користувач набирає на клавіатурі відповідну команду - операційна система виконує його інструкцію. Такий спосіб «спілкування» користувача і ЕОМ ненаглядний і недостатньо зручний, бо користувач не має можливості коригувати свої дії. Тому програмісти часто, разом з операційними системами, вводять у пам'ять ЕОМ і т.зв. «Програми-оболонки». Функція цих програм полягає в тому, щоб виводити на екран монітора ЕОМ опису дій, які виробляють операційні системи. За допомогою «програм-оболонок» можна переглядати що містяться в пам'яті комп'ютера каталоги програм, копіювати програми, запускати їх на виконання, ін [9]

При побудові комп'ютерних програм прийнято дотримуватися певних правил [10].

А саме: створюючи ту чи іншу комп'ютерну програму, слід враховувати тип ЕОМ, для якої вона призначена, програмне середовище, в якій вона повинна існувати, образотворчі засоби обраного Вами мови програмування;

при програмуванні потрібно строго дотримуватися синтаксису обраного мови програмування; уникати використання нестандартних та машінозавісімих конструкцій;

програмування має кілька етапів: постановка задачі, складання алгоритму розв'язання задачі, побудова блок-схеми, написання програми. Початківець програміст повинен дотримуватися принцип поетапності програмування;

при складанні великих програм необхідно дотримуватися принципу модульності, розпорядчого розбиття тексту програми на окремі логічно завершені частини - підпрограми. Наявність підпрограм дозволяє легко виправляти допущені помилки, широко використовувати пакети прикладних програм, тощо.

5. будь-яка складена Вами програма повинна бути записана так, щоб її без проблем міг прочитати інший програміст. Тому найбільш вдалі комп'ютерні програми завжди забезпечені коментарями, різними довідниками, інш.

Дотримання цих простих правил зробить створені Вами програми ефективним засобом як навчання, так і дослідження.

* * *

Що ж. Будемо вважати, що Ваше перше знайомство з КОМП'ЮТЕРОМ відбулося? Чудово! Тоді почнемо знайомитися з ним ближче. Але тільки от ще що ... Для того, щоб навчитися користуватися комп'ютером, потрібно працювати на ньому. Найчастіше при проведенні історико-філософських досліджень використовуються персональні комп'ютери. Наприклад, типу IBM РC. Якщо у Вашому комп'ютерному класі є ці машини - не соромтеся! Сідайте за клавіатуру! І давайте приступимо до роботи.

§ 2. Що таке програма?

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

Комп'ютерним програмам, на відміну від маси інших (наприклад, програми спецкурсу з історії філософії), властива строга формалізація. Тобто кожен наш крок має бути в ній виражений визначено і несуперечливо. Таку можливість нам дають сучасні мови програмування. Найбільш простим для засвоєння зазвичай вважається BASIС, і тому почнемо знайомство зі створенням програм, спираючись на еtot мову.

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

Отже, запам'ятаємо, що оператор PRINT - означає - друкуй. Оператор GOTO - означає - йди на (таку-то рядок). По-англійськи ми б написали GO ТО, але це BASIC, і тому запам'ятайте, будь ласка, правильне написання на BASIС.

Оператор RUN запускає програму, тобто змушує її реалізовуватися.

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

1. PRINT «Як Вас звати?»

2. GOTO

Отже, наша перша програма написана. Відзначимо також, що, якщо ми хочемо, щоб команда PRINT була виконана, текст, наступний після цього оператора, необхідно взяти в лапки (це елемент синтаксису BASIС). І ще одне - при наборі програми в кінці кожного рядка натискайте клавішу ENTER .. Вона, по-перше, забезпечить Вам запам'ятовування комп'ютером цього фрагмента програми, а, по-друге, переведе рядок.

Тепер запустимо програму. Команда запуску, як ми пам'ятаємо-RUN. Набираємо RUN ... І отримуємо нескінченну низку питань «Як Вас звати?»

Давайте перервемо низку, натиснувши на клавішу ЕSСАРE (вона зліва вгорі клавіатури), і розберемося як працює наша програма. У першому рядку програми ми вказали комп'ютера, що хочемо, щоб він вивів на дисплей (тобто екран монітора комп'ютера) питання «як Вас звати?». Але не відразу, а після запуску програми - це теж необхідно засвоїти. У другому рядку ми дали команду комп'ютера перейти знову до першої рядку. І, таким чином, вийшло замкнуте коло. У програмуванні він називається «цикл», і надалі ми будемо його використовувати.

Якби ми написали тільки перший рядок і відразу запустили прогpaмму (можете спробувати це зробити), то на дисплеї з'явився б тільки одне питання «Як Вас звати?», І програма би завершилася. А оператор goto перетворює процес виконання програми в нескінченний (поки включений комп'ютер і працює ця програма).

Ви скажете, що у наведеній програмі немає ніякого сенсу. Що ж, Ви, ймовірно, мають рацію. Давайте подумаємо, як надати сенс нашій програмі. Ви напевно читали Платона. І знаєте, що основною формою його творів був діалог. І це не випадково. Здавна відомо: кращим способом викладання навчального матеріалу є діалог Вчителі та Учня.

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

У BASIC є конструкція, яку можна виявити і в англійській мові. Мова йде про конструкції ЯКЩО ... ТО ... ІНАКШЕ. Або, по-англійськи, IF ... THEN ... ELSE. Ця конструкція називається «умовний перехід». Вона може реалізовуватися або в повному вигляді, або в усіченому: IF ... THEN ... (Тобто ЕСЛІ. .. ТО ...). Поки запам'ятаємо цю конструкцію і перейдемо до способу подання інформації, що зветься «змінними».

Для того, щоб обробити інформацію, потрібна не лише програма і комп'ютер, потрібна і власне інформація. У комп'ютер інформація зазвичай вводиться у вигляді так званих «змінних». Змінні і складають вихідні дані, які обробляє машина. Змінні бувають різних типів. Є логічні змінні - коли в комп'ютер вводиться інформація типу ТАК чи НІ. (У або N); є числові змінні, тобто змінні, виражені яких-небудь числом; є текстові змінні, виражені буквою або текстом.

Щоб розрізняти змінні один від одного, їм присвоюють імена. Ім'я змінної має починатися з букви (це обов'язково). Якщо змінних багато, то, щоб не заплутатися, їм дають такі імена, щоб відразу було ясно призначення змінної в програмі. Давайте створимо невелику програму з використанням змінних. Але спочатку запам'ятаємо, що команда для введення змінних позначається так - INPUT.

Цей оператор призначений для того, щоб змінна вводилася студентом за допомогою клавіатури. Наприклад, якщо ми складемо таку програму, де будемо питати студента, в якому році народився Платон. Отже створимо змінну year, але спочатку поставимо запитання:

PRINT «У якому році народився Платон?»

INPUT year

PRINT «Ось це так!»

END.

Спробуйте набрати ату програму і подивіться, як вона працює. Сподіваюся, Ви не забули, що запускається програма командою RUN.

Після запуску програми на дисплеї з'явилося питання: «В якому році народився Платон?» І трохи нижче знак питання. Знак питання показує, що машина чекає від Вас введення з клавіатури якого-небудь числа. Після введення в комп'ютер числа (наприклад, 428 - Платон народився 427 (428 р. до н.е.; після введення числа не забудьте натиснути ENTER) комп'ютер виведе на дисплей фразу «Ось це так!». І робота програми закінчиться. Як Ви думаєте, чому? Правильно, тому, що після виконання приписи на третьому рядку, машина звертається до четвертої, а там стоїть оператор END, що показує, що на цьому етапі програма закінчена. Запам'ятайте про всяк випадок команду END і, якщо захочете, знову запустіть програму командою RUN.

А тепер питання. Чи можна зробити цю програму нескінченної? Щоб вона весь час запитувала про рік народження Платона і, отримавши відповідь, знову їм цікавилася? Подумайте, ми про це вже говорили.

Р.S. У цій програмі, як Ви можете переконатися, ми не врахували деяких обставин. Ну, наприклад, як вона себе поведе, якщо Ви помилково або з цікавості введете літерні символи або натиснете на яку-небудь іншу клавішу. Спробуйте і подивіться на реакцію комп'ютера. А надалі, коли Ви краще освоїте програмування, подумайте, як Вам описати в програмі всі ці випадки. Упевнений, Ви швидко переконаєтеся, що це зовсім не важко!

§ 3. Чи може комп'ютер оцінити висловлювання?

Тепер давайте ускладнимо нашу програму, щоб вона могла аналізувати наше висловлювання. Почнемо, як завжди, з самого простого. Візьмемо нашу останню програму і злегка її доповнимо. Тільки ось що. Давайте змінимо її нумерацію на порядок. Тобто замість того, щоб нумерувати рядки 1, 2, 3, 4 будемо нумерувати 10, 20, 30, 40. Що це нам дасть? А те, що структура програми стане більш пластичної. Наприклад, якщо раніше між першим і другим оператором ми нічого не могли вставити, так як нумерація BASIC (на відміну, скажімо, від FOCAL) не визнає дробових чисел, то при новій системі ми зможемо легко вставити між 10-м і 20-го рядка цілих дев'ять рядків. Тобто програма стає як би «дихаючої».

Отже, починаємо доповнювати нашу програму. Давайте зробимо так, щоб вона давала різну реакцію на різні цифри, які Ви в комп'ютер. У принципі ми можемо зробити, щоб вона реагувала на кожне розходження, але для простоти давайте домовимося так. Якщо введене число буде більше 500, то відповіддю буде «Ось це так!», Якщо число, що означає рік народження Платона, буде в межах від 400-500 включно, то комп'ютер відреагує такий реплікою: «Як добре Ви знаєте історію філософії!». При введенні числа в межах від 300 до 400 відповідь буде виглядати так: «Ну, це не зовсім точно», від 200-300 - «Ви, ймовірно, обмовилися!», Нарешті, всі числа менше 200 викличуть у комп'ютера реакцію: «Цього не може бути! ». Ну а тепер, якщо не заперечуєте, приступимо до побудови програми.

Не забувайте, що нумерація рядків v нас тепер буде через десяток, і що ми тепер будемо використовувати оператори IF ... THEN ... ELSE. Давайте подивимося, що у нас вийшло:

10 PRINT «У якому році народився Платон?»

20 INPUT year

30 IF year> 500 THEN PRINT «Ось це так!»

40 IF year> 400 & year <500 THEN PRINT «Як добре Ви знаєте історію філософії!».

50 IF year> 300 & year <400 THEN PRINT «Ну, це не зовсім точно»

60 IF year> 200 & year <300 THEN PRINT «Ви, ймовірно, обмовилися!»

70 IF year <200 & year THEN PRINT «Цього не може бути!»

80 END.

Ви, напевно, відразу звернули увагу, що ми використовували ще одну команду. Це оператор AND, то є «і». Значення його очевидно. Скажімо, проаналізуємо 40-й рядок програми. Її можна описати так: якщо введене число, що означає рік народження Платона, дорівнює або більше 400 і, в той же час, менше 500, то друкуй: «Як добре Ви знаєте історію філософії!»

Якщо ж введене число не відповідає умові, заданому в 40-му рядку, то комп'ютер починає перевіряти на відповідність наступну, тобто 50-й рядок і т.д.

Ну а тепер давайте запустимо програму (команда запуску RUN). Спочатку постало питання: «В якому році народився Платон?» І на наступному рядку з'явився знак питання, що показує, що комп'ютер чекає від нас введення відповіді з клавіатури. Припустимо, ми ввели число «428». Наша програма починає його аналізувати. Перевіряє, чи відповідає введене число умові, заданому в 30-му рядку, тобто більше воно 500. Якби умова була виконана, то на дисплеї з'явилася б вже знайома нам рядок «Ось це так!». Але 428 менше 500, тому комп'ютер переходить до 40-му рядку програми.

У 40-му рядку здійснюється перевірка - чи знаходиться наше число в межах від 400 до 500. Так як наше число - 428 - знаходиться саме в цих межах, на дисплеї з'являється репліка - «Як добре Ви знаєте історію філософії!» Далі комп'ютер послідовно перевіряє: не відповідає чи наше число інших умов, заданим в рядках 50,60,70. Але такої відповідності немає, і тому машина доходить до 80-го рядка програми і згідно з її розпорядженням END припиняє роботу. Якщо ми знову захочемо запустити цю програму, то знову повинні дати команду RUN.

А тепер питання, як нам зациклити програму? Тобто зробити так, щоб відреагувавши на відповідь, машина знову (автоматично) задала нам питання, нагадаємо, що найкраще це зробити, використовуючи оператор (команду) goto.

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

Тільки спочатку домовимося, що змінну імені ми позначимо NAME, а так як вводити з клавіатури потрібно літерні символи, то в кінці імені змінної ми повинні будемо поставити значок долара $, щоб машина зрозуміла, що мова йде про слово, а не про число. Отже, домовилися, наша змінна буде виглядати так:

NAME.

10 PRINT «Добрий день! Як Вас звати? »

20 PRINT NAME $

30 PRINT «Яке прекрасне ім'я!»

40 PRINT «Покличте, будь ласка, кого-небудь ще».

50 goto 10

Як Ви, напевно, встигли помітити - тут ми зациклилися програму. І вона здатна працювати незліченну кількість разів, до тих пір, поки комп'ютер не відключать. Ми можемо внести в цю програму корективи, якщо, звичайно, будемо вважати за необхідне. Ну, наприклад, ми хочемо, щоб на певні імена ця програма реагувала по-особливому. Скажімо, нам дуже подобається ім'я Ірина. Нехай воно і в програмі буде виділено з ряду інших. Для цього нам потрібно задати в програмі необхідна умова. Виглядати це буде приблизно так: якщо (IF) змінна (NAME $) буде дорівнює «Ірині», то (THEN) друкуй (PRINT) «Це ім'я приводить мене в захват!».

Ця умова цілком вміститься в одному рядку. А рядок ми помістимо де? Правильно, між 20-й і 30-й рядком. Нехай номер цього рядка 25.

10 PRINT «Добрий день! Як Вас звати? »

20 INPUT NAME $

25 INPUT «Ірина» THEN PRINT «Це ім'я приводить мене в захват!»

30 PRINT «Яке прекрасне ім'я!»

40 PRINT «Покличте, будь ласка, кого-небудь ще».

50 goto 10

Запустіть програму і подивіться, що у Вас вийшло. А тепер подумайте, чи можна зробити так, щоб у разі введення імені «Ірина», програма повідомляла лише про захваті і не друкувала «Яке прекрасне ім'я!» (Але друкувала її у всіх інших випадках). Підказка - тут потрібно використовувати оператор ELSE. Але де і як? Подумайте!

§ 4. Постановка завдання

Ну, а тепер, після того, як ми отримали деяке уявлення про програмування, поговоримо про те, що потрібно для того, щоб «пояснити» своє завдання.

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

Коли ми з вами складали попередні програми, ми зрозуміли, що комп'ютер «розуміє» ряд команд (наприклад, «друкуй», «перейди до рядка такий-то», «якщо», «то», «інакше», «кінець», «ввести символ»). Набір цих команд (загальна їх кількість в BASIC приблизно сорок-п'ятдесят) становить мову, який «розуміє» комп'ютер. Так от, на цій мові ми і повинні описати всі наші дії.

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

Проілюструємо цю думку прикладом.

Тут вже не раз згадувалося ім'я Платона. Давайте візьмемо один з його діалогів, скажімо, діалог «Тімей» (Див. Платон. Соч.: У 3-х т. T.3. Ч.IM I97I. C.455-543) і спробуємо на основі етoгo твори створити програму .

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

Отже, беремо діалог Платона «Тімей», уважно читаємо його, обдумуємо, які питання взяти з цього твору, в якій формулюванні, в авторській або власної. Підбираємо відповіді на ці питання, як правильні, так і не дуже. Розставляємо ці питання в певному порядку, встановлюючи, який буде першим, який другим і так далі. І після цього починаємо розробляти алгоритм програми.

Давайте ж підберемо ці питання. Щоб програма не була для нас дуже великий, тому що ми ще початківці програмісти, зупинимося на п'яти питаннях.

А) Перше питання буде виглядати так:

«Чи містить діалог Платона Тімей концепцію Космосу як живої істоти, обдарованого розумом?»

Далі ми повинні запропонувати якийсь вибір відповідей, так як всі можливі варіанти ми не можемо уявити самі і, відповідно, зал ожити в маши ну. Давайте для простоти зупинимося на трьох варіантах. Перший (назвемо його «1») хай буде невірний, другий («2»)-правильний, третім буде «не знаю» («3»). Враховуючи варіант «А», ми даємо можливість студенту не погодитися з першими запропонованими і ознайомитися з точкою зору самого Платона.

Якщо Ви знайомі зі змістом діалогу Платона «Тімей», то напевно скажете, що найпростіше варіанти відповідей висловити таким чином:

Ні

Так

Не знаю

А тепер спробуйте збагнути, що машина повинна буде зробити (що потрібно змусити її зробити) у разі, якщо студент вирішить натиснути клавішу «1» або «2» або «3».

Оскільки відповідь «1» (Ні) неправильний, давайте зробимо так. Видамо діагностику відповіді:

«Ви помилилися, подумайте ще раз!»

А потім повернемо студента до першого питання з тим, щоб дати йому можливість відповісти правильно. (Зауважимо, що в цій програмі наше завдання навчити студента, а не проконтролювати його знання!) Правильність другий відповіді (Так) сподіваюся, прозора, і тому ми переведемо студента, що натиснули другий клавішу, до другого запитання Чи ні, давайте, щоб у нього не залишалося сумнівів в солідній глибині власних знань спочатку повідомимо йому, що відповідь вірний, а потім запропонуємо наступне питання («Б»).

У тому випадку, якщо студент натисне на клавішу «3», тобто віддасть перевагу варіант «не знаю», ми дамо таку діагностику:

«Почитайте, будь ласка, розділи 29е-31в діалогу Платона Тімей».

(В принципі, тут можна навести і сам зміст цих розділів).

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

Б) наступне питання, якщо не заперечуєте, буде виглядати так:

«Ототожнював чи Платон поняття Космос і Людина

I. Так

2. Ні

3. Не знаю.

Перша відповідь невірний. Тому ми пред'являємо студенту, натиснувши клавішу «1», таку репліку:

«Це спотворення думки Платона. Ототожнення понять Людина і Космос характерно для філософії пізнішого часу. Подумайте, будь ласка, знову ».

А потім, як Ви вже, напевно, здогадалися, ми повертаємо студента до питання «Б».

Другий відповідь правильна. Тому, видавши позитивну діагностику («Відповідь вірний»), переведемо студента до питання «В». А втім, навіщо така сухість? Давайте прагнути створювати ілюзію діалогу, може бути, відповімо так:

«Ви маєте рацію, і я з задоволенням про це повідомляю. Приємно поговорити з розумною людиною ».

Так, мабуть, так краще. І тепер перейдемо до третього варіанту. Тут діагностика буде наступна:

«Подивіться, будь ласка, розділи 41а-47е діалогу Платона Тімей».

(Тут також було б доречно навести зміст зазначених розділів).

В) Наступне питання, яке ми з Вами пред'явимо студенту (якщо Ви не згодні, то надалі можете легко замінити його на будь-який інший) буде мати такий вигляд:

«Є думка, що спеціальний нарис вчення Платона про космічні функціях розуму включає в себе концепцію гармонійного членування Космосу - вчення про взаємні відстанях зірок і деяких законах Природи. Чи згодні Ви з ним?

Так

Ні

Не знаю ».

Для різноманітності ми вирішили правильну відповідь помістити під номером один, тому в разі натискання на клавішу «1» нехай машина видасть репліку:

«Блискуче! Я від Вас іншої і не чекав ».

І потім запропонує студенту питання «Г».

У разі якщо студент відповість «Ні» (клавіша «2»), діагностика буде наступною:

«Ви не маєте рації. Перечитайте, будь ласка, розділи 3Iв-37С діалогу Платона Тімей. Особливу увагу зверніть на розділи 35в-37С названого твору ».

Якщо ж студент пошлеться на незнання («3»), то зазначимо йому місце в першоджерелі, прочитавши яке, студент зможе правильно відповісти на це питання. (У даному випадку доречно запропонувати студенту ознайомитися з розділами 31в-37в діалогу Платона «Тімей»).

А потім знову повернемо студента до того ж питання.

Г) Останнє питання ми поставимо трохи інакше, щоб Дати Вал уявлення про можливості застосування і інших методик:

«Чи включає в себе спеціальний нарис вчення Платона про космічні функціях розуму наступні концепції?

Вчення про Час та його органах.

Вчення про вищі класи живих істот або стали богів.

Концепцію про з'єднання світового тіла і світової душі.

Вчення про найбільш загальні закони людського існування?

Не знаю ».

Зауважимо, що ми зважилися запропонувати варіанти відповіді, спираючись

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

Однак перейдемо до реплік на різні варіанти. Перший варіант неправильний. Тому репліка буде наступною:

«Ваша відповідь неточний. Вчення про Час та його органах входить до загального, але не в спеціальний нарис вчення Платона про космічні функціях розуму. Спробуйте порівняти змісту розділів 31-37С і 37С-39е діалогу Платона Тімей. Потім перечитайте розділи 29е-47е названого твору і спробуйте відповісти ще раз ».

(Остання вимога необхідно для того, щоб студент міг уявити місце названих доктрин Платона в контексті його вчення про функції космічного розуму).

Після чого ми повертаємо студента до питання «Г». Якщо він вважатиме за краще відповідь «2» (невірний), то репліка буде такою:

«Подумайте ще раз. Раджу перечитати розділи 31-37С і 39e-40d діалогу Платона Тімей. Потім прочитайте розділи 29е-47е і спробуйте відповісти знову ».

І знову повертаємо студента до питання «Г». У тому випадку, якщо студент визнає правильним відповідь «3», він не помилиться. Ми відзначимо його успіх, підкріпимо його думкою Платона і переведемо до питання «Д»: «Ви маєте рацію, і я радий, що Ви впоралися і на цей раз (власне я від Вас і не чекав іншого»).

(Тут, як і раніше мало б сенс привести зміст розділів 31в-37С діалогу Платона Тімей).

Натиснувши на клавішу «4», студент отримає роз'яснювала репліку, і йому знову буде пред'явлений питання «г». Репліка буде виглядати таким чином:

«Ви помилилися. Порівняйте зміст розділів 31в-37 і 41a-d діалогу Платона Тімей. Перечитайте також розділи 29е-47е названого твору. Будь ласка, спробуйте відповісти ще раз ».

У тому випадку, якщо студент спробував відговоритися незнанням, наше завдання дати йому це знання, тому ми видамо йому таку репліку:

«Познайомитеся з змістом розділів 36 - 37С діалогу Платона Тімей».

(Ще краще, якщо тут буде наведено зміст цих paзделов і вказана література, ознайомившись з якою студент зуміє правильно відповісти на поставлене питання).

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

Д) П'ятий питання знову буде не такою, як попередні. Тут студенту буде надана можливість дізнатися про композицію Діалогу Платона «Тімей», або повернутися до початку і повторити все наново, або, якщо він вважає, що всі засвоїв і відомості про композицію діалогу «Тімей» йому нецікаві, закінчити роботу з програмою, Отже п'яте питання:

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

Повернення до початку програми.

Відомості про композицію діалогу Платона Тімей.

Кінець ».

У випадку, якщо учень натисне клавішу «1», то ми, по його бажанню, повернемо його до питання «А», і він зможе попрацювати з програмою заново (можливо йому буде цікаво, які заперечення він отримає, натиснувши на яку-небудь іншу клавішу). Якщо студент натисне на клавішу «3», то робота програми буде припинено.

Якщо учень виявить цікавість до композиції діалогу Платона «Тімей», то на дисплеї з'явиться наступне: «Композиція діалогу Платона Тімей така:

1) Вступ 2) Функція космічного розуму (розділи 29е-47е)

3) Функції первинної матерії як необхідності (розділи 47е-69а).

4) Сукупна дія розуму і матерії в освіті людського організму (розділи 69-92В). 5) Висновок (розділ 92с).

1) Повернення до початку програми.

2) Кінець ».

І тут ми теж пропонуємо обучаемому зробити вибір: чи хоче він продовжити роботу з програмою (клавіша «1») або припинити (клавіша «2»).

§ 5. Побудова блок-схеми

У попередньому розділі ми показали, як потрібно ставити завдання і опрацьовувати її до найдрібніших деталей - останнє називається - складати алгоритм програми. Справа ця цілком посильну навіть тим, хто ніколи не стикався з програмуванням. Єдина умова-це добре знати предметну область (тобто розбиратися у змістовній частині). Втім, є, ще одне - здатність мислити логічно, щоб різні частини програми не суперечили один одному. Але ми вважаємо, апріорі, що етa здатність у Вас є.

Але чи завжди зручно так розписувати програми? Не зручніше Чи можна уявити її графічно? Ми інтуїтивно відчуваємо, та й знаємо з досвіду, що все те, що можна охопити як єдиний інформаційний образ, сприймається краще. Є цьому і пояснення.

Дані сучасної археології говорять про те, що якщо ми співвіднесемо на часовій шкалі відстань від появи людини виду «хомо сапієнс» до створення ним писемності з відстанню від часу створення писемності до наших днів, то ми побачимо, що перше відноситься до другого як 99 до 1 (та й то в кращому випадку). Іншими словами, людство має набагато більший досвід роботи з інформаційними образами матеріальних об'єктів, ніж з абстрактними суто інформаційними образами (рахунок, писемність і т.д.).

«Цей історичний факт, - пише відомий фахівець в області інформатики Г. Р. Громов [11] - в значній мірі пояснює виграш в ефективності розв'язання абстрактних інформаційних завдань, який дають в даний час засоби машинної графіки. Графічний дисплей по суті «матеріалізує» абстрактні інформаційні образи і дозволяє, таким чином, включити в процес вирішення завдання найбільш потужні області людської інтуїції (які були розвинені за перші 99% часу розвитку людського інтелекту). Діалогові системи машинної графіки знічуються суб'єктивну складність розв'язуваної задачі, переводячи її з абстрактного світу інформаційних образів в конкретний, відчутний світ реальних матеріальних об'єктів. На екрані дисплея дослідник має можливість розрізняти просторове розташування окремих компонентів досліджуваного інформаційного образу, причому ці компоненти можуть додатково відрізнятися за яскравістю, кольору і так далі. Для процесів, досліджуваних у динаміці, додаткові можливості інтуїтивного аналізу з'являються від «звукового супроводу» просторових еволюції графічної моделі. У зв'язку з цим велика частина відомих типів персональних комп'ютерів має вбудовані засоби (або можливості) для підключення програмно-керованих синтезаторів ».

Може бути, і нам спробувати уявити нашу програму у вигляді малюнка? Давайте з Вами домовимося, що початок і кінець програми ми будемо позначати у вигляді овалу, текст, який повинен з'явитися на дисплеї, будемо розміщувати в прямокутник. У ромб ми укладемо умова типу: якщо введена цифра «1», то на дисплеї повинен з'явитися такий-то текст, якщо «2», то інший і так далі. А стрілками будемо позначати, в якій послідовності одна порція інформації повинна змінюватися інший.

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

Щоб було зрозуміло, який саме блок де знаходиться, ми, крім тих позначень, яких ми дотримувалися при описі створюваної програми (питання «А», питання «Б») помістимо всередину зображених фігур початок тексту із запитання або репліки.

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

§ 6. Написання програми

Маючи готову блок-схему, написати програму не так вже й важко. Давайте спробуємо це зробити. Ми будемо використовувати як знайомі нам оператори, так і деякі інші. Але невідомих поки що нам команд буде небагато.

Перелічимо їх. CLS (clear screen) - означає «очистити екран», вживається тоді, коли ми хочемо, щоб попередній текст зник і не заважав сприйняття нового.

Команда REM - це ремарка. Це не виконує, команда. Вона потрібна для того, щоб зручніше було читати сам текст програми, вона пояснює, що це за програма, або навіщо потрібен той чи інший оператор в цій програмі. Ви можете вживати його, а можете і ні. Тут все залежить від Вашого бажання. Для функціонування самої програми цей оператор не потрібен.

Команда INKEY - це команда припинення роботи програми на задану кількість мілісекунд. Иx кількість міститься в дужках. Призначення її в тому, щоб репліка на невірний або вірну відповідь протрималася якийсь час на дисплеї, а потім Вам був запропонований інший питання. Слід сказати, що ця команда присутня не в усіх діалектах BASIС. У деяких вона має вигляд PAUSE +.

Команда END - прозора за своїм значенням, вона позначає кінець програми.

Нy, і останнє застереження. Порожні команди PRINT призначені для того, щоб пропускати рядок. Ми їх використовуємо відразу два рази поспіль, щоб питання з'являвся не в самому верху, а трохи нижче.

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

10 REM «Діалогова програма з історії філософії»

12 REM «Автор Роман Манекін»

30 CLS

40 PRINT

50 PRINT

60 PRINT «Чи містить діалог Платона Тімей концепцію Космосу як живої істоти»

70 PRINT «обдарованого розумом?»

1. Ні

2. Так

3. Не знаю

80 INPUT X

90 IF X = l THEN GOTO 120

100 IF Х = 3 THEN GOTO 180

110 IF X = 2 THEN GOTO 240

120 CLS

130 PRINT

140 PRINT

150 PRINT «Ви помилилися, подумайте ще раз!»

160 I = INKEY (625)

170 GOTO 30

180 CLS

190 PRINT

200 PRINT

210 PRINT «Почитайте, будь ласка, розділи 29e - 31в діалогу Платона Тімей»

220 I = INKEY (625)

230 GOTO 30

240 CLS

250 PRINT

260 PRINT

270 PRINT «Ви маєте рацію. Мені цікаво з Вами розмовляти ».

280 l = lNKEY (625)

290 CLS

300 PRINT

310 PRINT v

320 PRINT «ототожнював чи Платон поняття Космос і Людина?»

1. Так 2. Ні 3. Не знаю.

330 INPUT X

340 IF X = l THEN GOTO 370

350 IF X = 3 THEN GOTO 440

360 IF X = 2 THEN GOTO

370 CLS

380 PRINT

390 PRINT

400 PRINT «Еto спотворення думки Платона. Ототожнення понять Людина і Космос характерно для »

410. PRINT «філософії пізнішого часу. Будь ласка, подумайте знову ».

420 I = INKEY (625)

430 GOTO 290

440 CLS

450 PRINT

460 PRINT

470 PRINT «Подивіться, будь ласка, розділи 41a - 47е діалогу Платона Тімей»,

480 I = INKEY (625)

490 GOTO 290

500 CLS

510 GOTO 300

520 CLS

530 PRINT

540 PRINT

550 PRINT «Ви праві, і я з задоволенням про це повідомляю. Приємно поговорити з розумною людиною ».

560 I = INKEY (625)

570 CLS

580 PRINT

590 PRINT

600 PRINT »Є думка, що спеціальний нарис вчення Платона про космічні функціях розуму»

610 PRINT «включає в себе концепцію гармонійного членування Космосу - вчення про взаємні»

620 PRINT «відстанях зірок і деяких законах Природи»

1. Так 2. Ні 3. Не знаю.

630 INPUT X

640 IF X = 1 THEN GOTO 800

650 IF X = 2 THEN GOTO 670

660 IF X = 3 THEN GOTO 740

670 CLS

680 PRINT

690 PRINT

700 PRINT «Ви не маєте рації. Перечитайте, будь ласка, розділи 31в - 37С діалогу Платона Тімей. Особливе »

710 PRINT «увагу зверніть на розділи 35в - 37С названого твору»

720 I = INKEY (625)

730 GOTO 570

740 CLS

750 PRINT

760 PRINT

770 PRINT «Подивіться, будь ласка, розділи 29e - 47e діалогу Платона Тімей».

780 I = INKEY (625)

790 GOTO 570

800 CLS

810 PRINT

820 PRINT

830 PRINT «Блискуче! Я від Вас іншої і не чекав ».

840 I = INKEY (625)

850 CLS

860 PRINT

870 PRINT «Чи включає в себе спеціальний нарис вчення Платона про космічні функціях розуму»

880 PRINT «наступні концепції?»

890 PRINT «1. Вчення про Час і про його органах ».

2. Вчення про вищі класи живих істот або стали богів »

3. «Концепцію про з'єднання світового тіла і світової душі»

4. «Вчення про найзагальніших»

910 PRINT «закони людського існування».

5. Не знаю.

920 INPUT X

930 IF X = l THEN GOTO 980

940 IF X = 2 THEN GOTO 1070

950 IF X = 3 THEN GOTO 1040

960 IF 'X = 4 THEN GOTO 1220

970 IF X-5 THEN GOTO 1290

980 CLS

990 PRINT

1000 PRINT

l010 PRINT «Ваша відповідь не точний. Вчення про Час та його органах входить до загального, але не в спеціальний »

1020 РRINT «нарис вчення Платона про космічні функціях розуму. Спробуйте порівняти зміст ».

1030. PRINT «розділів 31-37С і 37С-39с діалогу Платона Тімей. Потім

перечитайте розділи 29е-37Е »

1040 PRINT «названого твору і спробуйте відповісти ще раз»

1050 I = INKEY (625)

1060 GOTO 850

1070 CLS

1080 PRINT

1090 PRINT

1100 PRINT «Подумайте ще раз. Раджу перечитати розділи 31-37С, 39-40d діалогу Платона Тімей ».

1110 PRINT «Потім прочитайте розділи 29с-47е і спробуйте відповісти ще раз».

1120 I = INKEY (625) ІЗО GOTO 850

1140 CLS

1150 PRINT

1160 PRINT

1170 PRINT «Ви маєте рацію, і я радий, що Ви впоралися і на цей раз (власне, я від Вас і не чекав іншого)».

1180 PRINT «цю думку можна знайти в розділах 31в-37Е»

1190 PRINT «діалогу Платона Тімей».

1200 l = INKEY (625)

1210 GOTO 1360

1220 GLS

1230 PRINT

1240 PRINT

1250 PRINT «Ви помилилися. Порівняйте зміст paзделов 31в - 37 і

41 А-п діалогу Платона »

1260 PRINT «Тімей. Перечитайте також розділи 29е - 47в названого

твори ».

1270 I = INKEY (625)

1280 GOTO 850

1290 CLS

1300 PRINT

1310 PRINT

1320 PRINT «Ознайомтесь зі змістом розділів 36d-37С діалогу Ш тону Тімей».

1340 I = INKEY (625)

1350 GOTO 850

1360 CLS

1370 PRINT

1380 PRINT

1390 PRINT «Ми з Вами поговорили про зміст діалогу Платона Тімей. Тепер, якщо хочете, можете повернутися в початок програми і запропонувати інші відповіді (якщо Вам цікавий ».

1400 PRINT «якийсь варіант заперечення на Вашу відповідь) [12] Крім тс го Ви можете ознайомитися з композицією діалогу Платов! Тімей або ж за-»

1410 PRINT «закінчити роботу з програмою.

I. Повернення до початку програми *

2. Відомості про »

1420 PRINT «композиції діалогу Платона Тімей

3 Кінець ».

1430 INPUT X

1440 IF X = l THEN GOTO 30

1450 IF X = 2 THEN GOTO 1470 1460 IF X = 3 THEN GOTO 1580 1470 CLS

1480 PRINT

1490 PRINT

1500 PRINT «Композиція діалогу Платона Тімей така:

I) вступ

2) функція космічного розуму »1510 PRINT« (розділи 29e-49e),

3) функція первинної матерії як необхідності (розділи

49е-69а) »,

1520 PRINT «4) сукупні дії розуму і матерії в освіті людського організму»

1530 PRINT «(розділи 69-92В),

5) висновок (розділ 92с) ».

1540 PRINT «1.Возврат до початку програми.

2. Кінець ».

1550 INPUT X

1560 IF X = l THEN GOTO 30 1570 IF X = 2 THEN GOTO 158О 1580 CLS

1590 PRINT

1600 PRINT

1610 PRINT «Мені було приємно розмовляти з Вами. Сподіваюся, ми ще зустрінемося! »

1620 I = INKEY (625)

1630 CLS

1640 END

Якщо Ви уважно ознайомилися з текстом програми, то переконалися, що вся вона складена із знайомих Вам операторів і за тією схемою, яку ми розробили.

Чи можна зробити програму швидше і коротше? Звичайно, можна. Але її текст був би Вам менш зрозумілий, а це не входить в наші наміри За зразком цієї програми Ви можете скласти свою.

Чи ні. Навіщо відкладати справу в «довгий ящик»? Спробуйте удосконалити цю програму. Тут уже говорилося, що дієвість навчальної програми стане більшою, якщо замість вказівки розділів філософського твору на екран комп'ютера виводитиметься їх короткий зміст. Заповнити цю прогалину.

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

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

Підказка: заведіть у програмі числову змінну (назвіть її, наприклад, А) і прирівняти її нулю (А = 0). А потім після кожної відповіді, в залежності від того, вірний він чи невірний, приплюсовувати до колишнього значення А одиницю або ж залишайте його таким самим. А в кінці програми, використовуючи оператори ЯКЩО, ТО перевірте, чому дорівнює змінна А. Якщо у Вас програма з п'яти запитань і А = 5, то нехай на дисплеї буде оцінка «відмінно», якщо А = 4, то «добре» і так далі. Так Ви навчите комп'ютер якісно оцінювати вводиться інформацію.

[1] Тобто власне елементами, з яких конструюються електронні схеми ЕОМ.

[2] Швидкодія ЕОМ визначається шляхом врахування середньої кількості елементарних операцій (наприклад, операцій додавання), які вона виконувала за секунду. Поняття швидкодії ЕОМ потребує спеціального пояснення. Справа в тому, що будь-яка ЕОМ діє тільки при подачі електричних сигналів, що мають певну частоту. Ця частота називається тактовою. Всі зміни станів елементів електронної схеми ЕОМ відбуваються саме в момент подачі імпульсу (тактового сигналу). Так що швидкодія ЕОМ багато в чому залежить від її «здібності» сприймати велику кількість тактових сигналів у певний проміжок часу. На сучасних ЕОМ тактова частота наміряти десятками і сотнями тактових сигналів у секунду. Тобто десятками і сотнями мегагерц (мггц).

[3] Обсяг оперативної пам'яті ЕОМ вимірюється кількістю інформації, яку вона здатна зберігати в кожен окремий проміжок часу. Докладніше див про це далі.

[4] Зовнішніми називають пристрої ЕОМ, призначені для «спілкування» з користувачем і іншими технічними пристроями.

[5] Про технічну сторону розрізнення поколінь ЕОМ Ви можете дізнатися з табл.1 наст. вид.

[6] Дані С.Т. Главацького і ін див.: Введення в інформатику та обчислювальні засоби. М.1987. - С.13.

[7] Деякі ЕОМ працюють на основі змішаної - десяткове-двійковій або на основі вісімковій систем числення. Але на них ми сьогодні зупинятися не будемо.

[8] Прикладом операційної системи є система MSDOS, під управлінням якої працюють персональні комп'ютери типу IBM РC. Детальніше про операційні системи, про команди MSDOS див.: Фігурне В.Е. IBM РC для користувача .- М., 1990.

[9] Прикладами «програм-оболонок» є системи QDOS, Norton Commander, Path minder, Xtree, ін Докладніше про систему Norton Commander див.: Фігурне В.Е. Указ. соч.

[10] Детальніше про загальні принципи програмування див: Брукс Ф.П. Як проектуються і створюються програмні комплекси. М.1980; Лебедєв В.М. Введення в системи програмування M.I975; Хьюз Дж., Мічтом Дж. Структурний підхід до програмування. М.1980.

[11] Див: Громов Г.Р. Національні інформаційні ресурси. M. 1985.

[12] Візьміть в бібліотеці третій том творів Платона (M.I97I), прочитайте діалог Платона «Тімей». Якщо Ви побажаєте, щоб на екрані комп'ютера з'являлися повні тексти названих розділів діалогу, подумайте, як Вам потрібно правильно скористатися відомою Вам командою «print». (Підказка: у більшості персональних комп'ютерів на екрані дисплея розміщується 25 рядків тексту по 80 знаків у рядку, повинна також змінитися і нумерація рядків). Якщо ж захочете навести з розділів тільки окремі цитати або коротко переказати сама їх зміст - пам'ятайте - головна Ваше завдання - не спотворити думку Платона, не забудьте - що багато понять його філософії мають конкретно-історичний сенс - сенс, нерідко відмінний від того, який вкладають в них сучасні філософи, яким наділяє їх повсякденне створення.


Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Курсова
92.8кб. | скачати


Схожі роботи:
Програми технології мови програмування Паскаль у прикладній механіці
Основні поняття математичного програмування Побудова моделі задачі лінійного програмування
Навчальні видання
Розгалуження програми циклічні програми з розгалуженням накопичення сум і добутків одновимірн
Програмування мовою С з використанням об єктно орієнтованого програмування
Програмування мовою С з використанням обєктно-орієнтованого програмування
Автоматизовані навчальні системи
Шкільні навчальні екскурсії
Навчальні туристські походи
© Усі права захищені
написати до нас