37805

Програмування лінійних та розгалужених алгоритмів

Лабораторная работа

Информатика, кибернетика и программирование

Блоксхема 2 початок Ввестиbc mx:= А А – b mx – c mx mx:=b mx:=c min:= – b min – c min min:=b min:=c – ≠mx ≠min – b≠mx b≠min p:= p:=b c≠mx c≠min – p:=c Вивестиmxpmin кінець uses crt; vr b c mx min p: rel; Оголошуємо основні та допоміжні змінні begin clrscr; writeln...

Украинкский

2013-09-25

62.52 KB

1 чел.

9

Міністерство освіти і науки України

Хмельницький національний університет

Кафедра системного програмування

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

з програмування

на тему:

«Програмування лінійних та розгалужених алгоритмів»

Виконав:

Студент групи КІ-10-1

Ноль М.Г.

Перевірив:

Савенко О.С.

Хмельницький

2010

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

Тема: програмування лінійних та розгалужених алгоритмів.

Мета: ознайомитися з операторами вводу, виводу і присвоєння, навчитися записувати лінійні алгоритми на мові програмування Pascal; закріпити теоретичні відомості про розгалужені алгоритми, оператори передачі управління, навчитися програмувати розгалуження.

Завдання

Задача 1. За заданими сторонами a, b, c трикутника знайти величини згідно з варіантами. Передбачити введення значень a, b, c  з клавіатури. Виведення вихідних даних здійснювати з відповідним пояснюючим текстом.

Варіант 8. Знайти .

b2 + c2a2)/2bc.

Блок-схема 1

початок

Ввести(a,b,c)

P1:=(b*b+c*c-a*a)/(2bc)

P2:=sqrt(1-p1*p1)

P:=p1+p2

Вивести(р)

кінець

uses crt;

  (*оголошуємо змінні для сторін і шуканих величин*)

var a, b, c, p, p1, p2: real;

begin

clrscr;

writeln ('Введіть сторони трикутника:');

  (*вводимо значення сторін*)

readln (a, b, c);

  (*обчислюємо значення синуса і косинуса*)

p1:=(b*b+c*c-a*a)/(2*b*c);

p2:=sqrt(1-p1*p1);

   (*обчислюємо значення суми*)

p:=p1+p2;

   (*виводимо результат*)

writeln ('cos(a)+sin(a)=', p:5:2);

readln

end.

Задача 2. Дано числа a, b, c. Надрукувати їх в порядку зменшення.

Блок-схема 2

початок

Ввести(a,b,c)

max:=a

А

А

+

b>max?

+

c>max?

max:=b

max:=c

               

min:=a

+

b<min?

+

c<min?

min:=b

                                   

                                            

min:=c

+

a≠max?

a≠min?

+

b≠max?

b≠min?

p:=a

p:=b

c≠max?

c≠min?

+

p:=c

Вивести(max,p,min)

кінець

uses crt;

var a, b, c, max, min, p: real;                        

  (*Оголошуємо основні та допоміжні змінні*)

begin

clrscr;

writeln ('Введіть числа a, b, c:');

  (*Вводимо значення чисел*)

readln (a, b, c);

  (*Знаходимо значення максимуму*)

max:=a;

if b>max then max:=b;

if c>max then max:=c;

  (*Знаходимо значення мінімуму*)

min:=a;

if b<min then min:=b;

if c<min then min:=c;

  (*Знаходимо інше число*)

if (a<>max) and (a<>min) then p:=a;

if (b<>max) and (b<>min) then p:=b;

if (c<>max) and (c<>min) then p:=c;

  (*Виводимо числа у порядку зменшення*)

writeln ('Числа у порядку зменшення: ', max:5:2, p:5:2, min:5:2);

readln

end.

у

Задача 3. Дано графік функції. Необхідно задати дану функцію аналітично і вкласти програму, яка при заданому значенні аргументу буде видавати значення функції.

1

х

0.5

0

-1

Блок-схема 3

початок

Ввести(х)

+

х<=0?

y:=0.5

y:=sin(x)

Вивести(у)

кінець

uses Crt;

var x, y: real;

begin

clrscr;

writeln ('Введіть х:');

  (*Вводимо значення х*)

readln (x);

  (*Перевіряємо умову, обчислюємо відповідне значення у*)

if x<=0 then y:=sin(x) else y:=0.5;

  (*Виводимо результати*)

writeln ('x=', x:5:2);

