Лекції >> Програмування, комп’ютери і кібернетика >> Введення, виведення даних. Лінійні програми

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

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

Basic.

У мові BASIC введення значень відбувається за допомогою оператора INPUT.

Наприклад, рядок програми, який забезпечує введення значення для змінної А буде мати вигляд (припустимо, хоча це і не суттєво, що рядок має номер 20):

20  INPUT A

Якщо потрібно ввести значення для кількох змінних, то можна скористатися декількома операторами input. Але доцільніше використати один такий оператор, після якого записати мінної А буде мати вигляд (припустимо, хоча це і не суттєво, що рядок має номер 20):

20  INPUT A

Якщо потрібно ввести значення для кількох змінних, то можна скористатися декількома операторами input. Але доцільніше використати один такий оператор, після якого записати змінні, відокремлені символом “кома”.

Наприклад:

20  INPUT A, B

Оператор INPUT  дозволяє виводити на екран коментарі, які полегшують введення даних. Коментарі містяться у лапках, після яких ставиться символ “крапка з комою”, а далі записуються змінні. Текст коментарю може містити разом з англійськими й російські літери.

Наприклад:

20 INPUT “Введіть значення A і B”; A, B

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

Наприклад:

20  INPUT A, B

Оператор INPUT  дозволяє виводити на екран коментарі, які полегшують введення даних. Коментарі містяться у лапках, після яких ставиться символ “крапка з комою”, а далі записуються змінні. Текст коментарю може містити разом з англійськими й російські літери.

Наприклад:

20 INPUT “Введіть значення A і B”; A, B

При виконанні даного оператора на екрані комп’ютера з’являється знак питання і очікується введення даних. Якщо даних декілька, то при веденні вони відокремлюються комами. Введення закінчується натисканням клавіші Enter.

Виведення даних забезпечує оператор PRINT. Якщо необхідно вивести не одну, а декілька змінних або значень виразів, то після оператора записують їх перелік, відокремлюючи символами “кома” або “крапка з комою”. Використання символу “крапка з комою” забезпечує пропуск на екрані однієї позиції після виведеного значення. Якщо ж після змінної або виразу використана кома, то на екрані значення займатиме зону шириною в 14 позицій. Аналогі і записуються змінні. Текст коментарю може містити разом з англійськими й російські літери.

Наприклад:

20 INPUT “Введіть значення A і B”; A, B

При виконанні даного оператора на екрані комп’ютера з’являється знак питання і очікується введення даних. Якщо даних декілька, то при веденні вони відокремлюються комами. Введення закінчується натисканням клавіші Enter.

Виведення даних забезпечує оператор PRINT. Якщо необхідно вивести не одну, а декілька змінних або значень виразів, то після оператора записують їх перелік, відокремлюючи символами “кома” або “крапка з комою”. Використання символу “крапка з комою” забезпечує пропуск на екрані однієї позиції після виведеного значення. Якщо ж після змінної або виразу використана кома, то на екрані значення займатиме зону шириною в 14 позицій. Аналогічно оператору INPUT, оператор PRINT теж може використовувати коментарі.

Наприклад,

50 PRINT “S= ” ; S , ”Р= ” ; P

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

Для того, щоб виконати програму, необхідно з нового рядка екрана записати команду RUN і натиснути клавішу Enter. Для виконання програми з рядка, що має певний номер N, потрібно виконати команду RUN N.

Pascal.

Введення даних на мові Pascal виконується за допомогою оператора READ.

Наприклад, фрагмент програми, який забезпечує введення значення для змінної А буде мати вигляд:

      READ ( A ) ;

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

Наприклад,

      READ ( A , В ) ;

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

Виведення даних на екран дисплея виконуються оператором WRITE. Після оператора в дужках вказується список виразів. Слідом за виразом, після двокрапки можна зазначити ширину поля екрана, в якому розміститься виведене значення. Наприклад, оператор WRITE (10:5, 7:5) виведе на екран числа 10 і 7 так[1]:

˜˜˜10˜˜˜˜7 ( ).

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

Наприклад, якщо x = 31.23456098, а y = - 9032.45987, то оператор

WRITE ( X :6 :3 , Y :12 :2 ) ;

виведе на екран

31.234˜˜˜˜- 9032.45.

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

Щоб прокоментувати виведене значення, у список виведення можна поміщати рядки будь-яких символів, обмежених одинарними лапками.

Наприклад,

Write ( ‘ S= ’, S :10 :4, ’ P= ’, P :6 :3) ;

Існують допоміжні оператори введення та виводу, які при виконанні в програмі переводять курсор на новий екранний рядок — це оператори READLN і WRITELN.

Щоб у тілі програми прокоментувати деякі операції, можна у фігурних дужках { } записати текст коментарю. У середині коментарів не можна використовувати символи фігурних дужок.

С.

