Ayuda con programa en c#

Iniciado por jet1994, 6 Abril 2013, 04:22 AM

0 Miembros y 1 Visitante están viendo este tema.

jet1994

Hola a todos

Necesito que me ayuden con un programa en c# (preferiblemente orientado a objetos) que sirva para ingresar un listado de alumnos con nombre,apellido, edad, y sexo
preferiblemente que se ingrese por pantalla ¿se puede?
un metodo que sirva para ingreasar un nuevo alumno, eliminar alumno,
metodo que sirva para ordenar alfabeticamente por nombre, apellido , edad, sexo

en c tendria una idea de como hacerlo pero la verdad es que la programacion en c# se me hace dificil mas si es orientado a objetos

Saludos pasen bien
Gracias de antemano

BloodSharp

#1
Buenas, tené en cuenta que posteaste en el foro de C++ cuando querías algo con C#, aún así te voy a dar un ejemplo básico de .NET para que te sirva de referencia pero en C++ ya que este es el subforo de C++. :silbar:

Código (cpp) [Seleccionar]
using namespace System;
using namespace System::Collections;


ref class Alumno
{
public:
String ^Nombre;
String ^Apellido;
Int32 Edad;
Char Sexo;
};

void ImprimirAlumnos(ArrayList ^K)
{
Console::WriteLine("Listado de Alumnos:");
for(int i=0;i<K->Count;i++)
{
Alumno ^UnAlumno=(Alumno ^)(K[i]);
Console::WriteLine("Nombre: "+UnAlumno->Nombre+", Apellido: "+
UnAlumno->Apellido+", Edad: "+UnAlumno->Edad+", Sexo: "+UnAlumno->Sexo);
}
}

int main(array<System::String ^> ^args)
{
ArrayList ^Alumnos=gcnew ArrayList();

Alumno ^A=gcnew Alumno();
A->Nombre="Cosme";
A->Apellido="Fulanito";
A->Edad=13;
A->Sexo='M';
Alumnos->Add(A);

A=gcnew Alumno();
A->Nombre="Mengana";
A->Apellido="Sultana";
A->Edad=14;
A->Sexo='F';
Alumnos->Add(A);

A=gcnew Alumno();
A->Nombre="Asdasd";
A->Apellido="Dsadsa";
A->Edad=12;
A->Sexo='M';
Alumnos->Add(A);

ImprimirAlumnos(Alumnos);
Alumnos->RemoveAt(1);
ImprimirAlumnos(Alumnos);

Console::ReadKey();
   return 0;
}





B#



jet1994

Muchas gracias me sirvio de mucho ese codigo

Tengo otra duda

como hago para ordenar datos alfabeticamente en 1 arreglo
ya sea por nombre , apellido , edad y sexo




$Edu$

Busca sobre el metodo de ordenamiento burbuja

85

ak tenés un ejemplo de como ordenar alfabéticamente
http://foro.elhacker.net/programacion_cc/ejemplo_de_ordenamientos_basicos-t358139.0.html

Si lo necesitás en C#, te puede ayudar B#  (Alias IEAX) ;-)
Me cerraron el Windows Live Spaces, entonces me creé un WordPress XD
http://etkboyscout.wordpress.com/

BloodSharp




jet1994

Hola a todos
Gracias por responder

ya tengo algo de codigo de mi programa por lo menos

ahora el proble ma que tengo es que no puedo presentar la lista alguien que ayude pls

esto es lo que tengo asta ahora

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

namespace ConsoleApplication2
{
     class alumno
    {

        public List<string> nombres = new List<string>();
        public List<string> apellidos = new List<string>();
        public List<int> edades = new List<int>();
        public List<string> sexo = new List<string>();
     
         public void adicionar()
    {
       
        Console.WriteLine("selecciono uno");
                        Console.WriteLine("ingrese nombre del alumno");
                        nombres.Add(Console.ReadLine());
                        Console.WriteLine("ingrese el apellido del alumno");
                        apellidos.Add(Console.ReadLine());
                        Console.WriteLine("ingrese la edad de la persona");
                        edades.Add(Int32.Parse(Console.ReadLine()));
                        Console.WriteLine("ingrese sexo de la persona");
                        sexo.Add(Console.ReadLine());
                        Console.WriteLine("Ingreso del estudiante exitoso");
                        Console.ReadKey();
        }

   
         
