Не могу понять что не так в коде выдает ошибку NullReferenceException: Object reference not set to an instance of an object main.Update () (at Assets/Skripts/main.cs:34) вот сам код using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using System; public class main : MonoBehaviour { public double money = 0.000f; public float moneyperclick = 0.001f; public float moneypersecond = 0.000f; public float timer = 1.0f; private float lasttimer; //BOOSTERS public Button fstBoostButton; public Text fstboostertext; public float fstboosterprice = 0.001f; public Text textmoney; // Start is called before the first frame update void Start() { lasttimer = timer; } // Update is called once per frame void Update() { if (money = fstboosterprice) { money -= fstboosterprice; fstboosterprice *= 2; moneypersecond += 0.002f; } } }
в простейшем случае, трассировка - вывод значений переменных на экран (например, в окно консоли) , либо расчёт их на бумажке для каждого шага.
в более продвинутом варианте используются точки останова, окно наблюдения, выполнение по шагам и, если есть, контекстный интерпретатор выражений.
есть также специальная "трассирующая консоль" - интерфейс вывода информации из программы в отладчик, если таковой присутствует.
почти любой современный отладчик показывает состояние програмm при её останове, что делает трассировку процессом легко доступным
1) a x a = a² ⇒ b; b x a = a³ ⇒ результат
2) a x a = a² ⇒ b; b x b = a⁴ ⇒ c; c x c = a⁸ ⇒ c; c x b = a¹⁰ ⇒ результат
Программа на языке PascalABC.Net
var
a,b,c,y:real;
begin
Write('Введите число: '); Read(a);
b:=a*a; y:=b*a; Writeln('Третья степень числа равна ',y);
c:=b*b; c:=c*c; y:=b*c;
Writeln('Десятая степень числа равна ',y)
end.
Тестовые решения:
Введите число: 2
Третья степень числа равна 8
Десятая степень числа равна 1024
Введите число: -13.594
Третья степень числа равна -2512.128188584
Десятая степень числа равна 215512594781.574