Example #1
0
        static void Main(string[] args)
        {
            int a = 5;
            int b = 3;

            var results = new Results();
            var binaryA = new QArray <long>(a.ToBase2(NumberOfBits));
            var binaryB = new QArray <long>(b.ToBase2(NumberOfBits));


            Console.Write($"a={a} b={b} ");
            Console.WriteLine($"binaryA={binaryA} binaryB={binaryB}");

            for (int i = 0; i < TestCount; i++)
            {
                using (var qsim = new QuantumSimulator())
                {
                    var result = PerformAdd.Run(qsim, binaryA, binaryB).Result.Cast <int>().ToArray();

                    //results.Add(string.Join("",result));
                    results.Add(result.ToBase10().ToString());
                }
            }

            Console.Write(results);
            Console.WriteLine("Finished.");
            Console.ReadLine();
        }
Example #2
0
    void Start()
    {
        ManipulateNumber manipulateNumber = new ManipulateNumber();
        PerformAdd       addition         = new PerformAdd();
        PerformMul       multiply         = new PerformMul();
        PerformSub       sub = new PerformSub();

        manipulateNumber.PerformManipulation += addition.OnPerformManipulation; //non sto chaimando il metodo, nessuna parentesi. รจ solo un puntatore della funzione.
        manipulateNumber.PerformManipulation += multiply.OnPerformManipulation; //come sopra
        manipulateNumber.PerformManipulation += sub.OnPerformManipulation;
        manipulateNumber.Manipulate(3, 5);
    }