|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
14.05.2012, 08:49 | #1 |
Регистрация: 18.03.2012
Сообщений: 4
|
Сложение химических элементов
Как сложить два или более химических элемента таким образом. чтобы и справа и слева химического уравнения было равенство коэффициентов. Например, 2H2+ O2=2H2O(т.е и справа и слева по 4 водорода и по 2 воды). Приведите пример кода.
|
14.05.2012, 09:00 | #2 |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Тут как мне кажется нужно парсить
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика |
14.05.2012, 10:09 | #3 |
Форумчанин
Регистрация: 05.09.2011
Сообщений: 869
|
Тут не просто в парсинге проблема. Надо еще различать коэффициенты и индексы, а также знать валентность (и не только). Короче, задача неслабая такая.
Предпочитаю на "ты".
|
14.05.2012, 14:10 | #4 |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
После буквы всегда следует индекс. Правила просты. Валентность можно просто помнить. Но фактически конечно же да единого уравнятеля не выйдет .
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика |
14.05.2012, 17:04 | #5 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
как человек решает такую задачу.
составляем систему уравнений (Н) x *2 + y*0 =z*2 (O) x *0 + y*2 =z*1 три неизвестных (число веществ в реакции) и два (число элементов) уравнения решаем ее в ЦЕЛЫХ (и даже больше натуральных) числах. Для человека здесь раздолье в методах. Компьютер он тупее (но зато быстрее в тупых операциях) поэтому используем "тупой" перебор. например так составляем такую вот матрицу Код:
2 0 -2 | 0 0 2 -1 | 0 матрица это будет такой вот массив m: array of array of integer; //[0..2, 1..3] of integer; // для проверки используем такую функцию Код:
Код:
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 14.05.2012 в 17:06. |
14.05.2012, 18:55 | #6 |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
А почему у Вас всего три неизвестных?
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика |
14.05.2012, 19:09 | #7 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Находим то в данном случае 3 коєффициента. Вот и 3 неизвестных. Связать их в систему можем только двумя линейными уравнениями. И для поиска коэффициентов валентность не при делах. Она зашита в формулы веществ и в расчете коэффициентов не нужна
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 14.05.2012 в 19:16. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Delphi для химических нужд | RTO | Общие вопросы Delphi | 0 | 24.06.2011 21:17 |
Отладка программы на MASM. Сложение элементов массива. | Ibanez Wizard | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 2 | 22.02.2011 22:06 |
В массиве из п элементов много совпадающих элементов. Найти количество различных элементов | Strax | Фриланс | 11 | 12.06.2010 20:13 |
Найти максимальный из положительных элементов матрицы и сумму отрицательных элементов. | bessonov12 | Microsoft Office Excel | 7 | 04.05.2009 05:44 |
В одномерном массиве, состоящем из n вещественных элементов, вычислить сумму элементов массива | HazelHen | Общие вопросы C/C++ | 2 | 29.03.2009 15:16 |