Код програми мовою pascal. Введення у Pascal. Речові типи даних

Головна / Корисна інформація

Отже, на попередній сторінці ми визначилися з такими поняттями: program, integer, real, const, var, begin, end, write, writeln, read, readln. Давайте напишемо прості програми на Паскалі з їх використанням. Але спочатку з'ясуємо, із яких частин складається програма на Паскалі.

Будь-яка програма мовою програмування Pascal має три складові: 1) заголовок; 2) розділ описів; 3) тіло програми.

✎ 1) Заголовок – це слово Program, після якого йде назва програми латиницею та точка з комою в кінці. Назва не може починатися з цифри, не повинна збігатися із зарезервованими словами (begin, end, integer тощо) або з назвами змінних з розділу описів (див. нижче), а також неприпустиме використання будь-яких символів (' @', '%', '&' тощо), крім підкреслення. Назву бажано давати зі змістом, який би відображав суть самої програми. Але заголовок писати необов'язково.

✎ 2) Розділ описів – Оскільки спочатку ми розглядатимемо найпростіші завдання, то у нас у другому розділі буде знаходитися або опис констант, або змінних (див. пп. 4 та 5 статті Введення до Pascal).

✎ 3) Тіло програми – блок операторів, в якому записуються команди для виконання. Починається цей блок словом begin(«початок»), а закінчується словом end.(«кінець») з крапкою в кінці (пп. 6, 7 тієї ж статті).

Таким чином, у загальному випадку програма на Паскалі виглядає так:


При вирішенні найпростіших завдань обмежимося спочатку цілими числами. Перед тим як почати програмувати, вкажемо найпростіші 4 дії над числами в Паскалі: «+» – додавання, «-» – віднімання, «*» – множення, «/» – поділ. Як бачимо, у програмуванні та математиці елементарні дії над числами позначаються однаково. Розв'яжемо наступне завдання:

Завдання.Нехай дані цілі числа A і B. Знайти їх суму.


Назвемо програму знаходження суми як Summa. Тоді частина коду, що відповідає за назву програми, матиме вигляд:

1 Program Summa; (Програма називається Summa)

Позначимо суму чисел A і B через S. Оскільки числа цілі, то сума буде цілим числом. Таким чином, в описі чисел A, B, S використовуватимемо змінну цілого типу integer . Але як описати ці числа у розділі описів – як константи ( const) або як змінні ( var)? Все залежить від умови завдання. Ми можемо числа A і B записати як константи, і як змінні. Але у будь-якому разі сума S буде змінного типу, оскільки нам невідомо її значення.

Отже, нехай дано значення чисел A і B, що дорівнює, наприклад, 23 і 76 відповідно. Оскільки ми знаємо значення наперед, то A та B будуть типу const, а S опишемо як var. Враховуючи, що опис констант йде перед описом змінних, розділ описів у цьому випадку буде наступним:


Таким чином, тіло програми складатиметься з обчислення суми S та виведення її на екран. У паскалі, щоб обчислити суму А та В, не можна просто записати S = ​​A + B; такий запис можливий, якщо треба перевірити, чи не дорівнює число S сумі A + B. А щоб у змінну S записати значення суми А + В, треба значення цієї суми «привласнити» змінної S, тобто. суму А + В записати в те місце пам'яті комп'ютера, яке виділено для змінної S. Це як би «впихання» значення одного числа значення іншого. Записується присвоєння так:

Для виведення результату використовується оператор виведення write з коментарем на екрані:

write("Сума чисел 23 і 76 дорівнює: S = ", S);

Об'єднуючи наші 1) заголовок програми, 2) розділ описів та 3) тіло програми, отримаємо невеликий код, який можна скопіювати в PascalABC.Net або в іншу версію Pascal:


Після виконання цієї програми на екрані ми побачимо:

Сума чисел 23 та 76 дорівнює: S = 99

