Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.11.2011, 11:50   #1
kotkota
 
Регистрация: 24.11.2009
Сообщений: 9
По умолчанию проверка многочлена

есть многочлен в математической форме, тоесть некоторые знаки могут отсутствовать
как проверять такой многочлен на правильность?
опишите в двух словах алгоритм?
kotkota вне форума Ответить с цитированием
Старый 09.11.2011, 12:04   #2
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Цитата:
есть многочлен в математической форме, тоесть некоторые знаки могут отсутствовать
Непонятно. Единственное, что находится по словам "математическая форма" - однородный полином. Что значит "некоторые знаки могут отсутствовать"? Что считается "правильным"? Как записываются степени?

В общем, не приведёте примеры входных-выходных данных?
Abstraction вне форума Ответить с цитированием
Старый 09.11.2011, 12:17   #3
kotkota
 
Регистрация: 24.11.2009
Сообщений: 9
По умолчанию

ну тоесть запись
(2x-3y)(6y+7) правильна, хотя тут и опущены знаки умножения
(2*x-3*y)*(6*y+7) и эта запись правильна так же
степень записывается как x^2 или x^(x+3y)
kotkota вне форума Ответить с цитированием
Старый 09.11.2011, 12:24   #4
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Цитата:
x^(x+3y)
Это не многочлен.
Цитата:
(2x-3y)(6y+7)
Это не форма.

Что нужно? Проверять баланс скобок, отсутствие двух знаков подряд и то, что в качестве степеней числа?
Abstraction вне форума Ответить с цитированием
Старый 09.11.2011, 12:29   #5
kotkota
 
Регистрация: 24.11.2009
Сообщений: 9
По умолчанию

копипаст задания:
Вход: 2 многочлена от нескольких переменных, заданных в математической
форме (т.е. знаки некоторых операций могут отсутствовать).
Выход: Указание ошибки в записи, если таковая присутствовала, иначе
сообщение о совпадении или несовпадении введенных многочленов.

Цитата:
Сообщение от Abstraction Посмотреть сообщение
Проверять баланс скобок, отсутствие двух знаков подряд и то, что в качестве степеней числа?
в многочлене ошибкой тоесть могут быть только два знака подряд и степень?
только я не могу представить какая степень может быть неверной?
kotkota вне форума Ответить с цитированием
Старый 09.11.2011, 13:08   #6
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Цитата:
только я не могу представить какая степень может быть неверной?
x^(x+3y)
Цитата:
в многочлене ошибкой тоесть могут быть только два знака подряд и степень?
Дисбаланс скобок ещё. Непонятно, является ли корректной записью x3xyxzx. Непонятно, является ли корректной записью x^(6-2^2). Непонятно, является ли корректной записью a*(-b). Непонятно, является ли корректной записью a+b+a.
Цитата:
сообщение о совпадении или несовпадении введенных многочленов
Что понимается под совпадением/несовпадением? x+y совпадает с y+x? 2x+y с x+x+y? (x+y)(x-y) с x^2+(y-1)^2+y+(y-1)?
Abstraction вне форума Ответить с цитированием
Старый 09.11.2011, 13:30   #7
kotkota
 
Регистрация: 24.11.2009
Сообщений: 9
По умолчанию

Цитата:
Сообщение от Abstraction Посмотреть сообщение
x^(x+3y)
Дисбаланс скобок ещё. Непонятно, является ли корректной записью x3xyxzx. Непонятно, является ли корректной записью x^(6-2^2). Непонятно, является ли корректной записью a*(-b). Непонятно, является ли корректной записью a+b+a.
Что понимается под совпадением/несовпадением? x+y совпадает с y+x? 2x+y с x+x+y? (x+y)(x-y) с x^2+(y-1)^2+y+(y-1)?
это всё что дано было, википедия говорит что многочлен от двух переменных это сумма сx^n*y^n а значит баланс скобок тут не нужен
а во всём остальном записи корректны

под совпадением/несовпадением подразумевается не буквальное совпадение когда два многочлена записаны одинакого
соответственно x+y соответствует y+x как и всё остальное
хотя согласен, что описание задания некорректное
но чтобы иметь возможность пообщаться на эту тему с преподавателем, надо принести что то готовое
из того что сделано, это баланс скобок, ибо пригодится при умножении на отрицательное число и проверка на два знака подряд
но вот дальше я застопорился
kotkota вне форума Ответить с цитированием
Старый 09.11.2011, 14:16   #8
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Цитата:
многочлен от двух переменных это сумма сx^n*y^n а значит баланс скобок тут не нужен
Долго думал. (x+y)*(x+(3-y)
Abstraction вне форума Ответить с цитированием
Старый 09.11.2011, 14:17   #9
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

А так, я бы для начала просто запретил после знака степени и до ближайшего знака или открывающей скобки всё кроме цифр. Вместе с
Цитата:
что сделано, это баланс скобок, ибо пригодится при умножении на отрицательное число и проверка на два знака подряд
должно более-менее проверять на корректность. Но вот проверка на совпадение - это кошмар.
Abstraction вне форума Ответить с цитированием
Старый 09.11.2011, 14:25   #10
kotkota
 
Регистрация: 24.11.2009
Сообщений: 9
По умолчанию

Цитата:
Сообщение от Abstraction Посмотреть сообщение
А так, я бы для начала просто запретил после знака степени и до ближайшего знака или открывающей скобки всё кроме цифр
спасибо! вот до этого я не догадался
а так еще приделать надо проверку чтоб было именно две переменные

ну а как начать работу над проверкой на корректность?
kotkota вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
умножение многочлена Neitrosha Помощь студентам 2 28.02.2011 17:27
Вычисление многочлена записаного в файле Senator16 Общие вопросы C/C++ 4 16.01.2011 20:54
синтаксический анализ многочлена Sparky Помощь студентам 1 20.10.2010 21:40
вычислить значение многочлена. С++ varlonec Помощь студентам 0 26.01.2010 17:55
[Паскаль] Коэффициенты многочлена Victorina Помощь студентам 2 04.11.2009 07:42