         public void mostrar()
     {
         Console.WriteLine("\nContenido de la lista nombre: ");
         foreach (string nom in nombres)
         {
             Console.WriteLine(nom);
         }
        Console.ReadKey();
     }

     }
}


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


namespace ConsoleApplication2
{
    class Program
    {
       
       
        static void Main(string[] args)
        {
            menu();
        }


        public static void menu()
        {
           
            int opcion=0;

            alumno estu = new alumno();


           

                do
                {
                    Console.Clear();
                    Console.SetCursorPosition(8, 10);
                    Console.WriteLine("menu del proyecto");
                    Console.SetCursorPosition(5, 12);
                    Console.WriteLine("1.-Ingreso de nuevo estudiante");
                    Console.SetCursorPosition(5, 13);
                    Console.WriteLine("2.- mostrar lista de estudiantes");
                    Console.SetCursorPosition(5, 14);
                    Console.WriteLine("3.- ordenar por nombre");
                    Console.SetCursorPosition(5, 15);
                    Console.WriteLine("4.- salir");
                    Console.SetCursorPosition(5, 18);
                    Console.WriteLine("(seleccione 1-4)");
                    opcion = Int32.Parse(Console.ReadLine());
                    if (opcion < 1 || opcion > 4)
                    Console.WriteLine("ingrese una opcion valida");
                } while (opcion < 1 || opcion>4);

                switch (opcion)
                {
                    case 1: estu.adicionar(); menu();
                        break;

                    case 2: estu.mostrar(); menu(); break;
                    case 3: Console.WriteLine("selecciono tres"); break;
                    case 4: break;
                }

                Console.ReadLine();
     }
    }
}


BloodSharp

Un par de comentarios:

Cita de: jet1994 en  7 Abril 2013, 05:50 AMclass alumno
    {

        public List<string> nombres = new List<string>();
        public List<string> apellidos = new List<string>();
        public List<int> edades = new List<int>();
        public List<string> sexo = new List<string>();

Acá el problema principal es que no estás creando un array del objeto 'alumno' (la idea es crear varios alumnos por eso array de alumnos, fijate el código q te puse más arriba) sino que estás creando arrays de datos de alumnos, lo cuál en parte no está mal ya que una persona puede tener varios nombres y/o apellidos (paterno, materno) pero no puede tener varias edades ni sexos.
     
Cita de: jet1994 en  7 Abril 2013, 05:50 AM
static void Main(string[] args)
{
       menu();
}

Se puede eliminar la función menu() y poner el contenido de esa función en el main... (Aunque eso sería a mi gusto :P)

Cita de: jet1994 en  7 Abril 2013, 05:50 AM
        public static void menu()
        {   
            int opcion=0;
            alumno estu = new alumno();
            do
                {
                    Console.Clear();
                    Console.SetCursorPosition(8, 10);
                    Console.WriteLine("menu del proyecto");
                    Console.SetCursorPosition(5, 12);
                    Console.WriteLine("1.-Ingreso de nuevo estudiante");
                    Console.SetCursorPosition(5, 13);
                    Console.WriteLine("2.- mostrar lista de estudiantes");
                    Console.SetCursorPosition(5, 14);
                    Console.WriteLine("3.- ordenar por nombre");
                    Console.SetCursorPosition(5, 15);
                    Console.WriteLine("4.- salir");
                    Console.SetCursorPosition(5, 18);
                    Console.WriteLine("(seleccione 1-4)");
                    opcion = Int32.Parse(Console.ReadLine());
                    if (opcion < 1 || opcion > 4)
                    Console.WriteLine("ingrese una opcion valida");
                } while (opcion < 1 || opcion>4);

                switch (opcion)
                {
                    case 1: estu.adicionar(); menu();
                        break;

                    case 2: estu.mostrar(); menu(); break;
                    case 3: Console.WriteLine("selecciono tres"); break;
                    case 4: break;
                }

                Console.ReadLine();
     }
    }
}

El switch lo podrías poner dentro, al final del dowhile, para evitar tener que usar recursividad y verificar si es menor a 1 o mayor a 3 que salga del bucle


B#