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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.05.2007, 11:16   #1
Acid
 
Регистрация: 27.04.2007
Сообщений: 3
Вопрос Где я накосячил?

программа
Код:
program lab8;
uses crt, count;
var
begin
clrscr;
Writeln ('Введите переменную для второй задачи');
readln(x);
Writeln ('Введите переменную для второй задачи');
readln(b);
Writeln ('Результат первой задачи=',laba1(z));
Writeln ('Результат второй задачи=',laba2(y));
Writeln ('Результат третьеё задачи=',laba3(b));
end.
юнит
Код:
Unit count;
Interface
type
r=real;
function laba1(var z:r):r;
function laba2(var x,y:r):r;
function laba3(var n:integer; b:r):r;
Implementation

Function laba1;
const t=8; a=(-1);
Begin
z:=abs(cos(2*t)/(a+sin(t)))+sqr(t)*sqrt(sin(t));
end;

function laba2;
begin
if ((-2>x) or (x>4)) then writeln ('переменная задана неверно')
else begin if x<=1 then y:=(sin(x)/Cos(x))/(1+((sin(x)/Cos(x))))
else if x>1 then y:=exp(2.5*ln(ln(x)/ln(10)));
End; end;

function laba3;
var i:integer; s,c:r;
begin
s:=b;
for i:=1 to n do begin c:=(exp(n*ln(-b))/(2*n+1));
s:=s+c;end;end;end.
с формулами всё нормально а с типами походу накосячил как надо, исправьте меня плиз
Acid вне форума Ответить с цитированием
Старый 30.05.2007, 11:38   #2
Трофимов Александр
Форумчанин
 
Аватар для Трофимов Александр
 
Регистрация: 03.11.2006
Сообщений: 321
По умолчанию

С переменными совсем запутано , а функциям где значения возвращаемые присваиваются?
Трофимов Александр вне форума Ответить с цитированием
Старый 30.05.2007, 11:50   #3
zetrix
Delphi/C++/C#
Участник клуба
 
Аватар для zetrix
 
Регистрация: 29.10.2006
Сообщений: 1,972
По умолчанию

С функциями гон.
Цитата:
Function laba1;
const t=8; a=(-1);
Begin
z:=abs(cos(2*t)/(a+sin(t)))+sqr(t)*sqrt(sin(t));
end;
пиши так :
Function laba1:r;
const t=8; a=(-1);
Begin
laba1:=abs(cos(2*t)/(a+sin(t)))+sqr(t)*sqrt(sin(t));
end;
соответственно для других функций тоже самое+убери лишние переменные (для laba1 это var z)
Упрощение type r=real - только усложняет всё!

Судя по всему у Вас не очень ясные представления как использовать функции, и отличие процедуры от функции.
zetrix вне форума Ответить с цитированием
Старый 30.05.2007, 11:56   #4
Aleksandr
Форумчанин
 
Регистрация: 22.05.2007
Сообщений: 511
По умолчанию

Опиши переменные
Aleksandr вне форума Ответить с цитированием
Старый 30.05.2007, 12:56   #5
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,087
По умолчанию

хех... а real типа долго писать чтоль?)
pu4koff вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Накосячил..что делать???(( vip131 Свободное общение 2 07.02.2008 07:42