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

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


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

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

Выпуск № 377
от 22.05.2007, 20:05

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


Вопрос № 87380: Доброго времени суток господа! Не могли бы помочь мне с курсовой по Паскалю. Курсовая работа. Задание 10. Из множества прямых М, заданных коэффициентами уравнения Ах+Ву+С=0, сформировать множество прямых Р<=М, расстояние от которы...
Вопрос № 87391: Нужна помощь плиз. Лаба: нужно организовать список. затем ввести искомое имя и изменить данные. но у меня после ввода имени почему-то прога вылетает....

Вопрос № 87.380
Доброго времени суток господа! Не могли бы помочь мне с курсовой по Паскалю.

Курсовая работа.
Задание 10.
Из множества прямых М, заданных коэффициентами уравнения Ах+Ву+С=0, сформировать множество прямых Р<=М, расстояние от которых до точки А(Ха, Уа) удовлетворяет определённому условию, и преобразовать множество Р в соответствии с заданным требованием.
1. Упорядочить прямые в порядке возрастания расстояний.
2. Свойства расстояний:
- принадлежит заданному интервалу
- больше заданной величины

Заранее спасибо!
Отправлен: 17.05.2007, 18:33
Вопрос задал: Костенко Дмитрий Александрович (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Сухомлин Кирилл Владимирович
Здравствуйте, Костенко Дмитрий Александрович!
И с чем именно вам надо помочь? Наверное, с формулой.
Вот расстояние до точки:
|A∙Xa+B∙Ya+C| / √[A²+B²]
Сортировка — примтивнейшее из заданий по информатике. Я думаю, с ней вы и сами справитесь.
---------
Не узнаешь - не попробуешь.
Ответ отправил: Сухомлин Кирилл Владимирович (статус: Специалист)
Ответ отправлен: 17.05.2007, 20:36
Оценка за ответ: 5


Вопрос № 87.391
Нужна помощь плиз. Лаба: нужно организовать список. затем ввести искомое имя и изменить данные. но у меня после ввода имени почему-то прога вылетает.

Приложение:

Отправлен: 17.05.2007, 19:29
Вопрос задал: Beerb0x (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Tribak
Здравствуйте, Beerb0x!
У вас в момент сравнения находиться лишь последнее значение введенных данных, в p^.nazv содержиться последнее внесенное значение, для того чтобы все работало, надо описать цикл по сравнению всего динамического списка с введенным названием
Ответ отправил: Tribak (статус: 1-ый класс)
Ответ отправлен: 17.05.2007, 19:53

Отвечает: Verena
Здравствуйте, Beerb0x!
Немного не поняла Вашу реализацию ввода списка, где хранится ссылка на первый элемент? Или иначе как происодит доступ к элементам после ввода?
В общем, я Вам код немного изменила, добавила цикл поиска и ссылку на первый элемент first, а также корректное удаление.

program x;
type
el = ^tovar;
tovar = record
nazv : string;
cena, cena2 : real;
god, god2 : integer;
kol, kol2 : integer;
next : el;
end;

var
i, n : integer;
p, first : el;
f: file;
str: string;
flag: boolean;
begin
first:=nil; {первый элемент}
flag:= false;
repeat
new (p);
writeln ('vvedite Naimenovanie tovara');
readln (p^.nazv);
if length (p^.nazv)<>0 then
begin
writeln ('God vypuska - '); readln (p^.god);
writeln ('Cena - '); readln (p^.cena);
writeln ('Kolichestvo - '); readln (p^.kol);

p^.next:=nil;
if flag then begin first^.next:= p; flag:= false; end; {если текущий - второй, устанавливаем ссылку first^.next на него}
if first=nil then begin first:= p; flag:=true; end; {если текущий - первый, то сохраняем ссылку на него, делаем пометку, что следующий - второй}
p:= p^.next;
end;
until length (p^.nazv)=0;
write('vvedite Naimenovanie tovara: '); readln(str);
p:= first; {начинаем поиск от первого}
while (p<>nil) and (not flag) do {пока не конец списка и не найден элемент}
if p^.nazv=str then
begin
writeln;
writeln('Vvedite novye dannye: ');
write('God vypuska: '); readln(p^.god2);
write('Cena: '); readln(p^.cena2);
write('Kolichestvo: '); readln(p^.kol2);
p^.god:=p^.god2; p^.cena:=p^.cena2; p^.kol:= p^.kol2;
Writeln ('Dannye izmeneny');
writeln(p^.nazv, p^.god, p^.cena, p^.kol);
flag:= true;
end else p:=p^.next;
if not flag then writeln ('Такого элемента нет!');
while first<>nil do {удаление ВСЕГО списка}
begin
p:= first;
first:= first^.next;
dispose (p);
end;
end.
---------
Эта история - не для истории, понимаешь?
Ответ отправила: Verena (статус: Студент)
Ответ отправлен: 17.05.2007, 20:47


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

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

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

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

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


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


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Email: support@rusfaq.ru, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.52 от 02.05.2007
Яндекс Rambler's Top100

В избранное