Вопрос № 66313: Добрый день, уважаемые эксперты!
Помогите понять суть задания:
Построить таблицу разбора и программу для описания типов переменных языка Pascal.
Спасибо за ответы.
..Вопрос № 66346: Уважаемые эксперты, помогите найти ошибку:
В программе существует процедура print (u), которая выводит список на экран. Если использовать её один раз, то она работает. Но если использовать 2, как представленно в программе, конечный список будет п...Вопрос № 66391: Здравствуйте,необходимо вычислить функцию y=(|X|-10) и все это в 57-ой степени.При x < -16.
Я попробовал решить следующим оброзом:
program exm_1;
Uses CRT;
Const a=57;
Var
i:integer;
x,y:real;
Begin
ClrScr...
Вопрос № 66.313
Добрый день, уважаемые эксперты!
Помогите понять суть задания:
Построить таблицу разбора и программу для описания типов переменных языка Pascal.
Отвечает: Nightman
Здравствуйте, Вахрамеева Оксана!
У меня на ету тему бил курсовой проект:)Дайте мне свой мейл и я закину вам на него код.
vito-ua@bk.ru
Удачи!
(Просто он здесь не помещаетса:))
Ответ отправил: Nightman (статус: 1-ый класс)
Ответ отправлен: 10.12.2006, 13:53
Вопрос № 66.346
Уважаемые эксперты, помогите найти ошибку:
В программе существует процедура print (u), которая выводит список на экран. Если использовать её один раз, то она работает. Но если использовать 2, как представленно в программе, конечный список будет пустым. Почему?
Отвечает: John Paramol
Здравствуйте, MariaErohina!
В процедуру print указатель u передается по ссылке (var).
В ней он изменяется, поэтому при втором вызове print,
он будет другим (будет указывать в конец списка).
Нужно передавать его по значению:
procedure print (u :list);
Удачи!
--------- 1=2, at values 1 large enough
Ответ отправил: John Paramol (статус: 5-ый класс)
Ответ отправлен: 10.12.2006, 16:12
Вопрос № 66.391
Здравствуйте,необходимо вычислить функцию y=(|X|-10) и все это в 57-ой степени.При x < -16.
Я попробовал решить следующим оброзом:
program exm_1;
Uses CRT;
Const a=57;
Var
i:integer;
x,y:real;
Begin
ClrScr;
y:=1;
writeln ('Введите X');
readln(X);
If X<-16 then
For i=1 do a
y:=y*(abs(X))-10);
writeln ('при X=',X:5:2);
write ('y=',y:5:2);
readln
End.
но когда ввожу х=-17 ,то появляется ошибка 205 "переполнение вещественного числа".
Еще один вопрос. Если я хочу ограничить при расчетах 3-им или 5-ым знаком посое десятичной запятой,как это реализовать в паскале.
Отвечает: Sarymian
Здравствуйте, Kulikov_Oleg_Viktorovich!
Попробуйте так (в приложении):
В разработке програм в следующем можете использовать перевод степени на язык программирования. если имеется выражение (х-234) в 157 степени то надо: Экспоненту от степени умножить на натуральный логарифм от показателя степени, т.е. выглядит это так:
exp(157)*ln(x-234)
Приложение:
Ответ отправил: Sarymian (статус: 4-ый класс)
Ответ отправлен: 11.12.2006, 05:32
Отвечает: sir henry
Здравствуйте, Kulikov_Oleg_Viktorovich!
1. Забудьте про вещественный тип REAL. Его придумали в то время, когда математические сопроцессоры были ужасно дороги. Теперь же они сидят в каждом компе. :) Используйте либо тип SINGLE, если ожидаемое значение не выходит за диапазон 1.5 x 10^–45 .. 3.4 x 10^38, в противном же случае пользуйтесь типом DOUBLE, у него значения лежат в диапазоне 5.0 x 10^–324 .. 1.7 x 10^308 , т.е. степень 57 туда как раз входит. У REAL диапазон ограничен 2.9 x 10^–39 .. 1.7 x 10^38.
2. При расчетах Вы, к сожалению, не сможете ограничится каким либо знаком после запятой, однако Вы это можете сделать при выводе результата:
WriteLn(Число:N:M);
Здесь:
N - это общее количество выводимых знаков,
M - число знаков после запятой.
Таким образом если задать:
a:=1,375E-3;
WriteLn(a:10:5);
то в результате выведется число 0,00137. Впереди дополнится пробелами до 10 знаков. Очень удобно при выводе на экран табличек.
Ответ отправил: sir henry (статус: Академик) Россия, Красноярск ---- Ответ отправлен: 11.12.2006, 06:37