Fryazino.NET Forum || Учеба и Образование || Помогите с задачей
>> Привет, Гость! Войдите! : вход | поиск | правила | банлист
Автор
Помогите с задачей (1) 1 для печати | RSS 2.0
baromir
Участник
Обманешь раз-чёрт с тобой, обманешь второй-закопаю
licq:8071
задача по паскалю, нужно удалить 6-ю запись из заданной цепочки р, причём нужно предусматреть коварные вопросы типа если в цепочки меньше 6ти символов как тогда работает прога, вообщем нужна прога чтобы пользователь ввёл номер нужной записи прога проверила длину цепочки и если длина подходящая то удалила нужную запись

желательно чем быстрее тем лучше, помогите
IP
asd
Участник
aka маленький
в правильно сформулированном вопросе- больше половины ответа (: .
IP
kayort
Участник
Service System & Message Gateway
licq:6268
мда, не тот раздел, чего автор хочет непонятно, может он и сам не знает
IP
space monkey
Участник
To baromir
Писал нечто похожее в институте ,правда на фортране и с матрицами ,цепочка числовая ?
IP
baromir
Участник
Обманешь раз-чёрт с тобой, обманешь второй-закопаю
licq:8071
To asd
там тема с динамической памятью,я ни операторов ни циклов ничего не знаю, обьяснили пару задач и дали на зачёте по этой теме, ребят ну хоть что-нибудь помогите
To kayort
понятнее не могу обьяснить,
цитата:
удалить 6-ю запись из заданной цепочки р

так звучала задача на зачёте, ничего конкретнее написать не могу, раздел тот тк более посещаемый разного рода специалистами
To space monkey
фортран должен со следующего семестра идти, пока паскаль, цепочка чёрт её знает какая, она есть и всё

когда в школе 2 года информатики ушли на изучение ворда и пэинта сложно за 3 месяца освоить массивы,матрицы,множества,записи,матрицы,динамическую память и тп да ещё и матан, помогите хоть чем
IP
iFTP
Участник
licq:1601
To baromir
http://slil.ru/26473043
IP
DarthVader
Участник
!иɔоɔ и инǝvоʞ ɐн
To iFTP
Только garbage collector не хватает
Его съедят на на объявлении класса.

To baromir
Тут простейший динамический массив из записей, накатал бы, но паскалевский синтаксис вспоминать не охота, уж больно там режущая глаз работа с указателями. На C, C#, Python могу, сам перевести сможешь ?
Сообщение изменено DarthVader от 2008-12-23 16:51:13
IP
baromir
Участник
Обманешь раз-чёрт с тобой, обманешь второй-закопаю
licq:8071
To DarthVader
к сожалению нет
IP
kayort
Участник
Service System & Message Gateway
licq:6268
To baromir
цепочка это что, массив, или строка?
если массив, то какой тип, если строка, то чем разделены записи
и что значит предусмотреть коварные вопросы?
от паскаля или от кого?
или имеется ввиду проверка корректности данных?
вводные данные вводятся с клавиатуры, лежат в файле, или просто считать что они уже есть?
у тебя получается сделай то не знаю что
Сообщение изменено kayort от 2008-12-24 11:12:40
IP
V0va
Участник
licq:6219
Может цепочка - это список?
IP
kayort
Участник
Service System & Message Gateway
licq:6268
To V0va
список это совсем изврат
IP
baromir
Участник
Обманешь раз-чёрт с тобой, обманешь второй-закопаю
licq:8071
To kayort
цитата:
удалить 6-ю запись из заданной цепочки р

вот формулировка задачи, вот и сделай то не знаю что
сказали что через указатели надо её решать
типа q.^next (не что эта хня значит но надо такие вот хрени использовать)
IP
baromir
Участник
Обманешь раз-чёрт с тобой, обманешь второй-закопаю
licq:8071
type pbox=^box;
box=record; next:pbox; end;
function dlina(var p:pbox):integer;
var q:pbox; c:integer;
begin
c:=0;
q:=p;
while not (q=nil) do begin
c:=c+1; q:=q.^next; end;
dlina:=c; end;
var k,l,i:integer; p,q:pbox;
begin
readln(k);
l:=dlina(p);
if l>=k then begin
q:=p; i:=0;
while i<>k-1 do begin
i:=i+1;
q:=q^.next;
end;
q:=q^.next.^next;
dispose(q.^next);
q.^next:=p else q:=p;
p:=p.^next;
dispose(q);
end;
end;
end.

вот задача по той теме которая мне нужна, но она удалять любой элемент(к) цепочки р, там есть ошибка хз какая, вот такая мне нужна прога
IP
V0va
Участник
licq:6219
Списком значит надо...
Зачем ты эту функцию рекурсивно вызываешь? Сделал бы две: dlina и delete, например Одна вызывала бы другую.
IP
baromir
Участник
Обманешь раз-чёрт с тобой, обманешь второй-закопаю
licq:8071
To V0va
задачу не я писал, мне написали сказали что то наподобии, мне её довести до ума надо
IP
kayort
Участник
Service System & Message Gateway
licq:6268
извращенцы те, кто придумал рекурсию, намного сложнее для понимания, чем циклы, но вторым можно обойтись всегда, ну оптимизация конечно да)
IP
k1rR
Участник
HATE THIS REAL
licq:2153
рекурсия
оч. удобная штука
меньше возьни
чем с теми же циклами...
IP
kayort
Участник
Service System & Message Gateway
licq:6268
To k1rR
не сказал бы, тут кто как привык, вещи взаимозаменяемы
IP
DarthVader
Участник
!иɔоɔ и инǝvоʞ ɐн
To kayort
В чем проблема реализовать циклы при помощи рекурсии ? Или ты пишешь на нерасширяемом говне ?
Рекурсия фундаментальна, циклы - вторичный элемент императивных языков.
IP
hyper
Участник
невозможное возможно
licq:4421
To DarthVader
а мне не хочешь накатать на С ?)
IP
baromir
Участник
Обманешь раз-чёрт с тобой, обманешь второй-закопаю
licq:8071
спам здесь хорошо идёт, но может всё таки кто-нибудь покажет себя на деле и напишет одну долбанную функцию
вот пример, эта хрень распечатывает любой элемент к цепочки
q:=p;
i:=1;
while (q<>nil) and (i<k) do
begin
i:=i+1;
q:=q^.next;
end;
if q<>nil then writeln(q^.inf) else writeln(‘нет записи’);

может её кто-нибудь переделать чтобы она удаляла а не печатала?и может кто-нибудь обьяснит где тут машина зачитывает номер элемента вводимое пользователем?
IP
Страницы(1): 1

Хотите создавать темы и отправлять сообщения? Выполните Вход или Зарегистрируйтесь!




Напишите нам

µƒorum © fryazino.net