Все добре, і програма працює. Але тут ми написали щось зайве. Подивіться уважно на оператор виведення write наприкінці – там виводиться сума S. Чи зміниться щось, якщо замість S написати саме значення суми, тобто А+В? Правильно нічого. Тільки тоді треба прибрати змінну S з нашого коду, а замість неї при виведенні на екран використовувати суму А + В. Ось спрощений код:


У цьому випадку результат на екрані буде таким:

Сума чисел 23 та 76 дорівнює 99

Це і є найпростіша перша програма. Інші завдання такого типу можете переглянути на сторінці Прямокутник, коло та паралелепіпед. Обчислення площ, периметрів та обсягів . Там, щоправда, використовуються змінні дійсного типу real, але суть та сама: вирішувати завдання без оператора присвоювання. Взагалі, цей оператор використовується там, де треба обчислити проміжну змінну, яка задіюється при обчисленні основного результату. Тому там, де при обчисленні результату (відповіді до завдання) можна обійтися без присвоєння, записувати вираз треба прямо в оператор виводу write. Тільки якщо вираз занадто великий і не поміщається в оператор виведення, треба обчислювати його окремо, вводячи додаткові змінні (var). Але в найпростіших випадках, як правило, можна обійтися без оператора присвоєння.


На наступній сторінці поговоримо про відсотки. А поки, якщо ви любитель World of Warcraft, тоді вам допоможе

Зазвичай вивчення будь-якої мови програмування починається з програми Hello, world! Але ми з вами займемося цим трохи пізніше, тому що зараз я хочу розповісти вам про величини та типи даних у Pascal.

Види величин

Зазвичай вивчення будь-якої мови програмування починається з програми Hello, world! Але ми з вами займемося цим трохи пізніше, тому що зараз я хочу розповісти вам про величини та типи даних у Pascal. Що таке величина? Розмір – це окремий інформаційний об'єкт, що зберігається у пам'яті комп'ютера. Існують дві класифікації величин. Ми розглянемо кожну окремо.


Детальніше ми поговоримо про них у наступних уроках.

У свою чергу числовий поділяється на два типи.


Наводжу відразу позначення цього у Паскаль

Символьні також поділяються на два типи.

Друга класифікація величин.
Константа – значення незмінне. Змінна – значення може змінюватися протягом роботи програми. Змінні є символічними іменами, які називаються ідентифікаторами. Як привласнити значення будь-якої змінної? За допомогою команди надання! Команда присвоєння в Паскаль: < переменная >:= < выражение >

Перша програма на Pascal

Структура програми у Паскаль

Заголовок

Program< имя переменной >;

Оголошення змінних та констант

const<Символическое имя> = <выражение>;
var<Однотипные переменные> : <тип>;

Розділ операторів

Begin
<оператор 1>;
<оператор 2>;

end.

Введення та виведення в Паскаль

У вас, напевно, виникає запитання: "Як вводити значення змінних з клавіатури?", а також: "Як вивести на екран отриманий результат?" Для цього використовуються чотири спеціальні оператори:

Для введення:

  • read(Змінну)
  • readln(Змінну)

І для висновку:

  • write(Текст у »)
  • writeln(Текст у »)

«У чому різниця між read і readln, write і writeln?»: знову спантеличтеся ви. Відповідь проста. Якщо додаєте "ln" (що розшифровується, як Line), то курсор переноситься на наступний рядок.

Hello, World на Pascal

Тепер ви готові написати першу програму.

Program Hello_World; (фігурні лапки дозволяють вставити коментар до коду) Begin Write ("Hello, World!"); End.

Ну тут усе зрозуміло. Щоб урізноманітнити рішення, пропоную вирішити кілька завдань цього типу.

Завдання 1. Потрібно запросити ім'я користувача, а потім вивести «Привіт,<имя>!» Для вирішення цього завдання нам знадобиться рядковий тип даних - string.

