Member 13480832 Ответов: 1

Как я могу сделать это только с основами


Правильная форма уравнения : любая операция должна сначала преобразовать каждое уравнение в
правильная форма. Само уравнение должно обладать следующими свойствами
1. переменные упорядочены в алфавитном порядке слева направо
3x2+2x1+4x3=16
Должно быть
2x1+3x2+4x3=16
2. любая переменная должна появляться только один раз
4x1+3x2-2x1+4x3=16
Должно быть
2x1+3x2+4x3=16
3. Должен появиться в уравнении только одна константа, и оно должно быть
с правой стороны
2x1+3x2+5+4x3-11=10
Должно быть
2x1+3x2+4x3=16
Страница 2 из 10
4. коэффициент при равенстве единице или -1 цифра 1 необязательна
1x1+3x2-1x3=10
Может быть введен как быть
x1+3x2-x3=10

Что я уже пробовал:

Я начинаю с первой точки, разбиваю уравнение и помещаю его в другой массив, но я застрял и не знаю, что мне делать ... кто-нибудь поможет??
Вот что я попробовал сделать
PS мне не разрешается использовать сложный метод или какие-либо STLs, только массивы, строки, векторы... все основное :/
cin >> s;
	for (int i = 0; i<s.size(); i++)
	{
		if (s[i] == '+')
		{
			copyy[a] += s[i];
			a++;
		}
		else
		{
			copyy[a] += s[i];
		}

	}

Patrice T

Что такое "3х2" ?
x2-это имя переменной ?
или Х2 означает Х2 ?

Member 13480832

да, iit-это имя переменной

Mohibur Rashid

Скажем, x означает умножение
3x2+2x1+4x3=16 <-- неверно, правильно-20
если x2 и x1 переменные то мы не знаем о чем вы говорите
если x2 означает x*x(именно так мы пишем умножение в большинстве языков программирования) , то 3x2+2x1+4x3=16 генерирует мнимое число. Может быть, вы четко опишете свою проблему.

Member 13480832

сделано

OriginalGriff

Не "ударяйте" свой вопрос: это грубо, высокомерно, ненужно и не поможет вам получить более быстрый ответ. Конечно, добавьте информацию, но просто отредактируйте ее, чтобы вернуть в начало списка "без ответа", просто сказав: "Я важнее, чем кто-либо другой, поэтому разберитесь с *моим* вопросом и игнорируйте остальное".
Как и все остальные, и все остальные вопросы. Если бы все были такими бездумными и грубыми, вы никогда не получили бы ответа ни на что, потому что все, что мы могли бы увидеть, было бы 100 страниц идиотов, сталкивающихся со всеми реальными вопросами на странице 100+
Все, что вы делаете, это раздражаете людей и заставляете их намеренно даже не смотреть на ваш вопрос, не говоря уже о том, чтобы ответить на него.

1 Ответов

Рейтинг:
1

KarstenK

Ваша задача-отсортировать уравнение, поэтому вы должны найти все экземпляры x и предварительно упорядочить их в подмассив одного вида. Этот подвыбор вы должны оценить и затем заново построить решение в конце.

Это некоторые строковые операции для токенов "x1", "x2" и так далее...

Я думаю, некоторые люди не понимают, что вы имеете в виду "x*x" с "x2" ;-)