IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> графики для биоритмов
sergey_180
сообщение 21.09.2005 15:30
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 16
Пол: Мужской
Реальное имя: Сергей

Репутация: -  0  +


Перенесено из форума FAQ

помогите , пожалуйста, дополнить программу по определению биоритмов(из учебника Фаронова). Нужно графически показать поведение 3-х синусоид, каждая из которых соответствует определенному биоритму , на заданном интервале. Обязательно нужна легенда. Зараннее спасибо
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 21.09.2005 15:48
Сообщение #2


Гость






sergey_180, я, кажется, просил не постить вопросы в форум FAQ !!!
 К началу страницы 
+ Ответить 
sergey_180
сообщение 21.09.2005 19:57
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 16
Пол: Мужской
Реальное имя: Сергей

Репутация: -  0  +


У меня минимальная абсцисса равна 2*pi/33*days , но программа выдает ошибку N133. Подскажите , пожалуйста , что делать.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 22.09.2005 7:18
Сообщение #4


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


133 -- невозможно вычислить данное выражения, приведи пожалуйста для каких чисел ты это считаешь, и каких типов переменная days и то чему ты это все дело присваиваещь :yes:

Сообщение отредактировано: klem4 - 22.09.2005 7:21


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
sergey_180
сообщение 23.09.2005 18:31
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 16
Пол: Мужской
Реальное имя: Сергей

Репутация: -  0  +


у меня days - типа integer и равна целому количеству дней, прошедших от одной даты(даты рождения) до другой. Обе даты вводятся с клавы причем я учитываю что дата рождения меньше второй даты. TI - период интеллектуальной активности unsure.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 23.09.2005 18:38
Сообщение #6


Гость






:no: Не пойдет... Приведи кусок кода (2-3 строки), где происходит ошибка, и типы всех переменных в ошибочном выражении, иначе получается опять гадание на кофейной гуще...
 К началу страницы 
+ Ответить 
sergey_180
сообщение 24.09.2005 11:36
Сообщение #7


Новичок
*

Группа: Пользователи
Сообщений: 16
Пол: Мужской
Реальное имя: Сергей

Репутация: -  0  +


function ScreenY( y: integer ): integer;
begin
ScreenY := round( GetMaxY / 2 ) - y;
end;
function ScaleX( x: real ): integer;
const
MinX = 2 * 3.14159 / 33 * days; {вот тут и появляется ошибка}
MaxX = 2 * 3.14159 / 28 * ( days + interval );
begin
ScaleX := round( ( x - MinX ) / ( MaxX - MinX ) * GetMaxX );
end;

X-типа real
interval-константа(например interval = 30) huh.gif

Сообщение отредактировано: volvo - 24.09.2005 12:00
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 24.09.2005 11:58
Сообщение #8


Гость






function ScaleX( x: real ): integer;
const
MinX = 2 * 3.14159 / 33 * days;(вот тут и появляется ошибка)

Заметь, ты пытаешься изменить значение константы !!! Не даст тебе Паскаль этого сделать... Одно дело, когда ты пишешь:
Const
MinX = 180 * Pi;
, то есть константа вычисляется при компиляции из уже известных составляющих (это возможно), а совсем другое, когда ты пытаешься вычислить константу с помощью переменной (это запрещено). Что можно сделать:
function ScaleX( x: real ): integer;
Var MinX, MaxX: Real; { определяешь как переменные }
begin
{ и сначала вычисляешь... }
MinX = 2 * 3.14159 / 33 * days; { ошибки быть НЕ должно... }
MaxX = 2 * 3.14159 / 28 * ( days + interval );

{ ... а потом используешь }
ScaleX := round( ( x - MinX ) / ( MaxX - MinX ) * GetMaxX );
end;
 К началу страницы 
+ Ответить 
sergey_180
сообщение 25.09.2005 8:00
Сообщение #9


Новичок
*

Группа: Пользователи
Сообщений: 16
Пол: Мужской
Реальное имя: Сергей

Репутация: -  0  +


большое спасибо ! :molitva: Вроде все работает .
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.07.2025 10:50
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"