Program Hello_boy_girl; (фігурні лапки дозволяють вставити коментар до коду) var name: string; (оголошуємо name - це нова змінна) Begin Write ("Введіть своє ім'я:"); (оскільки ми використовуємо write, курсор буде блимати після двокрапки) Read(name); (Зчитуємо все, що ввів користувач) Write ("Привіт", name, "!"); (Зверніть увагу! Змінна відокремлюється від лапок комами End. !}

Завдання 2.Потрібно дізнатися скільки років користувачу, а потім вивести «Вам<возраст>років».Очевидно, що для вирішення цього завдання нам буде потрібно цілий тип даних - Integer.

Program How_old_are_you; var years: integer; (оголошуємо years - це нова змінна) Begin Writeln ("Скільки вам років?"); (оскільки ми використовуємо writeln, каретка буде блимати під написом) Read(years); (Зчитуємо все, що ввів користувач) Write("Вам ", years," років."); End.

Ну от і все! Все, що я хотів розповісти вам у сьогоднішньому уроці. Ви дізналися, що таке величина в Pascal і вивчили основні типи. А також навчилися створювати найпростіші лінійні програми. Докладніше про типи PascalABC.Net ми поговоримо в наступних уроках. До речі, про PascalABC.Net. Зрозуміло, що писати програми на листочках марно, і ви повинні тренуватись на комп'ютері. За цим посиланням завантажте останню версію Windows.
Ось як виглядає інтерфейс програми при запуску.


P.S. Давайте виділимо дві особливості Pascal:

  1. Паскаль НЕ чутливий до регістру, тобто і program, і Program, і PrOgRaM йому нічим не відрізняються. А тому з самого початку звикайте писати в нижньому регістрі, щоб при переході іншою мовою програмування не відчувати жодних проблем із цим;
  2. Ім'я програми в Pascal не має ніякого значення, воно не несе в собі жодних корисних функцій. Якщо хочете, ви можете просто не писати ЙОГО!

P.P.S. У світі найбільш популярні три операційні системи: Linux, Mac OS та Windows. А якщо у вас Windows? Який компілятор вибрати? Про це ми з вами поговоримо на уроці номер N.

Урок із серії: «Мова програмування Паскаль»

Для початку безпосередньо написання коду програми треба знати її структуру: як правильно записуються команди, в якому порядку.

На першому занятті ви дізнаєтесь:

  1. Яка структура програми мовою Паскаль.
  2. Як написати найпростішу програму.

Для створення програм можна використовувати середовище програмування Pascal ABC.

Якщо на комп'ютері не встановлено Паскаль: .

Структура програми

Програма мовою Паскаль починається з заголовка, що має такий вигляд:

program< ім'я програми>;

За ним іде розділ описів, в якому мають бути описані всі ідентифікатори (константи, змінні, типи, процедури, функції, мітки), які будуть використані в програмі.

Після розділу описів іде розділ операторів, який починається зі службового слова begin(початок) і закінчується службовим словом end(Кінець).

У цьому розділі вказуються дії над об'єктами програми, описаними в попередньому розділі. Оператори у цьому розділі відокремлюються один від одного крапкою з комою. Після останнього слова endставиться крапка.

Загальний вигляд програми:

program<имя>; (заголовок програми) uses...; (розділ опису модулів) var...; (розділ оголошення змінних) label ...; (розділ оголошення тегів) const ...; (розділ оголошення констант) type...; (розділ оголошення типів) function...; (розділ оголошення функцій) procedure...; (розділ оголошення процедур) begin (послідовність операторів) end. (кінець програми)

У розділі описів не обов'язково мають бути всі розділи.

У наших перших програмах буде лише один розділ - розділ Var (variable - змінна), в якому ми оголошуватимемо ті змінні, які будемо використовувати в розділі операторів.

Як написати найпростішу програму

Розглянемо найпростіше завдання з лінійним алгоритмом.

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

Завдання.Введіть з клавіатури два числа. Вивести на екран їхній твір.

Пояснення до програми

Назва цієї програми example_1.

