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

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

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

> деление двух многочленов
Bard
сообщение 6.03.2007 7:52
Сообщение #1


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

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

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


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


--------------------
Чтобы поразить цель важна не точность, а смелость
Шарль Луи Монтескё
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Mind
сообщение 9.03.2007 20:15
Сообщение #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 - 10.03.2007 23:45
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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


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

 



- Текстовая версия 20.07.2025 22:33
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"