Nota1 and nota2 show errors and do not view storage in the array. Can anyone help? Thank you very much

Asked

Viewed 66 times

1

namespace mediaDe5Alunos
{
    class Program
    /*faça um programa para cálcular a média de duas notas de 5 alunos, mostrar a média da sala e de cada aluno e um relatório dos alunos*/
    {
        static double calculo (double nota1, double nota2)
        {
            double media = (nota1 + nota2) / 2;
            return media;
        }

        private static double lerNota()
        {
            return double.Parse(Console.ReadLine());
        }

        public struct Aluno
        {
            public string nome, nota1, nota2, media;
        }

        static int a = 0;

        static void Main(string[] args)
        {

            Console.WriteLine("Programa de notas");
            Console.WriteLine("Escolha uma opção: \n1- inserir nome do aluno \n2- relatório de alunos \n3- mostrar media \n4- sair do programa");
            int opcao = int.Parse(Console.ReadLine());

            if (opcao == 1)
            {

            Aluno[] aluno = new Aluno[3];

            Console.WriteLine("Inserir nome do primeiro aluno");
            aluno[a].nome = Console.ReadLine();
            Console.WriteLine("Insira a primeira nota");
            aluno[a].nota1 = Convert.ToString(Console.ReadLine());
            Console.WriteLine("Insira a segunda nota");
            aluno[a].nota2 = Convert.ToString(Console.ReadLine());
            double media = calculo(nota1, nota2);
       //     Console.WriteLine("A média do(a) aluno(a) " + nome + " é: " + media);
            aluno[a].media = Convert.ToString(media);

                //        for (int a = 0; a < nome.Length; a++)
                //         foreach (string A in aluno)
                {
                    Console.WriteLine(a);
                }
            Console.WriteLine("==============================================");

            }
            else if (opcao == 2)
            {
                Console.WriteLine("Relatório de alunos");
            }

            else if (opcao == 3)
            {
                Console.WriteLine("Mostrar media");
            }

            else if (opcao == 4)
            {
                Console.WriteLine("Sair");
            }

            else
            {
                Console.WriteLine("Escolha uma opção válida");
            }
            Console.Read();
        }


    }
}
  • What errors does it accuse? From which line?

1 answer

1


  • Modification 1: I inserted another bar in the class comment;
  • Modification 2: I declared Nota1 and noted 2 as double;
  • Modification 3: I used a Convert.Todouble in the variable passage;

The problem was that your calculation method received two doubles and you were passing two strings.

    namespace mediaDe5Alunos
    {
    class Program //faça um programa para cálcular a média de duas notas de 5 alunos, mostrar a média da sala e de cada aluno e um relatório dos alunos/
    {
        static double calculo(double nota1, double nota2)
        {
            double media = (nota1 + nota2) / 2;
            return media;
        }
        private static double lerNota()
        {
            return double.Parse(Console.ReadLine());
        }

        public struct Aluno
        {
            public string nome, media;
            public double nota1, nota2;
        }

        static int a = 0;

        static void Main(string[] args)
        {

            Console.WriteLine("Programa de notas");
            Console.WriteLine("Escolha uma opção: \n1- inserir nome do aluno \n2- relatório de alunos \n3- mostrar media \n4- sair do programa");
            int opcao = int.Parse(Console.ReadLine());

        if (opcao == 1)
        {

            Aluno[] aluno = new Aluno[3];

            Console.WriteLine("Inserir nome do primeiro aluno");
            aluno[a].nome = Console.ReadLine();
            Console.WriteLine("Insira a primeira nota");
            aluno[a].nota1 = Convert.ToDouble(Console.ReadLine()); 
            Console.WriteLine("Insira a segunda nota");
            aluno[a].nota2 = Convert.ToDouble(Console.ReadLine());
            double media = calculo(aluno[a].nota1, aluno[a].nota2);
            //     Console.WriteLine("A média do(a) aluno(a) " + nome + " é: " + media);
            aluno[a].media = Convert.ToString(media);

            //        for (int a = 0; a < nome.Length; a++)
            //         foreach (string A in aluno)
            {
                Console.WriteLine(a);
            }
            Console.WriteLine("==============================================");

        }
        else if (opcao == 2)
        {
            Console.WriteLine("Relatório de alunos");
        }

        else if (opcao == 3)
        {
            Console.WriteLine("Mostrar media");
        }

        else if (opcao == 4)
        {
            Console.WriteLine("Sair");
        }

        else
        {
            Console.WriteLine("Escolha uma opção válida");
        }
        Console.Read();
        }

    }

}
  • Thank you for your reply. I did the auterations "public string name; public double Nota1, nota2, media", left the average as double tbm, but Nota1 and nota2 still have error (red underline). And the array does not show the stored value. Thank you very much Lucas.

  • You’re welcome! I thank you. :)

Browser other questions tagged

You are not signed in. Login or sign up in order to post.