З розділів описів є лише одне — розділ змінних. Він починається зі службового слова v ar, після якого йде послідовність оголошення змінних, розділених крапкою з комою.

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

У прикладі описані три змінні: всі вони (a, b і rez) мають цілий тип (integer).

Після описової частини йде розділ операторів, що починається зі службового слова b egin.

Перший оператор, що зустрічається, — це write ln ('текст'); - Записати (вивести) на екран текст, укладений між апострофами, lnдодається в кінці цього оператора для того, щоб курсор автоматично переходив на наступний рядок під час виведення на екран текстів або результатів виконання програми.

Наступний оператор - це read ln (a, b); читати дані з клавіатури.

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

Наприклад, ви ввели числа 12 та 45, тоді a= 12, а b= 45. Наприкінці цього оператора можна також ставити ln.

Після цих двох операторів стоїть оператор присвоєння: rez: = a * b; ( := - Це знак присвоєння у мові Паскаль). Змінна rezотримає значення, що дорівнює добутку числа aна число b .

Наступний оператор - це знову оператор writeln('текст',rez) - він виведе на екран текст, укладений між апострофами, а за ним значення змінної rez.

Потім наступний оператор writelnвиведе на екран повідомлення: Натисніть », а оператор readlnбуде очікувати цього натискання у вікні виконання.

Завершує розділ операторів endз крапкою.

Виконання програми

Після запуску програми на екрані з'являється повідомлення:

Введіть два цілих числа через пропуск

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

твір дорівнює...

Натисніть .

Коротко про головне

Програма на мові Pascal складається із заголовка, розділу описів та розділу операторів.

Якщо програма містить кілька операторів, вони поділяються знаком точки з комою.

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

Команда виведення на екран — write(текст) і writeln(текст) відрізняються положенням курсору після виконання команди. Команда write('текст') залишає курсор на тому ж рядку, що й текст, а writeln переводить курсор на новий рядок.

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

Найчастіше для написання програм на Паскалі користуються такою як Turbo Pascal (Турбо Паскаль).

Чому новачкам слід обирати саме цю мову? Спробуємо розібратися. Для того, щоб повністю опанувати будь-яку мову програмування, необхідно мати відповідну літературу. Саме тому більшість мов відпадає одразу, зокрема і Лого. Він мало поширений у російськомовних країнах, тому навчальних книг щодо нього немає. На даний момент найвідомішими є Pascal, Java, Basic та C. Розглянемо кожен окремо. Java в основному використовується для програмування в мережі. C - одна з найбільш поширених мов, однак і найскладніша (особливо для новачків). Для того, щоб у результаті навчитися писати програми на ньому, найкраще спочатку освоїти Pascal або Basic. Вони обидва вивчаються у школах (на вибір викладача). Причина їх поширеності полягає в тому, що цими мовами можна написати таку ж програму, як і на C або C + +, але саме його освоєння набагато легше за рахунок простоти побудови.

Варто пам'ятати, що версій Pascal і Basic є достатньою, але в школах більше поширені такі види, як Turbo Pascal 7.0 і QBasic. Якщо брати в порівняння саме їх, то останній більше створений для того, щоб писати невеликі програми довжиною до 50 рядків. Turbo Pascal ж потужніший і швидший.

Перша програма на Паскалі

Приклад програм на Паскалі легко знайти в інтернеті, складніше зрозуміти, як вони влаштовані.

Щоб зрозуміти, як влаштований ця мова, необхідно написати невелике «завдання». Допустимо, потрібно скласти програму, яка складатиме два числа: Q+W=E. Що ж потрібно виконати для її створення?

Літера E виступатиме змінною (у математиці – ікс). Обов'язково їй потрібно надати ім'я (не більше 250 символів). Воно може складатися з:

  • літер (A..Z);
  • цифр від 0 до 9. Але слід запам'ятати, що ім'я не повинно починатися з цифри;
  • символу "_".

