Scared911
11.12.2022 03:28

Не могу понять что не так в коде выдает ошибку 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; } } }

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
РЧВ21
18.06.2021 17:55

1)

var

  str : string;

begin

  readln (str);

  writeln (length (str) - pos (':', str));

end.

 

2)

var

  str, s : string;

  count, i : integer;

begin

  readln (str);

  s := copy (s, pos ('(', str) + 1, pos (')', str) - pos ('(', str) - 1);

  count := 0;

  for i := 1 to length (s) do

    if s[i] = ' ' then inc (count);

  writeln (count + 1);

end.

 

3)

var

  str : string;

  count : integer;

begin

  readln (str);

  count := 0;

  while pos (',', str) > 0 do

  begin

    inc (count);

    delete (str, pos (',', str), 1);

  end;

  writeln (str);

  writeln (count);

end.

 

Сделано без проверки на соответствие условию.

0,0(0 оценок)
Ответ:
апк8
11.12.2021 19:51

var

k : byte;
arr : array of int64;
function Fn (c : byte) : int64;
begin
if arr[c - 1] <> 0 then
begin
Fn := arr[c - 1];
exit;
end;
if c < 3 then Fn := 1
else Fn := Fn (c - 1) + Fn (c - 2);
arr[c - 1] := Result;
end;

begin
read (k);
setlength (arr, k);
writeln (Fn (k));
end.

var
n : byte;
arr : array of int64;

tmp : int64;
function Fn (c : byte) : int64;
begin
if arr[c - 1] <> 0 then
begin
Fn := arr[c - 1];
exit;
end;
if c < 3 then Fn := 1
else Fn := Fn (c - 1) + Fn (c - 2);
arr[c - 1] := Result;
end;

begin
read (n);
setlength (arr, n);
tmp :=  (Fn (n));

tmp := 0;

for i := 1 to n do

  tmp := (tmp + arr[i]) mod 2;

if tmp = 1 then writeln ('No') else writeln ('Yes');

end.

 

Это нисходящее динамическое программирование. В массиве Arr храняится сами числа. Рекурсивная функция Fn (n) возвращает N-ое число. В б) мы сначала просчитываем n чисел (то есть считаем число n, так как для него нужны все предыдущие), а потом ищем их сумму. Так как числа могут быть большими, то мы берем сразу их остаток от деления 2 во избежание преполнения.

 

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота