Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Лабораторна робота 1

Работа добавлена на сайт samzan.net:


Лабораторна робота № 1.

Лінійні програми.

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

Короткі теоретичні відомості.

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

Лінійні програми, як правило, мають наступну структуру:

А) заголовок програми;

Б) розділ констант;

В) розділ змінних;

Г) розділ операторів.

А) Заголовок програми визначений діаграмою:

В Borland Pascal цей рядок необов’язковий і його можна виключити.

Приклад заголовку:

program LinearUnequation;

program Graf1;

Б) Розділ констант визначений діаграмою

Розділ

констант

В розділі констант визначаються імена як синоніми констант. Під константою розуміється або деяке число, або ім’я константи, можливо з знаком, або рядок.

Приклад розділу констант:

const Pi = 3.1415926; alfa = 7.1219;

MinInt = -MaxInt;

Line = ‘____________________________’;

FirstLine = ‘______ Список групи ________’;

В) розділ змінних визначений діаграмою

Розділ

змінних

Будь-яка змінна, яка зустрічається в якому-небудь операторі з розділу операторів повинна бути описана в розділі змінних. Опис змінної зв’язує з новою змінною її ім’я і тип.

Приклад розділу змінних

var  Root1, Root2, Discriminant : Real;

Index, Counter : Integer;

A,B,C : Real;

Letter : Char;

IsSolution : Boolean;

У мові Pascal визначені 4 стандартних простих даних:

Integer (цілий);

Real (дійсний);

Char (символьний).

Boolean (логічний);

Довідкова інформація про всі стандартні типи змінних з вказанням діапазону допустимих значень і розміру потрібної для їх розміщення області пам’яті наведена в таблиці:

Тип

Допустимі значення

Формат

Integer

-32768 .. 32767

2 байта зі знаком

Real

2.9 * 10-39 .. 1.7 * 10+38

6 байт

Boolean

False, True

1 байт

Char

[‘A’..’Z’, ‘a’..’z’], [’0’ .. ’9’], розділові знаки і спец.символи

1 байт

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

  1.  множину  допустимих значень для даних цього типу;
  2.  допустимі операції над даними цього типу;
  3.  функції, що визначені на даних цього типу або приймають значення в цьому типі;
  4.  допустимі відношення на даних цього типу.

 Тип даних Integer .

Значеннями цілого типу Integer є елементи підмножини (відрізка) цілих чисел.

Операції:

*  -    множення;

div - цілочисельне ділення;

mod - остача від цілочисельного ділення;

+  - додавання;   

-   - віднімання;

Функції:

Abs(x) - х ;

Sqr(x) - х 2;

Trunc(x) - відкидання дробової  частини від дійсного х;

Round(x) - округлення дійсного x;

Succ(x) - х + 1;

Pred(x) - х - 1;

З деякими іншими функціями ми познайомимось пізніше - при визначення інших типів даних.

Відношення:

 < - менше     <= - менше або дорівнює

 > - більше      >= - більше або дорівнює

 = - дорівнює  <> - не дорівнює

Тип даних Real.

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

Операції:

*  -множення;      /   - ділення;

+  - додавання;        -   - віднімання;

Функції:

Abs(x) - модульх;

Sqr(x) – х2 у квадраті;

Sqrt(x) - корінь з х,

Sin(x) - sin х;

Cos(x)- cos х;

Arctan(x)- arctg х;

Ln(x)  - ln х;

Exp(x) - e х;

Відношення: такі самі, як і для типу Integer.

Тип даних Сhar.

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

Функції:

Ord(x) - порядковий номер x.   

Chr(n)- символ з порядковим номером N.

Pred(x)- символ, який передує x.     

Succ(x) - символ, який слідує за x.

Відношення.

Як вже повідомлялось, тип даних Сhar упорядкований. Це означає, що дані типу Сhar можна порівнювати, як і дані числових типів, за допомогою відношень:

= , <> , > , < , >= , <= .

Результат порівняння можна використовувати як данне типу Boolean.

Тип даних Boolean (логічний).

Змінні типу Boolean є логічними змінними, що можуть приймати тільки 2 значення: True (істина) і False (хибність). Значення булевого типу True і False є по суті інтерпретаторами констант.

Операції.

Для булевих змінних, що приймають тільки 1 із 2-х допустимих значень, дозволені тільки 2 операції порівняння “=” і “<>” (недорівнює). Інші доступні для логічних змінних операції наведені в таблиці:

Операція

Дії

AND

Логічне “І”

OR

Логічне “Або”

NOT

Логічне “Не”

Функції.

Цей тип даних, як і інші прості типи даних, упорядкований. На ньому визначені функції Ord, Succ, Pred.

Так само як і для будь-яких інших типів даних, для цього типу існують стандартні функції:

Odd(Х)

{ Odd(Х) = True, якщо Х - ціле непарне число

    Odd(Х) = False, якщо Х - ціле парне число}

Eoln(F) { кінець рядка в текстовому файлі}

Eof(F) { кінець файла}

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

Оголошення типу даних користувача проходить у розділі оголошення типів, що йде за розділом констант. Його відкриває зарезервоване слово ТYРЕ.

Розділ типів визначає синтаксичною діаграммою:

Розділ

типів

 

Слідом за словом ТYРЕ йдуть розділенні знаком «=» імена нового типу користувача і конструкція, що визначає цей тип:

Type Day = (’Понеділок’, ’Вівторок’);

Розділ операторів описується діаграмою:

Оператор присвоювання.

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

оператор

присвоювання

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

Приклад оператора присвоювання

А := А + В ;

Оператори вводу/виводу.

Паралельно з операторами присвоювання (в лінійних програмах) для організації вводу/виводу даних використовуються оператори Read, Readln, Write, Writeln. Два перших оператора використовуються для вводу інформації з клавіатури, а два їнших для виводу інформації на екран.

Загальна форма запису операторів визначена діаграмою:

В операторах закінчення –ln означає, що наступна інформація з’явиться на екрані з нового рядка.

Приклад лінійної програми.

Скласти програму обчислення середнього арифметичного для двох дійсних чисел.

Program Chislo; {програма обчислює середнє арифметичне двох чисел}

Const Line=’************************’;

Var a, b, S: real;

Begin

{введення даних}

Write(‘Введіть числа a i b’);

Readln(a, b);

S:=(a+b)/2;

Write(‘Результат’, S);

End.

Хід роботи

  1.  Написати в редакторі програму Chislo .
  2.  Відкомпелірувати її і запустити на виконання для кількох значень.
  3.  Відкоректувати програму, зробити необхідні зміни. Повторити обчислення по відкоректованій програмі. Записати відкоректовану програму, вихідні данні та результат роботи програми.
  4.  Написати в редакторі свою програму (див.завдання).
  5.  Відкомпелірувати її і запустити на виконання для кількох значень. У зошити записати текст програми, вихідні дані, та результати роботи програми.

Контрольні питання.

  1.  Визначити синтаксис заголовку програми.
  2.  Визначити поняття константи і синтаксис розділу констант.
  3.   Визначити тип даних Integer, Real, Char, Boolean.
  4.  Визначити синтаксис розділу змінних.
  5.  Яка різниця між змінними та константами.
  6.  Дати означення поняття виразу і оператора присвоювання.
  7.  Пояснити використання операторів Write, Read, Writeln, Readln.
  8.  Описати структуру лінійної програми.

Варіанти завдань.

Завдання 1.

  1.  Знайти гіпотенузу, площа і гострі кути прямокутного трикутника, заданого катетами.
  2.  Змішано V1 літрів води температурою t1 з V2 літрами води температури t2. Знайти об’єм V і температуру t утвореної суміши.
  3.  Знайти радіус кола з центром в (X0,Y0), дотичною до якого є пряма y = kx + b.
  4.  Обчислити центр ваги системи з трьох матеріальних точок на площині з масами M1, M2, M3 і координатами (X1,Y1), (X2,Y2), (X3,Y3).
  5.  Розв’язати систему лінійних рівнянь методом Крамера.

{Вважати, що її визначник не дорівнює нулю }

  1.  Обчислити координати точки А(X,Y) при повороті системи координат на кут Alfa і паралельному переносі на вектор a = (u, v).
  2.  Знайти корінь степені n і n-ту степінь позитивного дійсного числа a.
  3.  Обчислити цілі коефіцієнти А, В, С квадратного рівняння по його раціональним кореням х 1 = n 1 / m 1,   x 2 = n 2 / m 2.
  4.  Обчислити внутрішні кути трикутника, заданого довжинами сторін.
  5.  Перерахувати координати точки з полярної системи в декартову систему координат.
  6.  Перерахувати координати точки з декартової системи в полярну систему координат.
  7.  Розрахувати координати матеріальної точки, пущеної з початковою швидкістю V0 під кутом Alfa до горизонту в напрямі вектора а = (X0,Y0) в момент часу t.
  8.  Обчислити суму, добуток і  частку двох комплексних чисел z1 = a+bi, z2 = c+di.
  9.  Багаточлени F(x) = ax + b і G(x) = cx + d задані своїми коефіцієнтами. Знайти коефіцієнти багаточлена H(x) = F(x)*G(x).
  10.  Багаточлени F(x) = ax + b і G(x) = cx + d задані своїми коефіцієнтами. Знайти коефіцієнти багаточленів H1(x) = F(G(x))  і  H2(x) = G(F(x)).
  11.  Знайти розв’язок вправи 13, яке використовує 3 множення.
  12.  Знайти розв’язок вправи 14, яке використовує 3 множення.
  13.  Знайти розв’язок приклада 3, який використовує лише одну операцію обчислення тригонометричної функції.
  14.  Використовуючи розв’язок задачі 17, знайти схему множення двох квадратних трьохчленів, який використовує 6 множень.
  15.  Знайти площу кільця з внутрішнім і зовнішнім радіусом, використовуючи формулу S= П(R2-R1).
  16.  Вичислити значення функції y=x3+a2x2+a3x+a0 при довільних значеннях величин x, a2, a1, a0.
  17.  На матеріальну точку діють сили F1 i F2, направлені під кутом а одна до одної. Знайти величину F– рівнодіючу цих сил, використовуючи формулу F= (F12+ F22+ 2 F 1F2cosa ).

Завдання 2.

  1.  Дано трьохзначне число А. Скласти програму, яка б знаходила суму цифр введенного числа.
  2.  Дано трьохзначне число А. Скласти програму, яка б знаходила середню цифру введенного числа.
  3.  Дано п’ятизначне число А. Скласти програму, яка б знаходила середню цифру введенного числа.
  4.  Дано чотиризначне число А. Скласти програму, яка б міняла перші дві цифри введеного числа з останніми двома, не змінюючи їх взаємного розташування.
  5.  Дано чотиризначне число А. Скласти програму, яка б обчислювала суму цифр введенного числа.
  6.  Дано чотиризначне число А. Скласти програму, яка б обчислювала добуток цифр введенного числа.
  7.  Дано чотиризначне число А. Скласти програму, яка б обчислювала дві суми: суму першої і другої цифри та суму третьої і четвертої цифри.
  8.  Дано трьохзначне число А. Скласти програму, яка б обчислювала суму квадратів цифр введенного числа
  9.  Дано чотиризначне число А. Скласти програму, яка б обчислювала дві суми: суму першої і четвертої цифри та суму другої і третьої цифри.
  10.  Дано трьохзначне число А. Скласти програму, яка б знаходила середню цифру та суму першої і третьої цифри.
  11.  Дано п’ятизначне число А. Скласти програму, яка б знаходила середню цифру та суму першої, другої, четвертої і п’ятої цифри.
  12.  Розробити програму, яка по тризначному числу abc, що вводиться з клавіатури, знаходить і виводить на екран монітора числа сb і a.
  13.  Дано чотиризначне число a. Знайти число b, отримане при перестановці першої та третьої його цифр.
  14.  Розробити програму, яка знаходить і виводить на екран монітора остачу і неповну частку від ділення натурального числа A на натуральне число B. Числа A і B вводяться з клавіатури




1. Понятие промышленный рынок и его особенности
2. на тему Принципы гражданского права
3. тема
4. 80 слов Чувство Родины прорастает как все большое из малого зернышка
5.  з політекономії 1
6. тировки; снижать потери и ущерб от логистических рисков; устанавливать целесообразные уровни коопера
7. Стаття 1233. Поняття заповіту Заповітом є особисте розпорядження фізичної особи на випадок своєї смерті
8. Лабораторная работа 2 Ранние системы шифрования 1
9. Критерій відношення правдоподібності для великих вибірок
10. темах автоматики телемеханики и связи Вы
11. Причины сближения Великого княжества Литовского и Королевства Польского В первой половине 14 века Ве
12. тема- Система главного корня стержневая
13. Продукты пчеловодства и их применение в косметике
14. Упадок ее как и ее размеры был грандиозен и долог
15. Общая характеристика Латвии
16. ТЕМА 1 ИНВЕСТИЦИОННАЯ СТРАТЕГИЯ НА МАКРО И МИКРОУРОВНЯХ 1
17. Реферат- Котирование валют
18. Мгновенное исцеление- техника Квантового Смещения
19. Табличний процессоре MS EXCEL
20. Основная часть