writeln ('y=', y:5:2);

readln

end.

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

початок

Блок-схема 4

Ввести(х)

+

10000<x<30000?

B

B

x1:=x mod 10

x2:=(x mod 100-x mod 10) div 10

x3:=(x mod 1000-x mod 100) div 100

x4:=(x mod 10000-x mod 1000) div 1000

x5:=x div 10000

p:=x1+x2+x3+x4+x5

Вивести(х1,х2,х3,х4,х5,р )

кінець

uses crt;

  (*Зробимо позначку*)

label start;

  (*Оголошуємо змінні для кожної цифри числа*)

var x, x1, x2, x3, x4, x5, p: integer;

begin

clrscr;

start: writeln ('Введіть число x, (10000<x<30000):');

  (*Вводимо значення числа х*)

readln (x);

  (*Перевіряємо умову*)

if (x<10000) or (x>30000) then goto start else

  (*Знаходимо кожну цифру числа*)

x1:=x mod 10;

x2:=(x mod 100 - x mod 10) div 10;

x3:=(x mod 1000 - x mod 100) div 100;

x4:=(x mod 10000 - x mod 1000) div 1000;

x5:=x div 10000;

  (*Додаємо усі цифри*)

p:=x1+x2+x3+x4+x5;

  (*Виводимо результат*)

writeln (x1,' одиниць, ', x2,' десятків, ', x3,' сотень, ', x4,' тисяч, ', x5,' десятків тисяч');

writeln (сума цифр=', p);

readln

end.


 

А также другие работы, которые могут Вас заинтересовать

55054. ПОСЛІДОВНОСТІ. АРИФМЕТИЧНА ПРОГРЕСІЯ 161.5 KB
  Запишіть послідовність з семи чисел перший член якої дорівнює 3 а кожен наступний на 4 більший за попередній. Запишіть послідовність з восьми чисел перший член якої дорівнює 8 а кожен наступний удвічі менший.
55056. Урок розвитку зв’язного мовлення 46 KB
  1 ir – mil: Good morning Good morning Wht cn I do for you I’m sending letter nd wnt my mother to receive it quickly. Good bye. Good bye 2 Prcels: Good morning Good morning Wht do you...
55057. Зображення постаті людини. Образ літературного героя 815.5 KB
  Мета уроку: Сформувати уявлення про пропорції постаті людини; навчити учнів аналізувати та в залежності від віку зображати фігуру людини. Обладнання уроку: музичні...
55058. Посвящение в первоклассники 54 KB
  Донецк Посвящение в первоклассники Первоклассники торжественно заходят в зал под мелодию Школьный корабль Ведущий 1. Наши первоклассники Ведущий 1. Позвольте праздник Посвящение в первоклассники считать открытым Ведущий 2. Дорогие первоклассники Чуть больше месяца назад вы пришли в нашу школу не зная её правил и законов.
55059. Посвята в старшокласники 87 KB
  Шановні радіослухачі У зв’язку з проведенням традиційного свята Посвята в старшокласники до нас прибув почесний гість сам Папа Римський Бенедикт Шістнадцятий. На сцені з’являються Папа Римський і перекладач. Папа Римський. Доброго дня шановні пані та панове Папа римський.
55060. Природно – ресурсний потенціал Полтавської області 55 KB
  Анотація: Розробка уроку для 9 класу, мета якого – визначити особливості географічного положення Полтавської області; розвивати знання про природно – ресурсний потенціал регіону; закріпити вміння і навички працювати з картою і розв’язувати задачі; розвивати аналітичне мислення і творчий підхід до засвоєння матеріалу.
55061. Bасиль Королів-Старий «Потороча хрипка». Що значить бути доброю людиною? 82.5 KB
  Подивилася на нього ще зблизька побачила який вiн наскрiзь мокрий як вiн увесь тремтить iз холоду й нарештi наскiльки вистачило у неї голосу ласкаво промовила: Любий хлопчику Не бiйся мене й скажи чого ти тут шукаєш.– Й вiн заридав. Давно вже вiн не чув щоб хтось озвався до нього ласкавим словом. Вiн ще трохи похлипав й почав розповiдати.
55062. Совершенствование техники выполнения ранее изученных элементов баскетбола 63.5 KB
  Задачи урока: Образовательная ведение мяча по кругу; ведение мяча с изменением направления; передача мяча в парах в движении; ведение мяча два шага бросок в кольцо;...