Я пытаюсь сделать калькулятор молекулярной массы в составе приложения для химии. Я хочу сделать так, чтобы пользователь вводил текст в текстовое поле, нажимает кнопку, а затем на отдельной метке появляется результат. Поскольку молекулярные формулы являются смесями как чисел, так и букв, меня смешивает то, как я могу это сделать.перечисления в калькуляторе молекулярной массы
организовать элементы, я рассмотрел поместив их в перечисление:
enum elements: Double {
case Na = 22.99
case O = 16.01
case H = 1.00
}
var array: [(Int, String)] = [(number, element)]()
, где «номер», однако многие из этого элемента в соединении. например, H2O будет var array = [(2, H), (1, O)]
тогда я думал, что буду добавлять к массиву любые элементы в текстовом поле. например, если бы это был гидроксид натрия, NaOH, массив читал бы: var array = [(1, Na), (1, 0), (1, H)]
тогда я бы сделал цикл for, чтобы подсчитать общее значение и добавить его вместе, и напечатать это значение в метке.
У меня возникли проблемы с добавлением элементов в массив на основе того, что находится в текстовом поле. есть идеи? Благодарю.
Здесь есть интересная проблема синтаксического анализа текста, но недостаточно информации для ее работы. Здесь у вас есть представление о том, как вы можете структурировать свои данные, это здорово, теперь покажите нам, какой ввод вы хотите поддерживать в текстовом поле и какую структуру данных вы хотите сгенерировать. В некоторых примерах использования перед нами мы все можем начать понимать, как вы можете преобразовать текст в структурированные данные. – Jonah