- Modification 1: I inserted another bar in the class comment;
- Modification 2: declare note1 and note2 as double;
- Modification 3: I used a Convert.ToDouble in the variable path;
The problem was that your calculating 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();
}
}
}