PASCAL ABC Лабораторная работа № 1 Программирование линейных алгоритмов

  • docx
  • 11.11.2021
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала Л2-00417.docx

PASCAL ABC Лабораторная работа № 1
Программирование линейных алгоритмов

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

Линейным называется алгоритм, в котором результат получается путем однократного выполнения заданной последовательности действий при любых значениях исходных данных. Согласно линейному алгоритму, прогон программы начинается с ее первого выполняемого оператора. Операторы будут задействованы последовательно, один за другим, в соответствии с их расположением в тексте программы.

Задание 1. Определить площадь треугольника по формуле Герона

где а, b, с - длины сторон;

р = (а + b + с)/2 - полупериметр треугольника.

Для того чтобы рассчитать S, необходимо иметь численные значения р, а, b, с. Мы можем рассчитать р по формуле, а вот значения а, b, с должны быть заданы заранее.

Составить программу вычисления площади треугольника по формуле Герона для исходных данных трем сторонам a, b, c.

Программа на языке Pascal

program Geron; {заголовок программы}

  var a, b, c, p, s : real; {описание переменных вещественного типа}

  begin  {начало раздела операторов}

      readln(a, b, c); {вычисление исходных данных – сторон треугольника}

      p := (a + b + c) / 2; {вычисление полупериметра}

      s := sqrt(p * (p – a) * (p – b) * (p – c)); {вычисление площади}

      write (‘ Площадь S=’,s:8:3); {вывод результирующей площади}

  end. {завершение программы}

Как уже говорилось ранее, совершенно не обязательно записывать каждый оператор на новой строке. Верной была бы и следующая запись:
program Geron; var a, b, c, p, s : real; begin readln(a, b, c); p := (a + b + c) / 2;
 s := sqrt(p * (p – a) * (p – b) * (p – c)); write (s); end.

Задание 2. Операции  с переменными  целого типа

Program Action;

Var       A,B,C: integer;

begin

A:=17;  B:=3;

C:=A*B; {Операция умножения} writeln(‘17*3=’,C);

C=A div B ; {Деление нацело} writeln(‘17 div 3=’,C );

C:=A mod B ; { Вычисление остатка от деления: } writeln(‘17 mod 3=’,C);

C:= A+B; { Сложение : } writeln(‘17 mod 3=’,C);

C=A-B; {Вычитание:  } writeln(‘17 mod 3=’,C);

end.

При запуске программы вывод на экран :

17*3=51

17 div 3=5

17 mod 3= 5

17 + 3=20

17 - 3=14

Пример 1. Вычислить значение арифметического выражения следующего вида:

 

Программа на языке Паскаль выглядит следующим образом:

program myprog;

var                    a,b,c,d,v:real;

begin

a:=1.5;

b:=4.301:c:=10:

d:=7.11;

v:=(a*sqrt(abs(sin(b*c+a)))-exp(-a*c))/sqrt(abs(s*b+d)):

write(‘  V = ‘,v):

end.


 

Скачано с www.znanio.ru