Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 07.10.2008, 18:45   #1
+Hitman+
Пользователь
 
Регистрация: 24.02.2008
Сообщений: 17
Репутация: 10
По умолчанию Помогите пожалучта с задачей

Даны действительные числа s,t,a10..a12 получить p*(1)-P*(t)+p(в квадрате)*(s-t)-p(в кубе), где p(x)=a12*x(в12 степени) + a11*(x в 11 степени)+...+а0.
Сори за то что пишу в скобках степень, не нашёл как написать индексы, внизу и вверху.
Program aaaA;
type b=array [0..12] of integer;
var s,t,x,d1,d2:real;
i:integer;
Procedure R(a:b;x:real;var F:real);
var i:integer;
begin
F:=a[0];
For i:=1 to 12 do
begin
f:=a[i]*exp(i*ln(abs(x)))*abs(x)/x+f;
End;
end;
begin
For i:=0 to 12 do
begin
b[i]:= random(121); {вот тут у меня выдаёт ошибку}
End;
write('vvedite s');readln(s);
write('vvedite t');readln(t);
R(1,d);
R(t,d1);
R(s-t,d2);
z:=d-d1+sqr(d2)-sqr(d)*d;
write('z=,'z:0:2); end.
+Hitman+ вне форума   Ответить с цитированием
Старый 07.10.2008, 19:12   #2
-=<[Evklidd]>=-
ФорумчанинФорумчанин
 
Аватар для -=<[Evklidd]>=-
 
Регистрация: 22.01.2008
Адрес: В далёкой далёкой галактике
Сообщений: 161
Репутация: 75

icq: 472185524
По умолчанию

Конечно выдавать будет, потому что b - это тип, который вы объявили, а не переменная-массив! Создайте какую-либо переменную типа b в разделе var и вот к ней уже и обращайтесь.
ЗЫ И советую убрать лишние begin-end; в циклах с одним оператором - проще код читать/
ЗЗЫ У вас еще и вот здесь ошибки:
Цитата:
R(1,d);
R(t,d1);
R(s-t,d2);
, так как передаете только два параметра вместо трех во всех трех вызовах процедуры R, да и переменную d вы не объявили!

Последний раз редактировалось -=<[Evklidd]>=-; 07.10.2008 в 19:18.
-=<[Evklidd]>=- вне форума   Ответить с цитированием
Старый 07.10.2008, 19:15   #3
+Hitman+
Пользователь
 
Регистрация: 24.02.2008
Сообщений: 17
Репутация: 10
По умолчанию

спасибо, но вы не могли бы написать как правильно, когда я не ввожу в type то тоже выдаёт ошибку но не там а тут:
F:=a[0];
ЗЫ и мне посоветовали ввести в type
+Hitman+ вне форума   Ответить с цитированием
Старый 07.10.2008, 19:17   #4
puporev
Профессионал
 
Регистрация: 13.10.2007
Сообщений: 2,739
Репутация: 965
По умолчанию

У Вас нет переменной b, есть только тип-массив. Надо объявить переменную типа b. Кроме того вообще непонятно
R(1,d);
R(t,d1);
В процедуре объявлено три параметра, у Вас 2, причем первым должен быть массив.
puporev вне форума   Ответить с цитированием
Старый 07.10.2008, 19:22   #5
-=<[Evklidd]>=-
ФорумчанинФорумчанин
 
Аватар для -=<[Evklidd]>=-
 
Регистрация: 22.01.2008
Адрес: В далёкой далёкой галактике
Сообщений: 161
Репутация: 75

icq: 472185524
По умолчанию

