简体   繁体   中英

Why my C# Code isn't Printing the Required Output

I attempting to create a program that uses multiple methods that would print out base numbers, exponents, and their resulting solutions. I am trying to get it to run and it's nearly completed, but I am encountering a couple issues. The code itself seems to run, but doesn't appear to print out on Visual Studio. I did run it on an online compiler and got this as an output:

在此处输入图片说明

It seems I am missing something in my code, but I am unclear as to what I may be missing. This is the code I have created for the project:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Project
{
    class Program
    {
        static void Main(string[] args)
        {
            //Our initialized variables.
            int intMinBase = 1;
            int intMaxBase = 100;

            int intMinExpo = 1;
            int intMaxExpo = 10;

            //Our arrays for the project, all at a length of 5.
            long[] baseNumbers = new long[5];
            long[] exponents = new long[5];
            long[] results = new long[5];

            //Randomize the baseNumbers and exponents!
            Random randInt = new Random();
            for (long i = 0; i < 5; i++)
            {
                baseNumbers[i] = randInt.Next(intMinBase, intMaxBase);
                exponents[i] = randInt.Next(intMinExpo, intMaxExpo);
            }

            PrintArrays(baseNumbers, exponents, results);
        }

        //This is potentially experimental code for the Power Method.
        public static int Power(int baseNum, int exponent)
        {
            int answer;

            if (exponent == 1)
            {
                answer = 1;
            }
            else
            {
                answer = baseNum * Power(baseNum, exponent - 1);
            }

            return answer;
        }


        //The new method to be printed. Is this the correct manner to display this?
        public static void PrintArrays(long[] baseNum, long[] exponent, long[] result)
        {

            Console.WriteLine($"Base\tExponent\tResult");

            for (int print = 0; print < result.GetUpperBound(0); print++)
            {

                Console.WriteLine(baseNum[print]+"\t"+exponent[print]+"\t"+result[print]);

            }

        }
    }
}

My question is mainly am I missing something and why isn't it appearing to print in Visual Studio yet it's appearing on an online compiler? I suspect the answer to the first part of the question has to do with the methods I used, but I am unsure.

First error: Nowhere is the method Power called and nowhere is the array results filled.

Solution example:

for (long i = 0; i < 5; i++)
{
    baseNumbers[i] = randInt.Next(intMinBase, intMaxBase);
    exponents[i] = randInt.Next(intMinExpo, intMaxExpo);
    results[i] = Power(baseNumbers[i], exponents[i]);
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM