![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
freejaile |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 8 Пол: Женский Репутация: ![]() ![]() ![]() |
Заданы 2 уравнения. Требуется найти общую переменную с мини-
мальным номером, и, если она есть, исключить ее из второго уравнения. При этом второе уравнение должно измениться, чтобы система из 2 уравнений осталась эквивалентной заданной. Если при изменении второго уравнения один из его коэффи- циентов оказывается равным 0, то этот элемент надо из списка исключить. Если после таких исключений второе уравнение будет иметь вид 0=a (или 0=0), то об этом должна выдаваться поясня- ющая информация. т.е. нужно примерно это: 1. задать 2 уравнения 2. найти общую переменную с мин.номером 3. удалить из второго уравнения найденную переменную: -умножить коэффициенты 2-го уравнения на к.1-го -наоборот 4. вычесть из первого ур-ия второе 5.сравнитьвторое с нулем помогите плз) Сообщение отредактировано: freejaile - |
мисс_граффити |
![]()
Сообщение
#2
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
Замечательно все разделено по пунктам.
На каком этапе сложности? -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
freejaile |
![]()
Сообщение
#3
|
Группа: Пользователи Сообщений: 8 Пол: Женский Репутация: ![]() ![]() ![]() |
|
Altair |
![]()
Сообщение
#4
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 4 825 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
freejaile, насчет сложности тебе хотели сказать, что за тебя вряд-ли кто то станет делать все.
начни делать сама, и если возникнут трудности, задавай вопросы конкретнее. Пока вопросов у тебя нет. Вот у меня например вопрос такой Цитата найти общую переменную с мин.номером Что значит общую переменную? пример привести можешь? -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
freejaile |
![]()
Сообщение
#5
|
Группа: Пользователи Сообщений: 8 Пол: Женский Репутация: ![]() ![]() ![]() |
В том-то и проблема, что вся задача один большой вопрос(((
|
мисс_граффити |
![]()
Сообщение
#6
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
freejaile, ну почему же сплошной вопрос
![]() давай пробовать по порядку. Цитата 1. задать 2 уравнения надо уметь создавать списки. почитай FAQ, воспользуйся поиском... я бы хранила записи из трех полей: номер переменной, коэффициент и указатель на следующую переменную. То есть уравнение 3x1+4x2=8 представится в виде 1/3/указатель на второй элемент 2/4/nil -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
freejaile |
![]()
Сообщение
#7
|
|||
Группа: Пользователи Сообщений: 8 Пол: Женский Репутация: ![]() ![]() ![]() |
type Sp = ^Spisok;
Spisok = record
ind : word;
k : real;
next : sp;
end;
TList = object
procedure SetSp (RSP : Sp; Ri : word; Rk : real);
{ещё куча всяких ещё ненаписанных методов}
end;
procedure TList.SetSp (RSp : Sp; Ri : word; Rk : real);
begin
RSp^.ind := Ri;
RSp^.k := Rk;
RSp^.next := nil;
end;
или вот есчо вариант: const n=10; (это у нас по условию лабы так..)
...
var i:integer;
...
for i:=1 to n do
begin
writeln('введите', i ,'номер переменной');
readln (ri);
writeln('введите', i ,'коэффициент при переменной');
readln (rk);
RSp^.ind := Ri;
RSp^.k := Rk;
end;
if i=n then rsp^.next:=nil else
begin
new (rsp^.next);
rsp:=rsp^.next;
end;
это примерно так?..
|
|||
мисс_граффити |
![]()
Сообщение
#8
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
Давай разбираться...
1. Хочешь объектно-ориентированное? Тогда делай и поля, а не только методы... Принцип инкапсуляции, все-таки. procedure TList.SetSp (RSp : Sp; Ri : word; Rk : real);
хотя бы для приличия напиши, какой параметр var, а какой - const сложно оценивать правильность процедры. неизвестно, как ты ее вызываешь. я бы делала несколько иначе: передавала указатель на последний элемент и значение для ind и k. Внутри процедуры: 1) Выделяла память под новый элемент списка 2) последний элемент^.next:=новый элемент 3) последний элемент:=новый элемент 4) заполнила поля ind и k переданными значениями, next - nil'ом 2. что-то ты не то делаешь... цикл: for i:=1 to n do
begin
writeln('введите', i ,'номер переменной');
readln (ri);
writeln('введите', i ,'коэффициент при переменной');
readln (rk);
RSp^.ind := Ri;
RSp^.k := Rk;
end;
а это выполняется уже ПОСЛЕ цикла! if i=n then rsp^.next:=nil else
begin
new (rsp^.next);
rsp:=rsp^.next;
end;
теперь - по поводу обеих. ты не хранишь указатель на самый первый элемент. а надо бы... иначе мы все элементы, кроме последнего, потеряем. -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
volvo |
![]()
Сообщение
#9
|
Гость ![]() |
freejaile, можно немного дополнить?
Если хочешь действительно ООП - делай объектами не только сам список, но и его элементы - это значительно облегчит использование списка... И добавит ему гибкости, кстати... |
freejaile |
![]()
Сообщение
#10
|
Группа: Пользователи Сообщений: 8 Пол: Женский Репутация: ![]() ![]() ![]() |
freejaile, можно немного дополнить? Если хочешь действительно ООП - делай объектами не только сам список, но и его элементы - это значительно облегчит использование списка... И добавит ему гибкости, кстати... аха, нам изначально нужно список объектов... мисс_граффити, пасип)) сделала указатель вначало списка... сделаю печать..а дальше не наю как( |
![]() ![]() |
![]() |
Текстовая версия | 22.04.2025 15:39 |