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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.01.2012, 22:44   #1
Fradi
Новичок
Джуниор
 
Регистрация: 12.01.2012
Сообщений: 2
По умолчанию В паскале функцию переделать с модулем

Помогите пожалуйста

Нужно составить программу для вычисления функции
_______2.5*х при х<=10
Y(x)=__х*х+х-1 при 0<х<10
_______х при х>=10
Используя разработанную программу, вычислить
Z=(SQR(Y(A))+Y(A+7)+1)/(SQR(Y(A+8)))

я составил программу через функцию:

Код:
program lab8;
 var z, A: real;
 function Y(x:integer): real;

 begin
 if x<=0 then Y:=2.5*x else
 if x>=10 then Y:=x else
 Y:=sqr(x)+x-1
 end;

 begin
 Write('введите А='); Readln(A);
 z:=(sqr(Y(A))+Y(A+7)+1)/sqr(Y(A+8));
 writeln ('z= ',z:6:3);
 readln;
 end.
а теперь нужно переделать эту же програму, но только с модулем
я сделал, но программа не работает


Код:
 Program lb8;
 uses mod7;
 var
 x,z,a:real;
 begin
 write('vvedite A = '); readln(a);
 z:=(y(a)*y(a)+y(a+7)+1)/sqr(y(a+8));
 writeln('z = ',z:10:4);
 readln;
 end.
 unit mod7;
 interface
 function y(x:real): real;
 implementation
 function y(x:real): real;
 begin
 if x<=0 then y:=2.5*x
 else
 if x>=10 then y:=x
 else y:=x*x+x-1;
 end;
 end.
Fradi вне форума Ответить с цитированием
Старый 12.01.2012, 23:49   #2
Leshii
Форумчанин
 
Регистрация: 26.07.2011
Сообщений: 376
По умолчанию

Значит так, мухи и котлеты отдельно

вот твой модуль.

Код:
unit mod7;
 interface
 function y(x:real): real;
 implementation
 function y(x:real): real;
 begin
 if x<=0 then y:=2.5*x
 else
 if x>=10 then y:=x
 else y:=x*x+x-1;
 end;
 end.

тело программы.

Код:
Program lb8;
 uses mod7;
 var
 x,z,a:real;
 begin
 write('vvedite A = '); readln(a);
 z:=(y(a)*y(a)+y(a+7)+1)/sqr(y(a+8));
 writeln('z = ',z:10:4);
 readln;
 end.
Модуль ты сохраняешь в паскале таким образом :
Сверху ищешь закладку Сompile , нажимаешь, после внимательно смотришь на вот такие слова
Destination -> Disk ( надо чтобы было Disk )
после сверху ищешь ( там же слово Bild ) жмешь , и если нет ошибок в программе то модуль создан. После делаеш отдельную программу (себ то тело программы , ты его уже сделал, и после подключаеш модуль)
Внимательно ! надо чтобы название модуля совпадало с названием которое стоит рядом с
Цитата:
Unit ...
.
Цитата:
Модуль у тебя сохраняется с расширением *.tpu
Люблю на ты.Я человек простой
Leshii вне форума Ответить с цитированием
Старый 13.01.2012, 00:36   #3
Fradi
Новичок
Джуниор
 
Регистрация: 12.01.2012
Сообщений: 2
По умолчанию

спасибо большое!
Fradi вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Переделать функцию Delphi_ProGer Помощь студентам 3 24.12.2010 13:56
функцию переделать на процедуру morgan996 Помощь студентам 2 08.01.2010 13:08
Работа с графическим модулем Graph на Паскале ifen Помощь студентам 0 09.06.2009 19:51
Проблема с модулем в паскале deu4er Помощь студентам 5 04.04.2009 19:40