Дві функції – Scanf та Printf дозволяють формувати форматні рядки, що забеспечують вірне введення та виведення значень зимінних. Рядок параметрів цих функцій включае звичайні символи, що просто копіюються у вхідний поток, та специфікації перетворень. Кожна спеціфікація перетворення починаеться з символу % та закінчуеться деяким словом, що задае перетворення.

Спеціфікації перетворення

%d

Ціле десяткове представлення;

%o

Ціле в восімковому вигляді без знаку;

%x

Ціле в восімковому представленні без знаку;

%h

Десяткове представленні без знаку;

%c

Один символ

%s

Рядок символів

%e

Експоненційне представлення дійсного числа

%f

Представлення дійсного числа з фіксованою точкою

%g

Представлення дійсного числа як %f або %e в залежності від значеннь

Введення даних на мові С виконується за допомогою оператора Scanf.

Наприклад, фрагмент програми, який забезпечує введення значення для десяткової цілої змінної А буде мати вигляд:

      Scanf ( “%d”,&A );

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

Наприклад,

      Scanf ( “%d%d%d”, &A, &В, &C );

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

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

Вивід на екран цілого числа

      Printf( “/%d/\n”, 123);

      Printf( “/%2d/\n”, 123);

      Printf( “/%10d/\n”, 123);

      Printf( “/%-10d/\n”, 123);

Результат виконання операторів:

                /123/

                /123/

                /˜˜˜˜˜˜˜123/

                /123˜˜˜˜˜˜˜/

Вивід на екран дійсного числа

      Printf( “/%f/\n”, 1234.67);

      Printf( “/%e/\n”, 1234.67);

      Printf( “/%4.2f/\n”, 1234.67);

      Printf( “/%3.1f/\n”, 1234.67);

      Printf( “/%10.3f/\n”, 1234.67);

      Printf( “/%10.3e/\n”, 1234.67);

Результат виконання операторів:

                /1234.670000/

                /1.234670e+03/

                /1234.67/

                /1234.7/

                /˜˜˜˜˜1234.670/

                /˜˜˜˜1.235e+03/

Щоб у тілі програми прокоментувати деякі операції, можна у дужках, що задаються символами, /* та */ записати текст коментарю. У середині коментарів не можна використовувати символи дужок коментарів.

 

 Приклад 1.  Обчислити площу та периметр прямокутника, якщо відомо його сторони.

 початок

 

 

A, B

 

 

 

S, P

 

 

 

S, P

 

 

кінець                        

мал. 7

І етап. Математична модель: маючи значення сторін а і b  прямокутника, обчислимо його площу за формулою S=ab та периметр за формулою P=2(a+b).

ІІ етап. Складемо алгоритм розв’язку задачі у вигляді блок-схеми (мал. 7).

ІІІ етап. Запишемо текст програми.

10 REM Прямоугольник

20 INPUT “Введіть A і B” ; A, B

30 S = A * B

40 P = 2 * ( A + B )

50 PRINT “S= ” ; S, ”Р= ” ; P

60 END

Basic-програма 1

 

Program Rectangle; {прямокутник}

   Var

      A, B, S, P : Real;

Begin

        {вводимо данні}

   Write ( ‘ Введіть а= ’ ) ; ReadLn (A) ;

   Write ( ‘ Введіть b= ’ ) ; ReadLn (B) ;

         {виконуємо обчислення}

      S:= A * B;

      P:= 2 * ( A + B ) ;

         {виводимо результат на екран}

   WriteLn ( ‘ S= ’, S :10 :4, ’ P= ’, P :6 :3)

  End.

 

 

Pascal-програма 1

ІV етап. Тест. Вхідні дані: А=10, В=2. Результати: S=20, P=24. n

 Приклад 2.  Обчислити площу трикутника, який задано координатами своїх вершин.

І етап. Математична модель: маючи координати вершин за формулою довжини відрізка () визначимо довжини сторін. Для визначення площі трикутника скористаємося формулою Герона (, де ).

ІІ етап. Складемо алгоритм у вигляді блок-схеми (мал. 7).

ІІІ етап. Запишемо текст програми.

 початок

 

 

x1,X2,х3

y1,y2,y3

 

 

А, В, С,

P, S

 

 

S

 

 

кінець                  

мал. 8

алг Герон (вещ x1, y1, x2, y2, x3, y3, S)

   арг x1, y1, x2, y2, x3, y3

   рез S

нач вещ a, b, c, p

      a := ((x2-x1)**2+(y2-y1)**2)**(1/2)

      b := ((x3-x2)**2+(y3-y2)**2)**(1/2)

      c := ((x3-x1)**2+(y3-y1)**2)**(1/2)

      p := (a+b+c)/2

      S := (p*(p-a)*(p-b)*(p-c))**(1/2)

      S := S

кон

НАМ-програма 2

 

 

10 REM Герон

20 INPUT “Введіть координати точок” ; X1, Y1, X2, Y2, X3, Y3

30 A = SQR ((X2-X1)^2+(Y2-Y1)^2)

40 B = SQR ((X3-X2)^2+(Y3-Y2)^2)

