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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.04.2011, 21:52   #1
homa371
Пользователь
 
Регистрация: 20.01.2011
Сообщений: 23
По умолчанию Степени в паскале.!Ошибка в коде

Код:
program zadacha2;
uses math;
uses crt;
Procedure mat(var x,y,n:real);

begin

Procedure mat;
var per:real;
Begin

per:abs(x);
if x < 0 then pow:=(-1)*exp((n)*ln(per))
if x > 0 then pow:=exp((n)*ln(per));
l:=round(n);
if (l mod 2 = 0) then R:=Abs(pow);
if (n = 0) then pow:=1;

End;

clrscr;
write('Vvedite Y:');
readln(y);
write('Vvdeite stepen(N):');
readln(n);
writeln('x=y^n=',mat(x,y,n));
end.
Все вроде правильно сделал и библиотек подключил и т.д.,но выдает ошибку про begin : Error 36: BEGIN expected.
....?
homa371 вне форума Ответить с цитированием
Старый 13.04.2011, 22:03   #2
rubius2008
Форумчанин
 
Регистрация: 19.03.2010
Сообщений: 409
По умолчанию

Код:
program zadacha2;
uses math;
uses crt;
Procedure mat(var x,y,n:real);
var per:real;
Begin

per:=abs(x);
if x < 0 then pow:=(-1)*exp((n)*ln(per))
if x > 0 then pow:=exp((n)*ln(per));
l:=round(n);
if (l mod 2 = 0) then R:=Abs(pow);
if (n = 0) then pow:=1;

End;

begin
clrscr;
write('Vvedite Y:');
readln(y);
write('Vvdeite stepen(N):');
readln(n);
writeln('x=y^n=',mat(x,y,n));
end.
Есть вопросы, пишите в ЛС.
rubius2008 вне форума Ответить с цитированием
Старый 13.04.2011, 22:11   #3
homa371
Пользователь
 
Регистрация: 20.01.2011
Сообщений: 23
По умолчанию

ну и так тоже попробовал...ничего не изменилось((
homa371 вне форума Ответить с цитированием
Старый 13.04.2011, 22:18   #4
RomiKon
Форумчанин
 
Регистрация: 11.04.2010
Сообщений: 143
По умолчанию

Код:
program zadacha2;
uses math, crt;
Procedure mat(var x,y,n:real);
var per:real;
Begin

per:=abs(x);
if x < 0 then pow:=(-1)*exp((n)*ln(per));
if x > 0 then pow:=exp((n)*ln(per));
l:=round(n);
if (l mod 2 = 0) then R:=Abs(pow);
if (n = 0) then pow:=1;

End;

begin
clrscr;
write('Vvedite Y:');
readln(y);
write('Vvdeite stepen(N):');
readln(n);
writeln('x=y^n=',mat(x,y,n));
end.
А вообще я просто исправил синтаксические ошибки а так код не рабочий.
Скажите какой результат вам нужен хотя бы, чтобы было ясно где поправить

Последний раз редактировалось RomiKon; 13.04.2011 в 22:21.
RomiKon вне форума Ответить с цитированием
Старый 13.04.2011, 22:24   #5
homa371
Пользователь
 
Регистрация: 20.01.2011
Сообщений: 23
По умолчанию

А что именно в нем не так?
homa371 вне форума Ответить с цитированием
Старый 13.04.2011, 22:30   #6
homa371
Пользователь
 
Регистрация: 20.01.2011
Сообщений: 23
По умолчанию

Цитата:
Сообщение от RomiKon Посмотреть сообщение
А вообще я просто исправил синтаксические ошибки а так код не рабочий.
Скажите какой результат вам нужен хотя бы, чтобы было ясно где поправить
Найти ошибку и компиляция без ошибок.

y=x^n;

y=2^0=1
homa371 вне форума Ответить с цитированием
Старый 13.04.2011, 22:38   #7
RomiKon
Форумчанин
 
Регистрация: 11.04.2010
Сообщений: 143
По умолчанию

В код функции возведения в степень вникать не буду.
Во первых напрягает вот эта строчка
Код:
writeln('x=y^n=',mat(x,y,n));
должно быть так
Код:
mat(x, y, n);
writeln('x=y^n=', x);
И ещё у вас x y n не объявлены Тогда как же вы собираетесь с ними работать?
После описания процедуры mat добавте
Код:
var
  x, y, n: real;
RomiKon вне форума Ответить с цитированием
Старый 14.04.2011, 14:06   #8
New man
Форумчанин
 
Регистрация: 24.01.2011
Сообщений: 774
По умолчанию

Код:
program zadacha2;
uses math, crt;
Function mat(y,n:real):real;
var per:real;
Begin
per:=abs(y);
if y < 0 then mat:=(-1)*exp((n)*ln(per)) else
if y > 0 then mat:=exp((n)*ln(per)) else
mat:=1

End;
var y,n:real
begin
clrscr;
write('Vvedite Y:');
readln(y);
write('Vvdeite stepen(N):');
readln(n);
writeln('x=y^n=',mat(y,n));
readln
end.
a.k.a. Angelicos Phosphoros
Мой сайт
New man вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка в коде, ошибка в css или это проблема с совместимостью с браузерами? ankris HTML и CSS 5 23.11.2010 16:58
Ошибка в коде Maxim1 Общие вопросы C/C++ 1 31.05.2010 14:52
вычисление степени в паскале T@tali Паскаль, Turbo Pascal, PascalABC.NET 5 25.05.2010 22:24
ошибка в коде Pytnik Паскаль, Turbo Pascal, PascalABC.NET 45 25.05.2010 17:30
Ошибка в коде hacknet Компоненты Delphi 12 07.12.2008 14:23