C/Visual C - No logro hacer que me de el nombre, y que calcule mi edad con la fecha de nacimiento

 
Vista:

No logro hacer que me de el nombre, y que calcule mi edad con la fecha de nacimiento

Publicado por Eduardo (1 intervención) el 21/02/2020 14:48:08
Hola, buen día, soy nuevo en la programación, llevo 3 días luchando con este código pero no logro que me de resultado, me podrían ayudar, por favor, quizá se vea tonto, pero en verdad ya he intentado varias formas y he visto tutoriales pero algo estoy haciendo mal. Quiero que me pida el nombre,el apellido y posterior me de el nombre y apellido juntos, y que me pida agregar fecha de nacimiento y calcule mi edad.
Ojala me puedan orientar. Muchas gracias, dejo la sintaxis.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
using System;
 
namespace DeteccionErrores
{
    class Estudiante
    {
        static void Obtenernombrecompleto(string nombre, string apellidos)
 
        {
            string nombrecompleto;
            nombrecompleto = nombre + " " +  apellidos ;
        }
 
        public void CalcularEdad (DateTime fechaNacimiento)
        {
            int edadEstudiante = DateTime.Now.Year - fechaNacimiento.Year;
            int edadCalculada = DateTime.Now < fechaNacimiento.AddYears(edadEstudiante) ? edadEstudiante - 1 : edadEstudiante;
 
            Console.WriteLine("la edad del estudiante es: " + edadEstudiante + "años");
 
        }
    }
    class program
    {
        static void Main(string[] args)
        {
            Estudiante alumno = new Estudiante();
            string nombre;
            string apellidos;
            DateTime fechaNac;
            Console.WriteLine("Captura el nombre del alumno: ");
            nombre = Console.ReadLine();
            Console.WriteLine("Captura los apellidos del alumno: ");
            apellidos = Console.ReadLine();
 
            Console.WriteLine(alumno.ToString obtenerNombreCompleto);
 
            Console.WriteLine("Indique la fecha de nacimiento (dd/mm/aaaa): ");
            fechaNac = Convert.ToDouble(Console.ReadLine());
 
            Console.WriteLine (alumno.CalcularEdad   fechaNac);
            Console.ReadKey();
 
        }
 
 
    }
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Rodrigo
Val: 350
Bronce
Ha mantenido su posición en C/Visual C (en relación al último mes)
Gráfica de C/Visual C

No logro hacer que me de el nombre, y que calcule mi edad con la fecha de nacimiento

Publicado por Rodrigo (119 intervenciones) el 21/02/2020 15:02:18
La funcion Obtenernombrecompleto parece crear una variable que va a guardar la concatenacion de 2 strings.
La funcion no devuelve valor alguno.
La funcion sale y esa variable muere, el valor asignado a la variable se pierde.

Sugiero cambiar el tipo de la funcion para que devuelva algo.
Sugiero cambiar el tipo a string.

En la funcion asi cambiada, ahora tendria mas sentido la asignacion que haces lo uses al final de la funcion, al retornar el valor que le asignaste a la variable.

1
2
3
4
5
static string Obtenernombrecompleto(string nombre, string apellidos)  {
   string nombrecompleto;
   nombrecompleto = nombre + " " + apellidos ;
   return nombrecompleto;
}

Ahora, asignar una variable y luego retornarla, sin hacer mas, se puede optimizar, completamente eliminando la variable y eliminando la asignacion, haciendo que la funcion retorne directamente lo que necesitas

1
2
3
static string Obtenernombrecompleto(string nombre, string apellidos)  {
   return nombre + " " + apellidos ;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar