Ruthie67 Ответов: 2

Он говорит, что нет ошибок в файле, но он ничего не сделает, кроме как вернет хит, чтобы вернуться


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

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
        }
    }

// average class with automatic properties for the score1, score2 and score3.



public class average
{

    // auto-implemented property Score1 implicitly creates an
    // instance variable for the score1
    public int Score1 { get; set; }

    // auto-implemented property Score2 implicitly creates an
    // instance variable for the score2
    public int Score2 { get; set; }

    // auto-implemented property Score3 implicitly creates an
    // instance variable for the score3
    public int Score3 { get; set; }

    //declare the remainder and avg variables
    int remainder;
    int avg;



    // constructor shell accepting three values,  

    public average(int score1Value, int score2Value, int score3Value)
    {
        Score1 = score1Value;
        Score2 = score2Value;
        Score3 = score3Value;
    }



    // calculate the average of the three scores
    public void computeAverage()
    {
        avg=(Score1 + Score2 + Score3)/3;
        remainder=(Score1 + Score2 + Score3)%3;
    }






    // display the average, 

    public void DisplayAverage()
    {
        Console.WriteLine($"The average of { Score1} , { Score2} , { Score3} is {ave} with a remainder of {remainder}");// output a new line
    }
}
    public class averageTest
    {
        public static void Main(string[] args)
        {

            //instantiate a new average object here, passing the
            //the score1, score2 and score3 values respectively 

            average myaverage = new average(23,30,40);

            //call myaverage.computeAverage
            

            myaverage.computeAverage();

            //call myaverage.DisplayAverage()

            myaverage.DisplayAverage();

            Console.WriteLine(); //output a new line

        } // end Main
    }
    } //end class average


Что я уже пробовал:

Я убедился, что все {} были правильными и избавился от любых ошибок.

2 Ответов

Рейтинг:
2

Patrice T

class Program
{
    // This is what your program is really doing
    static void Main(string[] args)
    {
    // Nothing: because this part is empty
    }
}

Цитата:
Он говорит, что нет ошибок в файле, но он ничего не сделает, кроме как вернет хит, чтобы вернуться

Ваш код ведет себя не так, как вы ожидаете, или вы не понимаете, почему !

Существует почти универсальное решение: запускайте свой код на отладчике шаг за шагом, проверяйте переменные.
Отладчик здесь, чтобы показать вам, что делает ваш код, и ваша задача-сравнить с тем, что он должен делать.
В отладчике нет никакой магии, он не знает, что должен делать ваш код, он не находит ошибок, он просто помогает вам, показывая, что происходит. Когда код не делает того, что ожидается, вы близки к ошибке.
Чтобы увидеть, что делает ваш код: просто установите точку останова и посмотрите, как работает ваш код, отладчик позволит вам выполнять строки 1 на 1 и проверять переменные по мере их выполнения.

Отладчик - Википедия, свободная энциклопедия[^]

Освоение отладки в Visual Studio 2010 - руководство для начинающих[^]
Базовая отладка с помощью Visual Studio 2010 - YouTube[^]

Отладка кода C# в Visual Studio - YouTube[^]

Отладчик здесь только для того, чтобы показать вам, что делает ваш код, и ваша задача-сравнить его с тем, что он должен делать.


Рейтинг:
0

OriginalGriff

Компиляция-это только начало! Когда он компилируется без ошибок, ваше приложение может работать - и теперь пришло время убедиться, что оно делает то, что вы хотите, а не то, что вы ему сказали, - и эти два варианта могут (как в данном случае) быть очень разными.

В этом случае довольно просто понять, почему он ничего не делает - вы ему этого не сказали!
Посмотрите на свой код:

static void Main(string[] args)
        {
        }
Это метод, который система вызывает для запуска вашего приложения - он начинается с открытой фигурной скобки, и когда он достигает соответствующего закрытия, ваше приложение заканчивается. Но вы не сказали ему вообще ничего делать в этом методе, поэтому он начинается и сразу же заканчивается.
Вероятно, вы хотите использовать свой средний класс где-то там ...