IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> деление двух многочленов
сообщение
Сообщение #1


Учиться, учиться еще раз учиться
***

Группа: Пользователи
Сообщений: 158
Пол: Мужской
Реальное имя: Яшар

Репутация: -  3  +


Нам наш учитель вчера задал такую задачу... unsure.gif
Вводяться коэффиценты 2 многочленов и требуеться разделить их друг на друга
и вывести коэффиценты получившегося многочлена...
помогите составить кратчайший алгоритм... mega_chok.gif


--------------------
Чтобы поразить цель важна не точность, а смелость
Шарль Луи Монтескё
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской
Реальное имя: Mind

Репутация: -  0  +


Вот мой вариант деления многочленов столбиком.
program Vremya_09_03_07;
uses crt;
var k1,k2,k3:array[1..100] of real;
i,kol1,kol2,j,s1,s2:integer;
begin
clrscr;
repeat
write('Vvedite naivysshuu stepen` delimogo: ');
readln(kol1);
until (kol1 > 0) and (kol1 <= 100);
kol1 := kol1 + 1;
repeat
write('Vvedite naivysshuu stepen` delitelya: ');
readln(kol2);
until (kol2 >= 0) and (kol2 <= kol1);
kol2 := kol2 + 1;
writeln('Vvedite koeffichienty delimogo: ');
for i := 1 to kol1 do
read(k1[i]);
writeln('Vvedite koeffichienty delitelya: ');
for i := 1 to kol1 do
if i <= kol1-kol2 then k2[i] := 0 else read(k2[i]);

j := 0;
s1 := 0;
repeat
s2 := 1;
for i := 1 to kol1 do
if k2[i] <> 0 then break else s2 := s2 + 1;
s1 := s1 + 1;
if s2 >= s1 then
begin
j := j + 1;
k3[j] := k1[s1]/k2[s2];
for i := s1 to kol1 do
k1[i] := k1[i] - k2[s2+i-s1]*k3[j];
end;
until s2 < s1;

writeln('Koeffichienty poluchenogo mnogochlena: ');
for i := 1 to s1-1 do
write(k3[i]:4 :2,' ');
writeln;
writeln('Ostatok: ');
for i := s1 to kol1 do
write(k1[i]:4 :2,' ');
readkey;
end.

Протестировал. Вроде работает. Там только небольшой глюк в выводе остатка...
Ну типо несколько нулей написать лишних может... А так нормально.
Главное ответ верный выдаёт. Если найдёшь ошибки сообщи. wink.gif

Сообщение отредактировано: volvo -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 18.04.2024 20:02
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name