• Как вывести таблицу умножения в unity?

    @pashara
    Вывод текста можно делать и так:
    text.text = $"{y}\t";

    string multiplyTable = string.Empty;
    for (int i = 1; i <= 10; i++)
    {
        for (int j = 1; j <= 10; j++)
        {
            multiplyTable += $"{i} * {j} = {i * j}\n";
        }
        multiplyTable += "\n";
    }
    text.text = multiplyTable;
    Ответ написан
    Комментировать
  • Не работает скрипт - калькулятор в юнити. Что делать?

    @NoNameDeveloper
    Unity Developer
    А вот и рабочий укороченный код. Конвертировать нужно не компонент InputField, а текст данного компонента.
    Можно использовать также int.Parse(value).

    using System;
    
    using UnityEngine;
    using UnityEngine.UI;
    
    public class SimpleCalculator : MonoBehaviour
    {
        [SerializeField] private InputField _firstInput;
        [SerializeField] private InputField _secondInput;
        [SerializeField] private InputField _signInput;
        [SerializeField] private Text _text;
    
        // Methods
    
        public void Calculator()
        {
            int a = int.Parse(_firstInput.text);
            int b = int.Parse(_secondInput.text);
    
            _text.text = GetResult(a, b).ToString();
        }
    
        private float GetResult(int a, int b)
        {
            switch(_signInput.text)
            {
                case "+": return Add(a, b);
                case "-": return Substract(a, b);
                case "*": return Multiply(a, b);
                case "/": return Divide(a, b);
                default: throw new Exception("Invalid sign");
            }
        }
    
        private float Add(int a, int b) => a + b;
        private float Substract(int a, int b) => a - b;
        private float Multiply(int a, int b) => a * b;
        private float Divide(int a, int b) => a / b;
    }
    Ответ написан
    3 комментария