Добавить материал и получить бесплатное свидетельство о публикации в СМИ
Эл. №ФС77-60625 от 20.01.2015
Инфоурок / Информатика / Другие методич. материалы / Линейный алгоритм в Паскале

Линейный алгоритм в Паскале



Осталось всего 4 дня приёма заявок на
Международный конкурс "Мириады открытий"
(конкурс сразу по 24 предметам за один оргвзнос)


  • Информатика

Поделитесь материалом с коллегами:

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


По теме: «Программирование алгоритмов линейной структуры».


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


Задания для самостоятельной подготовки:

  1. Изучите:

  • Запись констант, переменных, стандартных функций;

  • Правила записи арифметических выражений;

  • Оператор присваивания;

  • Организацию ввода/вывода данных.

Составьте алгоритм, программу и выполните её на ЭВМ. На печать выведите значения вводимых данных и результаты вычислений, сопровождая их наименованиями переменных и комментариями.

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

Пример выполнения работы:


Пример 1. Треугольник задан координатами своих вершин Х1,У1,Х2,У2,Х3,У3.

Составьте программу вычисления площади треугольника по формуле Герона при х1=10;у1=15; х2=15;у2=20;х3=25;у3=30.


Введем обозначения:

Х1,У1,Х2,У2,Х3,У3 – координаты вершин треугольника;

a, b, c – длины сторон треугольника;

p – полупериметр треугольника;

s – площадь треугольника.

s = √р*(р – а)*(р – b)*(р – с),

Так как значения Х1,У1,Х2,У2,Х3,У3 известны, то их можно ввести в раздел оконстант.

a, b, c, p, s – опишем в разделе переменных как real.


Алгоритм решения задачи:

Алг упр_1(вещ х1,у1,х2,у2,х3,у3,р,s)

Арг х1,у1,х2,у2,х3,у3

Рез p,s

Нач вещ a,b,c

. .

a:= √ (x2-x1)2 + (y2-y1)2 ;

b:= √ (x3-x2)2 + (y3-y2)2 ;

c:= √(x3-x1)2 + (y3-y1)2 ;

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

s:=√p*(p-a)*(p-b)*(p-c);

кон

Программа решение задачи будет иметь вид:


PROGRAM UPR_1;

const

x1=10;y1=15; (* координаты первой вершины треугольника *)

x2=15; y2=20; (* координаты второй вершины треугольника *)

x3=25; y3=30; (* координаты третьей вершины треугольника *)

var

a, b, c: real; (* длина сторон треугольника *)

p: real; (*полупериметр треугольника *)

s: real; (* площадь треугольника *)


begin

clrscr;

a:= sqrt(sqr(x2-x1)+sqr(y2-y1)); (*вычисление длины стороны треугольника а *)

b:= sqrt(sqr(x3-x2)+sqr(y3-y2)); (*вычисление длины стороны треугольника b *)

c:= sqrt(sqr(x3-x1)+sqr(y3-y1)); (*вычисление длины стороны треугольника c *)

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

s : = sqrt(p*(р-а)*(р-b)*(p-c)); (* вычисление площади треугольника *)

writeln;

write(‘При координатах: x1=’,x1:2,’ ‘:3,’y1=’,y1:2,’ ‘:3,’x2=’,x2:2,’ ‘:3,’y2=’,y2:2,’ ‘:3,’x3=’,x3:2,’ ‘:3,’y3=’,y3:2);

writeln(‘вычисление площади треугольника’);

write(‘a=’,a:4:2,’ ‘:3,’b=’,b:4:2,’ ‘:3,’c=’,c:4:2,’ ‘:3,’p=’,p:4:2,’ ‘:3,’s=’,s:6:3);

readln;

end.


Первый оператор вывода WRITELN печатает текст на экране с первой позиции строки. Выводит значения координат по формату 2:0 через три пробела. Второй оператор выводит на экран текст и готовит вывод информации с новой строки. Третий оператор печатает обозначение сторон треугольника, полупериметра по формату 4:2, а площади – 6:3, выводит их значения на экран, отделяя их друг от друга тремя пробелами.

В результате на экране получим сообщение:

При координатах: х1=10 у1=15 х2=15 у2=20 х3=25 у3=30

Вычисление площади треугольника

А=7.07 b=14.14 с=15.80 р=18.50 s=50.137


Скорректируем программу:


PROGRAM UPR_1;

Var

x1,y1,x2,y2,x3,y3: real; (* координаты вершин треугольника *)

a, b, c: real; (* длина сторон треугольника *)

p: real; (*полупериметр треугольника *)

s: real; (* площадь треугольника *)


begin

clrscr;

Writeln( ‘Введите координаты вершин треугольника’);

Writeln(‘x1=10,y1=15,x2=15,y2=20,x3=25,y3=30’);

Readln(x1,y1,x2,y2,x3,y3);

a:= sqrt(sqr(x2-x1)+sqr(y2-y1)); (*вычисление длины стороны треугольника а *)

b:= sqrt(sqr(x3-x2)+sqr(y3-y2)); (*вычисление длины стороны треугольника b *)

c:= sqrt(sqr(x3-x1)+sqr(y3-y1)); (*вычисление длины стороны треугольника c *)

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

s : = sqrt(p*(р-а)*(р-b)*(p-c)); (* вычисление площади треугольника *)

writeln;

write(‘При координатах: x1=’,x1:2,’ ‘:3,’y1=’,y1:2,’ ‘:3,’x2=’,x2:2,’ ‘:3,’y2=’,y2:2,’ ‘:3,’x3=’,x3:2,’ ‘:3,’y3=’,y3:2);

writeln(‘вычисление площади треугольника’);

write(‘a=’,a:4:2,’ ‘:3,’b=’,b:4:2,’ ‘:3,’c=’,c:4:2,’ ‘:3,’p=’,p:4:2,’ ‘:3,’s=’,s:6:3);

readln;

end.


В результате на экране получим сообщение:

Введите координаты вершин треугольника

x1=10,y1=15,x2=15,y2=20,x3=25,y3=30

При координатах: х1=10 у1=15 х2=15 у2=20 х3=25 у3=30

Вычисление площади треугольника

А=7.07 b=14.14 с=15.80 р=18.50 s=50.137




57 вебинаров для учителей на разные темы
ПЕРЕЙТИ к бесплатному просмотру
(заказ свидетельства о просмотре - только до 11 декабря)


Автор
Дата добавления 10.05.2016
Раздел Информатика
Подраздел Другие методич. материалы
Просмотров83
Номер материала ДБ-073864
Получить свидетельство о публикации
Похожие материалы

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