Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на языке Pascal


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Pascal

Выпуск № 264
от 02.12.2006, 12:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 222, Экспертов: 50
В номере:Вопросов: 2, Ответов: 3


Вопрос № 64278: Здравствуйте уважаемые знатоки, помогите написать программку на Паскале. Её надо написать через IF, помогите пожалуйста. Задача. Функция задана графически, определить аналитически и вычислить в заданной точке х. Такая кривая. т...
Вопрос № 64320: Добрый вечер, как привести эту процедуру в рабочий вид? var n,i:integer; a : array [1..10] of integer; Procedure Sort; var max,imax,i,j:integer; begin for i:=n downto 2 do begin max:=a[i]; imax:=1; ...

Вопрос № 64.278
Здравствуйте уважаемые знатоки, помогите написать программку на Паскале. Её надо написать через IF, помогите пожалуйста.

Задача.
Функция задана графически, определить аналитически и вычислить в заданной точке х.

Такая кривая. т.к. тут рисовать нельзя, я задам по точкам. Первая точка (-5;5), вторая точка (0;-4), 3 точка (-2;3), 4 точка (0;3), 5 точка (7;0).

Заранее благодарен.
Отправлен: 26.11.2006, 15:01
Вопрос задал: Arian (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 4)

Отвечает: Устинов Сергей Евгеньевич
Здравствуйте, Arian!

Ну, после рисуночка можно дать ответ. (Буду считать, что после x=7 прямая продолжается. Если нет - подкорректируете решение)
Для начала немного теории (геометрия):
График прямой проходящей через точки A(x1,y1) и B(x2,y2) имеет такой вид:
(x-x1)/(x2-x1)=(y-y1)/(y2-y1).
Отсюда y=(x-x1)*(y2-y1)/(x2-x1)+y1

Теперь зададим функцию аналитически.
1. Для всех Х меньше -4 графиком функции будет прямая, проходящая через точки (-5;5) и (-4;0). (пользуемся формулой выше)
y=(x+5)(-5)/1+5=-5x-20
2. На промежутке от -4 до -2 график функции проходит через точки (-4;0) и (-2;3)
y=(x+4)*3/2+0=(3/2)*x+6
3. На промежутке от -2 до 0 функция принимает значение y=3
4. При x>=0 график функции проходит через точки (0;3) и (7;0)
y=(-3/7)x+3

В соответствии с этим и строим программу (в приложении).

Удачи! (а подумать над задачей все-же нужно было!)

Приложение:

---------
Ответы на все вопросы - на сайте www.ya.ru

Ответ отправил: Устинов Сергей Евгеньевич (статус: Практикант)
Ответ отправлен: 28.11.2006, 00:27
Оценка за ответ: 5
Комментарий оценки:
Большое спосибо, вы мне очень помогли.


Вопрос № 64.320
Добрый вечер, как привести эту процедуру в рабочий вид?
var n,i:integer;
a : array [1..10] of integer;

Procedure Sort;
var max,imax,i,j:integer;
begin
for i:=n downto 2 do
begin
max:=a[i];
imax:=1;
for j:=1 to i-1 do
if a[j] > max then
begin
max:=a[j];
imax:=j;
end;
if imax <> i then
begin
a[imax]:=a[i];
a[n]:=max;
end;
end;
end;
Begin
Read(n);
for i:=1 to n do
writeln(Sort(a[i]));

end.
Отправлен: 26.11.2006, 21:42
Вопрос задал: ataman (статус: 2-ой класс)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Олег Владимирович
Здравствуйте, ataman!

Sort - это процедура, а не функция, она не возвращает никакого результата, поэтому нет смысла её использовать в writeln. Sort не имеет параметров, так зачем же ей их пытаться передать(sort(a[i]))?
Программа, насколько я понял, должна сортировать массив a. В приложении работающая версия.
Удачи!

Приложение:

---------
Факультет ПМ-ПУ - лучший в СПбГУ!

Ответ отправил: Олег Владимирович (статус: 7-ой класс)
Ответ отправлен: 26.11.2006, 22:29

Отвечает: Dr1m
Здравствуйте, ataman!
особо не вникал, но должно быть так:

Приложение:

Ответ отправил: Dr1m (статус: 1-ый класс)
Ответ отправлен: 26.11.2006, 22:54


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.37 от 04.10.2006
Яндекс Rambler's Top100

В избранное