Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Неформальное изложение алгоритма
Алгоритм создания многочлена · Вводим слепень, которая будет у создаваемого многочлена; · Вводим свободный элемент многочлена; · При помощи цикла вводим коэффициенты при х в данном многочлене.
void mnogochlen::sozdanie() { int i;
cout<<"Введите степень многочлена "<<endl; cin>>stepen;
cout<<"Введите свободный элемент"<<endl; cin>>koof[0];
for(i=1;i<=stepen;i++)
{ cout<<"Введите x в степени "<<i<<" "; cin>>koof[i];
} } Алгоритм вывода многочлена · Выводим на экран “ y =”; · Выводим на экран элемент многочлена с наибольшей степенью; · Выводим поочередно все элементы многочлена, начиная с большей степени до единицы включительно; · Если коэффициент при x равен нулю не выводим этот элемент; · Выводим свободный элемент.
void mnogochlen::vivod() {int j,i;
cout<<"y="; if(stepen==0){cout<<koof[0];} else{ if(koof[stepen]>0) { cout<<koof[stepen]<<"x^"<<stepen; }
else { if(koof[stepen]<0) {cout<<koof[stepen]<<"x^"<<stepen;} else{cout<<"";} }
j=stepen-1;
for(i=j;i>=1;i--)
{ if(koof[i]>0) { cout<<"+"<<koof[i]<<"x^"<<i;}
else { if(koof[i]<0) {cout<<koof[i]<<"x^"<<i;}
else{cout<<"";}} } if(koof[0]>0) { cout<<"+"<<koof[0]<<endl;}
else { if(koof[0]<0) {cout<<koof[i]<<endl;}
else{cout<<endl;} } } } Алгоритм сложения двух многочленов · Определяем больший из введенных многочленов них по степени; · Обнуляем в меньшем многочлене коэффициенты при x; · В новом массиве, который предназначен для сохранения результата, коэффициенты делаем равными нулю; · При помощи цикла складываем коэффициенты, при одинаковых степенях x; · Присваиваем полученному многочлену степень, большего из вычитаемых; · Возвращаем полученный многочлен.
Алгоритм вычитания двух многочленов · Определяем больший из введенных многочленов них по степени; · Обнуляем в меньшем многочлене коэффициенты при x; · В новом массиве, который предназначен для сохранения результата, коэффициенты делаем равными нулю; · При помощи цикла вычитаем коэффициенты, при одинаковых степенях x; · Присваиваем полученному многочлену степень, большего из вычитаемых; · Возвращаем полученный многочлен.
Алгоритм умножения двух многочленов · Присваиваем многочлену, предназначенному для сохранения результата степень равную сумме степеней умножаемых многочленов; · В новом массиве, который предназначен для сохранения результата, коэффициенты делаем равными нулю; · В двойном цикле поочередно умножаем все коэффициенты по правилам приведенным выше; · Приводим подобные; · Возвращаем полученный результат.
mnogochlen mnogochlen:: operator *(mnogochlen m)
{mnogochlen d; int i,j,k; k=stepen+m.stepen;
for (i=0;i<=k;i++) { d.koof[i]=0; }
for (i=0;i<=stepen;i++) { for(j=0;j<=m.stepen;j++) { d.koof[i+j]+=koof[i]*m.koof[j]; } }
d.stepen=m.stepen+stepen; return d; }
Алгоритм проверки на равенство двух многочленов · Сравниваем степени двух многочленов, если они не равны, то, следовательно, не равны и многочлены. Это означает, что дальнейшие действия можно не выполнять. Иначе продолжаем выполнение; · В цикле сравниваем коэффициенты при x; · Если коэффициенты, при каком либо x не совпадают, прерываем сравнение. Многочлены не равны. Иначе продолжаем его выполнение. · Выводим значение булевой переменной, которая и будет указывать: равны ли многочлены или нет.
bool mnogochlen:: operator ==(mnogochlen m) { bool priznak; int i; if(stepen!=m.stepen){priznak=0;} else {for(i=0;i<=stepen;i++) { if(koof[i]!=m.koof[i]) {priznak=0;break;} else {priznak=1;} } } return priznak;
}
|
|||||
Последнее изменение этой страницы: 2020-03-02; просмотров: 116; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.137.187.233 (0.008 с.) |