У назві не повинні зустрічатися:

  • російські літери;
  • розділові знаки;
  • спец. символи, такі як грати "#", відсоток "%", долар "$", тільда ​​"~" та ін.

Прикладом правильного імені може бути "red_velvet4", "exo" або "shi_nee". Потрібно також пам'ятати, що Паскаль до регістру букв нечутливий, тому змінні з назвами btob і BtoB розглядаються як одна. Як саме серед програмування «заводяться» і називаються осередки, буде зрозуміло нижче. Після цього процесу необхідно визначити тип змінної. Це необхідно для того, щоб програма коректно показувала результат на екрані або друкувала його на папері. Наприклад, якщо складаються два числа, то вказується числовий тип, а якщо виводиться вітання, то рядковий. Для звичайного додавання двох чисел підійде тип Integer («число»).

З типом для змінних все зрозуміло, але його потрібно привласнити всім числових змінних, щоб вільно ними маніпулювати.

Маючи те, що написано вище, можна легко написати невелику «завдання». Програма на Паскалі буде виглядати так:

Program shi_nee;

Var Q, W, E: integer;

Перший рядок, тобто program shi_nee – назва або заголовок самої програми. Це необов'язковий компонент, який впливає роботу написаного обчислення. Він, якщо використовується, обов'язково повинен бути першим, інакше середовище програмування видасть помилку.

Опис змінних відбувається у другому рядку завдяки оператору "var". Необхідно перерахувати всі змінні, які фігурують у програмі та через двокрапку додати

Пара операторів "BEGIN" - "END" починає і, відповідно, завершує виконання програми. Вони найважливіші; між ними перебувають усі дії, описані програмістом.

Синтаксис мови

Важливо пам'ятати, що кожен рядок програми завершується крапкою з комою. Винятком із правила будуть службові команди типу var, begin, const та ін. Після кінцевого оператора end має ставитися крапка. У деяких випадках, коли в програмі кілька вкладень і використовуються операторні дужки "BEGIN" - "END", після цієї команди може ставитися крапка з комою.

Для того щоб привласнити осередку її значення, наприклад, E = 15, необхідно перед знаком ставити двокрапку:

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

Тестування

Запустивши Turbo Pascal, необхідно надрукувати програму, правильно розташувавши необхідні знаки та встановивши потрібний порядок рядків. Запуск програми можна здійснити через або за допомогою клавіш Ctrl + F9. Якщо все набрано правильно, екран трохи блимне. Якщо присутня помилка, то робота програми призупиниться, а курсор встановиться в тому рядку, де вона є. При цьому у рядку «Висновок» з'явиться опис самої помилки, наприклад, error 85: «;» expexted. Цей рядок вказує, що десь відсутня крапка з комою. Однак, поки звертати увагу на подібні неполадки не варто, потрібно розібратися зі структурою, використовуючи приклади програм мовою Паскаль.

Що слід вивчити насамперед?

Для початку повністю розібратися з кожним рядком програми. Потім звернути увагу на синтаксис, відкласти у своїй пам'яті спеціальні оператори, після яких розділовий знак не ставиться, засвоїти логічний ланцюжок з begin і end. Запам'ятати, як саме заводяться змінні, який тип їм необхідний і для чого він взагалі потрібний. Розібратися у функціонуванні самого середовища програмування буде також не зайвим. Для цього можна скористатися керівництвом або ж тикати в Turbo Pascal самостійно. Постійно потрібно практикуватися, розбирати вже готові «завдання» з інтернету та потихеньку набирати приклад програм на Паскалі самостійно.

Одновимірні масиви

Масив використовується для зручної роботи з однотипними даними, які в цьому випадку розміщуються у послідовних осередках пам'яті, а не окремо. Навряд чи програмістам зручно працювати із 50 або 100 змінними. Зручніше записати їх у масив.

