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

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

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

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] Нагадаємо, що символом ˜ми позначаємо порожню позицію екрана

Схожі матеріали
05.10.2012 Введення та виведення даних, розробки та опису лінійних програм.
20.12.2011 Pascal - лабораторні роботи - для студентів III-го курсу (лекції Ляшенко Б.М.)
12.12.2010 Робота з підпрограмами
12.12.2010 Робота з рядковими та символьними величинами.
12.12.2010 Робота з циклічними програмами
12.12.2010 Робота з масивами даних.
12.12.2010 Розробка та описання програм з розгалуженнями
12.12.2010 Початки програмування
12.12.2010 Етапи розв’язання задач з використанням ЕОМ
12.12.2010 Поняття про алгоритм

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

Останні створені тести
28.03.2016 Ахметов Р. Ф. Основи наукових досліджень. Тести. 500 питань
16.11.2015 Олімпійські ігри Стародавньої Греції. Відродження олімпійських ігор. Олімпійський рух сучасності.
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
22.10.2012 Цивільний захист
28.09.2012 Питання для поточного контролю
26.09.2012 Мовнокомунікативна компетентність. Орфографічна складова
Рекомендовані лекції
12.12.2010 Порядковий тип даних
22.02.2016 ОС та СП. Тема 2. Процеси та потоки. Тези
12.12.2010 Обробка графічної інформації
13.11.2014 MICROSOFT OFFICE. СКЛАД, ПРИЗНАЧЕННЯ, ОСНОВНІ ПРОГРАМИ-ДОДАТКА
12.12.2010 Алфавіт
12.12.2010 Константи, змінні. Типи даних
12.12.2010 ЕОМ як виконавець алгоритму. Мови програмування
12.12.2010 Введення, виведення даних. Лінійні програми
28.09.2014 Лекції з курсу "Основи психологічної практики (практична психологія)" для студентів ІV курсу спеціальності 6.030102 Психологія
10.01.2015 Publisher створення візитки