Цитата:
спасибо, но вы не могли бы написать как правильно, когда я не ввожу в type то тоже выдаёт ошибку но не там а тут:
F:=a[0];
ЗЫ и мне посоветовали ввести в type
Свой тип-массив под названием b вы должны оставить, просто надо дополнительно создать переменную этого типа и к ней уже обращаться.
Вот код:
Код:
Program aaaA;
type b=array [0..12] of integer;
var 
s,t,x,d1,d2, d:real;
i:integer;
x:b;
Procedure R(a:b;x:real;var F:real);
var i:integer;
begin
F:=a[0];
For i:=1 to 12 do
f:=a[i]*exp(i*ln(abs(x)))*abs(x)/x+f;
end;
begin
For i:=0 to 12 do
x[i]:= random(121); {вот тут у меня выдаёт ошибку}
write('vvedite s');readln(s);
write('vvedite t');readln(t);
R(x,1,d);
R(x,t,d1);
R(x,s-t,d2);
z:=d-d1+sqr(d2)-sqr(d)*d;
write('z=,'z:0:2); end.

Последний раз редактировалось -=<[Evklidd]>=-; 07.10.2008 в 19:26.
-=<[Evklidd]>=- вне форума   Ответить с цитированием
Старый 07.10.2008, 19:35   #6
+Hitman+
Пользователь
 
Регистрация: 24.02.2008
Сообщений: 17
Репутация: 10
По умолчанию

спасибо, а у вас не выдаёт ошибку тут:
x:b;
так получается что мы х используем два раза и выдаёт 4 ошибку, нужно убрать х от сюда s,t,x,d1,d2, d:real; ?
а после этого тут write('z=,'z:0:2); end.

Последний раз редактировалось +Hitman+; 07.10.2008 в 19:41.
+Hitman+ вне форума   Ответить с цитированием
Старый 07.10.2008, 19:56   #7
-=<[Evklidd]>=-
ФорумчанинФорумчанин
 
Аватар для -=<[Evklidd]>=-
 
Регистрация: 22.01.2008
Адрес: В далёкой далёкой галактике
Сообщений: 161
Репутация: 75

icq: 472185524
По умолчанию

Да, вы правы, просто торопился, не заметил, что переменная x уже была объявлена.
Цитата:
а после этого тут write('z=,'z:0:2); end.
Вообще-то и переменная z у ваc тоже не объявлена в var, к тому же в операторе write вынесите запятую из кавычек или добавьте еще одну

Вот выкладываю код вашей программы без ошибок:
Код:
Program aaaA;
type b=array [0..12] of integer;
var s,t,d1,d2,d,z:real;
i:integer;
l: b;
Procedure R(a:b; x:real; var F:real);
begin
F:=a[0];
For i:=1 to 12 do
f:=a[i]*exp(i*ln(abs(x)))*abs(x)/x+f;
end;
begin
For i:=0 to 12 do
l[i]:= random(121);
write('vvedite s');readln(s);
write('vvedite t');readln(t);
R(l,1,d);
R(l,t,d1);
R(l,s-t,d2);
z:=d-d1+sqr(d2)-sqr(d)*d;
write('z= ',z:0:2); end.

Последний раз редактировалось -=<[Evklidd]>=-; 07.10.2008 в 20:12.
-=<[Evklidd]>=- вне форума   Ответить с цитированием
Старый 07.10.2008, 20:17   #8
+Hitman+
Пользователь
 
Регистрация: 24.02.2008
Сообщений: 17
Репутация: 10
По умолчанию

-=<[Evklidd]>=- спасибо большое!
+Hitman+ вне форума   Ответить с цитированием
Старый 07.10.2008, 20:24   #9
-=<[Evklidd]>=-
ФорумчанинФорумчанин
 
Аватар для -=<[Evklidd]>=-
 
Регистрация: 22.01.2008
Адрес: В далёкой далёкой галактике
Сообщений: 161
Репутация: 75

icq: 472185524
По умолчанию

Хочешь сказать "спасибо" - оставь положительный отзыв о моем сообщении(-ях) ("весы" под репутацией и рядом со статусом offline/online). Тебе ведь мелочь - а мне приятно
-=<[Evklidd]>=- вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с задачей. terminadoor Помощь студентам 4 22.07.2008 18:38
Помогите с задачей на С++ Nemisoi Помощь студентам 1 22.04.2008 22:09
Помогите с задачей Лёха Паскаль 7 08.02.2008 21:08
Помогите с задачей bel_ka Общие вопросы C/C++ 13 26.12.2007 20:23


02:17.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.