Елементи, що знаходяться у групі, мають свій номер. У різних мовах програмування рахунок починається з певної цифри, не обов'язково з 1. А ось приклад програм на Паскалі говорить про те, що в ньому нумерація починається з неї. Цей порядковий номер називається індексом кожного елемента. Як правило, він є цілим числом, рідше за символ. У принципі, для осередку даних однаково, яка індексація буде задана: числова чи літерна.

(Приклади нижче) може мати тільки один тип, до якого належать і всі його елементи. Не буває такого, що один осередок типу real, а інший integer.

У середовищі програмування дані одновимірного (тобто простого) масиву вводяться лінійно:

Var a: array of char;

For i:=5 to 40 read (ch[i]);

For i:=5 to 40 write (ch[i]:3);

Розбираючи приклад програм на Паскалі, можна побачити, що виділяється пам'ять під найпростіший масив, що складається з 35 символів. Індексація () - від 5 до 40. У першому рядку після команди BEGIN користувач повинен ввести 35 абсолютно будь-яких символів (цифри, літери), які записуються програмою в комірки. Другий рядок відповідає за виведення їх на екран.

Двовимірні масиви

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

Такі дані мовою Паскаль (приклади можна побачити трохи нижче) описуються двома способами: "array of тип" або "array of array of тип".

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

Приклад завдання через спеціальний розділ:

Const b = 24; f=13;

Type cherry=array of real;

Через розділ змінних описати масив трохи легше (для новачків):

Const b = 24; f=13;

Var n: array of real;

Обидва варіанти будуть вірні, робота програми від вибраного способу запису не змінюється.

Відкриті масиви

Відкритий масив - той, який не має меж. Він має лише тип (real, integer та ін). Іншими словами, створений масив – безрозмірний. Його «тягучість» визначається самою програмою під час виконання. Записується він таким чином:

Seulgi1: array of char;

Yeri: array of real;

Відмінною рисою цих масивів і те, що індексація починається з нуля, а чи не одиниці.

Графіка у Паскалі

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

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

У середовищі програмування будь-якою мовою можливо і появи такого виду завдань, як графічні, результатом яких буде графіка. Паскаль, приклади таких програм демонструють певною мірою тяжкість їх розробки, дозволяє створювати картинки та малюнки. Для того щоб активувати потрібну бібліотеку, потрібно вставити рядок uses graph;.

Як правило, при описі графічних даних використовується дана процедура:

InitGraph (var driver, choke: real; Path: string);

Тут driver є змінною, тип якої integer; choke – змінна, дійсного типу; а path дозволяє активувати драйвери.

Припустимо, що ви завантажили та встановили паскаль. Потім відкрийте його. Для програмування вам потрібне невелике знання англійської мови. Суть нашої програми полягає в тому, щоб вона складала будь-які числа. Для цього нам потрібні змінні. Чисел у нас буде 2. Але в кожному завданні, навіть у найпростішій, є відповідь. Значить додаємо 3 змінну.

2 крок

І так. Щоб оформити наші змінні, перейдіть на англійську мову та напишіть на початку програми слово “var”. А після через кому наші 3 змінні, а, в, с, і через двокрапку поставте тип “integer” Далі напишіть begin – почати.
На даному етапі програма виглядатиме так:

var a, b, c: integer;
begin

3 крок

Ну а далі сама програма! Ми зробимо так, щоб на початку роботи наша програма просила ввести значення наших змінних. Для цього пишемо англійське слово прочитай "read" і в дужках вкажіть, які саме треба прочитати змінні.
read(a,b);
Коли в математиці пишіть формулу. Тільки обов'язково перед одно повинно бути двокрапка! c:=a+b;
Потім нам треба, щоб програма виводила відповідь: write©;
Ну от і все! закінчуємо програму і пишемо end.
Наша програма виглядає так:
var a, b, c: integer;
begin
read(a,b);
c:=a+b;
write©;
end.
Можете до речі скопіювати цю програму в паскаль, і перевірити чи напишіть її самі.
Після запуску програма запитатиме введення, числа вводите через пробіл!

© 2023 androidas.ru - Все про Android