42582

Линейные программы и условные операторы в Pascal

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

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

Регистр символов в Паскале не имеет значения.1 Для вычисления значений z1 и z2 необходимо ввести с клавиатуры значение переменной и вывести полученные значения z1 и z2 на экран. Выполняемые функции нахождение значения z по формулам и . 8 Результаты тестирования Разработанные программы были протестированы в 3х режимах: корректные значения граничные значения некорректные данные.

Русский

2013-10-30

327 KB

17 чел.

ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО ОБРАЗОВАНИЮ

ФИЛИАЛ ГОСУДАРСТВЕННОГО ОБРАЗОВАТЕЛЬНОГО УЧРЕЖДЕНИЯ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«МОСКОВСКИЙ ЭНЕРГЕТИЧЕСКИЙ ИНСТИТУТ

(ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ)» в г. Смоленске

Кафедра информатики

Отчёт

по лабораторной работе №1

Тема: «Линейные программы и условные операторы в Pascal»

по курсу: «Информатика и программирование»

Студент: Сороченков М.А.
Группа: ПИЭ-11
Преподаватель: Нестеров А.П.
Вариант: 1

Смоленск, 2011


1 Теоретической введение

  1.  Переменные

Программы на Паскале начинаются с ключевого слова program и следующего за ним имени программы с точкой с запятой; за ним следует тело программы, состоящее из секций описания переменных, типов и констант, объявлений процедур и функций и следующего за ними блока операторов, являющегося точкой входа в программу. В языке Паскаль блок ограничивается ключевыми словами begin и end. Операторы разделяются точками с запятой, после тела помещается точка, служащая признаком конца программы. Регистр символов в Паскале не имеет значения.

Требования к именам переменных:

  •  Всегда начинаются с латинской буквы 
  •  В именах допускаются только латинские буквы 
  •  Длина имени переменной не более 63 символов.
  •  Не разрешается использовать в имени следующие символы:
    + - * / \ ^ = > < <> >= <=
    . , : " ' ! $ ( ) ?
    а также пробелы и русские буквы
  •  Имена переменных желательно делать осмысленными, например, Speed1 или Skorst1 (переменные обозначающие скорость у 1-го объекта)
  •  Не разрешается использование зарезервированных слов
    1.  Типы переменных

Типы могут быть простыми (элементарными) (целые, символьные (литерные), вещественные), а также сложными (ограниченные, перечисляемые, булевские, строковые…).

Элементарные типы объявляются в разделе var. Сложные же объявляются в разделе types и используются для описания переменных в разделе var.

  1.  Операторы

Команду алгоритма, записанную на языке программирования, принято называть оператором. Раздел операторов — основная часть программы.

Ввод исходных данных с клавиатуры происходит по оператору read  или readln:

read(<список переменных>);

или readln(<список переменных>);

Разница в выполнении этих операторов в том, что после выполнения ввода по оператору readln экранный курсор перемещается в начало новой строки, а по оператору read этого не происходит.

Вывод результатов происходит по оператору write или writeln:

write(<список вывода>);

или writeln(<список вывода>);

Оператор присваивания на Паскале имеет следующий формат:

<числовая переменная> := <арифметическое выражение>

Арифметическое выражение может содержать числовые константы и переменные, знаки арифметических операций, круглые скобки. Кроме того, в арифметических выражениях могут присутствовать функции.

Круглые скобки в арифметических выражениях влияют на порядок выполнения операций. Как и в математике, в первую очередь выполняются операции в скобках.

  1.  Линейный алгоритм

Линейный алгоритм является аналогом обычного последовательного решения какой-либо задачи, когда все действия записываются поочередно.

В программировании реализация линейного алгоритма является наиболее простой конструкцией, так как подразумевает выполнение всего трех этапов:

1. ввод данных;

2. вычисления с помощью операторов присваивания;

3. вывод данных.

  1.  Условный оператор IF

Условный оператор включает в себя операторы, которые выполняются или не выполняются в зависимости от записанного в операторе условия. Оператор имеет вид:

  IF  "условие"  Then  "оператор1"  Else  "оператор2";

