Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.05.2014, 15:15   #1
Alukardo
 
Регистрация: 05.05.2014
Сообщений: 3
По умолчанию Подпрограммы ABC паскаль

Помогите в написании программ,в функциях и процедурах не разбираюсь.
1) Даны координаты трех точек плоскости .Определить периметр треугольника с данными вершинами( использовать функцию, которая находится между двумя точками).
2) Даны n элементов массива a и m элементов массива b. Определить значение выражения max(n,a)*max(m,b), где max(n,a)-максимальный элемент массива a размерности n.
Alukardo вне форума Ответить с цитированием
Старый 05.05.2014, 19:42   #2
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

То есть, проблема только в оформлении подпрограмм? Напишите программы БЕЗ них, и я помогу вам с подпрограммами.
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 06.05.2014, 00:10   #3
Alukardo
 
Регистрация: 05.05.2014
Сообщений: 3
По умолчанию

Код:
Program Triugolnik;
Var Xa,Xb,Xc,
Ya,Yb,Yc,p:real;

function perv(xa,xb,ya,yb:real):real;
var o:real;
begin
o:=sqrt(sqr(abs(xa-xb))+sqr(abs(ya-yb)));
perv:=o;
end;
function vtor(xa,xc,ya,yc:real):real;
var l:real;
begin
l:=sqrt(sqr(abs(xa-xc))+sqr(abs(ya-yc)));
vtor:=l;
end;
function tr(xb,xc,yb,yc:real):real;
var k:real;
begin
k:=sqrt(sqr(abs(xb-xc))+sqr(abs(yb-yc)));
tr:=k;
end;
begin
Writeln('Введите координаты точки А:');
write('x= ');readln(xa);
write('y= ');readln(ya);
Writeln('Введите координаты точки B:');
write('x= ');readln(xb);
write('y= ');readln(yb);
Writeln('Введите координаты точки C:');
write('x= ');readln(xc);
write('y= ');readln(yc);
p:=perv+vtor+tr;
writeln('Периметр триугольника равен ',p:4:2);
readln;
end.
первая программа, ну тут выдает ошибку в конце ,что операция плюс не применима к функции.



________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
(это кнопочка на панели форматирования с решёточкой #)
Не забывайте об этом!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 06.05.2014 в 00:27.
Alukardo вне форума Ответить с цитированием
Старый 06.05.2014, 00:56   #4
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,499
По умолчанию

Alukardo, вы вообще не поняли суть подпрограмм ( функций, процедур).
Для чего они нужны ?
Для того, чтобы один раз описать функцию, а потом - сколько угодно раз ее применять (вызывать).
А если бы был не 3-угольник, а 123-угольник то что, описывали бы 123 функции, по сути одну и ту же? perv, vtor, ... stodvadcattret ?

Вот описание функции для вычисления расстояния между точками ( между любыми точками).
Код:
function rasst(x1,x2,y1,y2:real):real;
begin
 rasst:=sqrt(sqr(x1-x2)+sqr(y1-y2)); // не нужен abs, все равно в квадрате
end;
Вот ее и вызывайте в основной программе, 3 раза, для 3-х сторон.
Только аргументы в скобках поставьте.

Последний раз редактировалось type_Oleg; 06.05.2014 в 01:04.
type_Oleg вне форума Ответить с цитированием
Старый 06.05.2014, 02:29   #5
Alukardo
 
Регистрация: 05.05.2014
Сообщений: 3
По умолчанию

спасибо, 1-ю программу исправил стала адекватно работать
Alukardo вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
паскаль abc. Используя графические средства языка Паскаль на одной координатной сетке построить графики функций кириллюк Помощь студентам 5 15.09.2013 12:11
Задача на подпрограммы Pascal ABC Tenken1995 Помощь студентам 0 03.06.2013 17:03
подпрограммы (ПАСКАЛЬ) Вероника_94 Помощь студентам 2 04.02.2012 14:05
паскаль подпрограммы Джуля Помощь студентам 6 23.12.2010 23:23
Паскаль.подпрограммы Андрюха74 Помощь студентам 2 08.06.2010 20:55