50 C = SQR ((X3-X1)^2+(Y3-Y1)^2)

60 P = (A+B+C) / 2

70 S = SQR (P*(P-A)*(P-B)*(P-C))

80 PRINT “Площа дорівнює ”; S

Basic-програма 2

 

Program Geron;

   Var

      A, B, C, P, S : Real;

      X1, Y1, X2, Y2, X3, Y3 : Real;

Begin

   Write ( ‘ Координати 1-ї точки ’ ) ;

         ReadLn (X1, Y1) ;

   Write ( ‘ Координати 2-ї точки ’ ) ;

         ReadLn (X2, Y2) ;

   Write ( ‘ Координати 3-ї точки ’ ) ;

         ReadLn (X2, Y2) ;

   A := Sqrt ( Sqr (X2-X1)+Sqr (Y2-Y1) ) ;

   B := Sqrt ( Sqr (X3-X2)+Sqr (Y3-Y2) ) ;

   C := Sqrt ( Sqr (X3-X1)+Sqr (Y3-Y1) ) ;

   P := ( A + B +C ) / 2 ;

   S := Sqrt ( P*(P-A)*(P-B)*(P-C) ) ;

   WriteLn ( ‘ S= ’, S :10 :4 )

 End.

 

 

Pascal-програма 2

ІV етап. Тест. Вхідні дані: x1=0 , y1=0 , x2=3 , y2=3 , x3=7 , y3= -1 . Результат: S=12. n

 



[1] Нагадаємо, що символом ˜ми позначаємо порожню позицію екрана

Схожі матеріали
07.03.2023 ІНСТРУКТИВНО-МЕТОДИЧНІ МАТЕРІАЛИ ЛАБОРАТОРНИХ ЗАНЯТЬ ОК "Технології комп’ютерного проектування"
07.03.2023 МАТЕРІАЛИ ЛЕКЦІЙНОГО КУРСУ ОК "Технології комп’ютерного проектування"
27.02.2023 ІНСТРУКТИВНО-МЕТОДИЧНІ МАТЕРІАЛИ ДО ДО ВИКОНАННЯ ТА ЗАХИСТУ КУРСОВИХ РОБІТ З ПРОГРАМУВАННЯ ІНСТРУКТИВНО-МЕТОДИЧНІ МАТЕРІАЛИ ДО ВИКОНАННЯ ТА ЗАХИСТУ КУРСОВИХ РОБІТ З ПРОГРАМУВАННЯ
21.02.2023 Web-технології та web-дизайн
21.02.2023 Web-технології та web-дизайн
14.02.2023 Булеві функції. Мінімізація булевих функцій
12.02.2023 Комбінаторний метод мінімізації булевих функцій
05.10.2012 Введення та виведення даних, розробки та опису лінійних програм.
20.12.2011 Pascal - лабораторні роботи - для студентів III-го курсу (лекції Ляшенко Б.М.)
12.12.2010 Робота з підпрограмами

Тести даної категорії
12.12.2010 ПОЧАТКИ АЛГОРИТМІЗАЦІЇ. ВСТУП ДО ПРОГРАМУВАННЯ

Останні створені тести
30.09.2021 Інтерпретація тексту. Доперекладацький аналіз і редагування письмових текстів.
28.10.2015 British Writers. Тест для студентів 4 курсу ННІ педагогіки
27.10.2015 The Passive Voice. Тест для студентів 2 курсу ННІ педагогіки
27.10.2015 Articles. Тест для студентів 1 курсу неспеціальних факультетів
27.10.2015 The Active Voice. Тест для студентів 2 курсу ННІ педагогіки
08.10.2014 INTEL
26.09.2012 Мовнокомунікативна компетентність. Орфографічна складова
31.05.2012 Lexikalisch-grammatischer Test. Тест для студентів 1 курсу неспеціальних факультетів.
30.05.2012 Landeskunde (Schweiz,Österreich,Deutschland) Тест для студентів 2 курсу неспеціальних факультетів
12.12.2010 ПОЧАТКИ АЛГОРИТМІЗАЦІЇ. ВСТУП ДО ПРОГРАМУВАННЯ
Рекомендовані лекції
12.12.2010 Множини
15.09.2020 Організаційна структура Європейського Союзу
15.02.2023 Матеріали до лекцій ОК "Основи наукових досліджень"
09.02.2023 Лекційний курс з ОК Бізнес-планування
09.02.2023 Лекційний курс з ОК Страховий менеджмент
09.02.2023 Проектування та засоби розробки веб сайту.
19.02.2023 МАТЕРІАЛИ ЛЕКЦІЙНОГО КУРСУ "Теоретичні основи інформатики та інформаційно-комунікаційні технології" 1 курс
09.02.2023 Лекційний курс з ОК Українська та зарубіжна культура
12.02.2023 Матеріали лекційного курсу з ОК Історія держави і права України
13.02.2023 Лекційний курс з ОК Міжнародне право