где "условие" - выражение логического типа;

"оператор1" выполняется, если условие верно ( True ),

"оператор2" выполняется, если условие не верно ( False ).


2 Техническое задание

2.1 Задача 1

Найти значение z1 и z2:

2.2 Задача 2

Вести координаты x и y и выяснить попадёт ли точка в заштрихованную фигуру.

2.3 Задача 3

Если максимальное значение из трёх взятых чисел больше 50, то найти произведение этих чисел, иначе – уменьшить каждое число в 2 раза.

3 Анализ технического задания

3.1 Для вычисления значений z1 и z2 необходимо ввести с клавиатуры значение переменной a и вывести полученные значения z1 и z2 на экран.

 

3.2 Для того что бы выяснить, попадёт ли точка с координатами (х ; y) в заштрихованную фигуру, необходимо составить уравнения каждой из линий, образующих фигуру: x2 + y2 = 2, y = - (x - 1), y = x - 1, y = - (x + 1), y = x + 1 и x = 0; преобразовать их в неравенства, при выполнении которых, точка будет внутри образованной фигуры: x2 + y2 < 2, y < - (x - 1), y > x - 1, y > - (x + 1), y < x + 1 и x < 0. При удовлетворении этим условиям точка попадёт внутрь фигуры.

3.3 Для того что бы выяснить, есть ли среди трёх введённых чисел, число большее 50, необходимо сравнить каждое из введённых чисел  с числом 50. (a>50 или b>50 или c>50)  Если хотя бы одно число >50, то необходимо посчитать произведение этих чисел, если нет – то каждое из веденных чисел нужно разделить на 2.

4 Блок-схема

4.1 Задача 1. Блок схема алгоритма представлена на рисунке 4.1.

Рисунок 4.1 – Блок-схема алгоритма.


4.2 Задача 2. Блок схема алгоритма представлена на рисунке 4.2.

Рисунок 4.2 – Блок-схема алгоритма


4.3 Задача 3. Блок схема алгоритма представлена на рисунке 4.3.

Рисунок 4.3 – Блок-схема алгоритма


5 Модульная структура программы

Программа состоит из одного модуля – самой программы.

6 Спецификация на программные модули

6.1 Задача 1

  1.  Имя модуля p1.
    1.  Имя вызываемого модуля – нет.
    2.  Выполняемые функции -  нахождение значения z по формулам  и

    .

  1.  Входные данные  - A типа real.
    1.  Выходные данные – Z типа real.
    2.  Особенности и ограничениянет.

6.2 Задача 2

  1.  Имя модуля p2.
    1.  Имя вызываемого модуля - нет.
    2.  Выполняемые функции – выяснение попадания точки с координатами (x;y) внутрь заданной фигуры..
    3.  Входные данные  - X и Y типа real.
    4.  Выходные данные – сообщение «Popali» или «Ne popali».
    5.  Особенности и ограничениянет.

6.2 Задача 3

  1.  Имя модуля p3.
    1.  Имя вызываемого модуля – нет.
    2.  Выполняемые функции – нахождения произведения введенных чисел a, b и с если выполняется условие (a>50) or (b>50) or (c>50), и уменьшение введенных чисел a, b и с в 2 раза – если условие не выполняется.
    3.  Входные данные  - a, b и c типа real.
    4.  Выходные данные – a, b, c, d, s типа real.
    5.  Особенности и ограничениянет.

7 Текст программы

7.1 Задача 1

program p1;

uses crt;

var z,a:real;      {Описание переменных}

begin

clrscr;     

write ('Vvedite znachenie a:');

readln(a);      {Ввод данных с кл-ры}

z:=cos(a)+sin(a)+cos(a)*3+sin(a)*a; {Вычисление z}

writeln('Znachenie z1=',z:2:2);  {Вывод z}

z:=1/4-1/4*sin(5/2*pi-8*a);   {Вычисление z}

write('Znachenie z2=',z:2:2);   {Вывод z}

readln;

end.

7.2 Задача 2

program p2;

uses crt;

var a,b,c,d,e,ox:boolean;    {Условия}

   x,y:real;      {Координаты точки}

begin

clrscr;

writeln('vvedite x and y');

readln(x,y);      {Ввод данных с кл-ры}

a:=(sqr(x)+sqr(y)<1);

b:=(y<-(x-1));

c:=(y>x-1);

d:=(y>-(x+1));

e:=(y<x+1);

ox:=x<0;

if (b and c and d and e) or (a and ox)

 then write('Popali')

   else write ('Ne popali');  {Проверка выполнения

условий и вывод

результата}

readln;

end.

7.3 Задача 3

program p3;

uses crt;

var a,b,c,s:real;

begin

clrscr;

writeln('Vvedite 3 peremennih');

readln(a,b,c);      {Ввод данных с кл-ры}

if (a>50) or (b>50) or (c>50) then {Проверка условия(сравнение)}

 begin

  s:=a*b*c;        {Выч-е произведения если условие верно}

  writeln('Proizvedenie=',s:2:2);   {Вывод}

  end

else

 begin

  a:=a/2;        {Уменьшение вдвое}

  b:=b/2;

  c:=c/2;

  write('a/2=',a:2:2,' b/2=',b:2:2,' c/2=',c:2:2);

 end;

readln;

end.

8 Результаты тестирования

Разработанные программы были протестированы в 3х режимах: корректные значения, граничные значения, некорректные данные. Результаты представлены в таблицах 8.1, 8.2 и 8.3.

Таблица 8.1 Результаты тестирования программы из задачи 1

Режим тестирования

Введённое значения

Значение z1

Значение z2

Корректные значения

15.8

-5.53

0.06

Корректные значения

-40

26.39

0.02

Граничные значения

0

4

0

Некорректные данные

b

Ошибка ввода

Некорректные данные

32..4

Ошибка ввода

Вывод: программа работает некорректно в случае ввода символа вместо числового значения и ошибочной записи дроби. Во всех остальных случаях результаты соответствуют действительности.

Таблица 8.2 Результаты тестирования программы из задачи 2

Режим тестирования

X

Y

Результат

Корректные значения

-0.5

0.5

Popali

Корректные значения

1

1

Ne popali

Граничные значения

0

1

Ne popali

Граничные значения

-1

0

Ne popali

Некорректные данные

b

-

Ошибка ввода

Некорректные данные

32..4

-

Ошибка ввода

Вывод: программа работает некорректно в случае ввода символа вместо числового значения и ошибочной записи дроби. Во всех остальных случаях результаты соответствуют действительности.

Таблица 8.3 Результаты тестирования программы из задачи 3

Режим тестирования

A

B

C

S

A

B

C

Корректные значения

45

7

74

23310.00

-

-

-

Корректные значения

13

6

42

-

6.5

3

21

Граничные значения

0

0

0

-

0

0

0

Граничные значения

49

49

49

-

24.5

24.5

24.5

Некорректные данные

k

-

-

Ошибка ввода

Некорректные данные

32..4

-

-

Ошибка ввода

Вывод: программа работает некорректно в случае ввода символа вместо числового значения и ошибочной записи дроби. Во всех остальных случаях результаты соответствуют действительности.

9 Заключение

В результате выполнения лабораторной работы освоены основные операторы и принципы построения линейных алгоритмов на языке Pascal, а так же принципы работы с условным оператором «if».


 

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

25280. Західноєвропейський (Д.Лукач, група «Праксіс», К.Косік. Г.Маркузе, Ж-ПСартр) та радянський (Е.Ільєнков, Г.Братішев, П.Копнін, З.Кабадзе, Ж.Абдільдін) неомарксизм 60-70 рр 62 KB
  Неомарксизм это особое течение общественной в том числе философской мысли 5060х годов нашего века выражавшее тот большой интерес к творчеству Маркса и его философии который был характерен для этого периода. Речь идет не о новых исследованиях работ Маркса и не о новой интерпретации его творчества. Неомарксизм это определенное теоретическое устремление найти при помощи Маркса ответы на животрепещущие вопросы современности. Как правило все они стремились понять насколько применимы взгляды Маркса к решению современных им проблем...
25281. Позитивізм ХІХ-ХХ ст. у Західній Європі та Російській імперії 34 KB
  Існує три історичні стадії позитивізму: перший класичний позитивізм другий позитивізм емпіріокритицизм і третій позитивізм неопозитивізм. Засновником позитивізму був О.Спенсер ще один представник першого позитивізму. Представниками ІІго позитивізму є Е.
25282. Философия прагматизма и неопрагматизма: основные идеи, их эволюция 36 KB
  опыте Мид социальный бихевиоризм и теория значения Неопрагмм К. Теория сомненияверы. наука сама на нее опирается Теория значения. Теория истины.
25283. ЭКЗИСТЕНЦИАЛИЗМ (Э.) 45 KB
  Альбер КАМЮ 19131960 Алжирский унивт. Альбер Камю 1913 1960. Особенностью философии Камю является то что у него нет систематизированного и всеохватывающего философского учения он занимается почти исключительно этическими проблемами. Основная философская работа Камю Миф о Сизифе открывается словами: Есть лишь одна действительно серьезная философская проблема: это самоубийство.
25284. Екзистеційна філософія у Східній Європі 25 KB
  Достоєвський. Достоєвський виступає проти будьякого насильства навіть якщо воно від імені Бога і проповідує шлях добровільного служіння людям задля досягнення земного раю . Достоєвський був палким прихильником релігії бо вважав що вона повністю ґрунтується на моральних мотивах а нерелігійне раціональне ставлення до світу провокує вседозволеність та аморалізм. Але Достоєвський розуміє релігію специфічно.
25285. Релігієзнавство як самостійна дисципліна гуманітарного знання встановлюється у другій половині ХІХ століття 38.5 KB
  Лише значні доробки в інших сферах знання щодо питання релігії сприяли постановці суто релігієзнавчих проблем. В контексті Просвітництва акумулювалася концепція яка стає відомою під назвою концепція природної релігії обмеженої лише розумом. Досвіди раціонального осмислення релігії які зявилися у появі філософії релігії. Перші автори які торкалися проблеми релігії і їх дослідження зявляються в ХХІ ст.
25286. Проблема сутності релігії, її визначальні характеристики. Специфіка релігійного світосприйняття 29 KB
  Специфіка релігійного світосприйняття Походження слова релігія: 1 Цицерон виводив релігію із relegere перечитувати перебирати. У нього релігія це начитаність знання на відміну від неуцтва; 2 Лактанцій виводив назву релігія від основи ligo звязувати скріплювати сполучати. Релігія у нього це звязок між Богом і людиною; 3 Августин від основи religo поєднувати союз між двома істотами. Релігія розуміється як союз Бога із занепалою людиною.
25287. Віра і релігійна віра. Психологічні аспекти осягнення феномену віри 28.5 KB
  Віра і релігійна віра. Психологічні аспекти осягнення феномену віри Поняття віра є полісемантичним багатозначним. Віра це особливого роду субєктивний акт те як ми віримо. У змістовному відношенні виділяють: 1 етичну віру віра довіря; напр.
25288. Вчення про Бога: теїзм, деїзм, пантеїзм 28.5 KB
  Вчення про Бога: теїзм деїзм пантеїзм Теїзм від грецького theos бог релігійнофілософське вчення яке визнає існування Бога як надприродної істоти що наділена розумом і волею і таємничим чином впливає на всі матеріальні та духовні процеси. На відміну від деїзму теїзм стверджує безпосередню участь Бога в усіх світових подіях а на відміну від пантеїзму відстоює існування Бога поза світом і над ним. deus бог вчення яке визнає існування Бога в якості першопричини світ який потім розвивається за своїми власними законами. деїзм...