Dure dos dias para resolver el ultimo, cada vez que me equivocaba solo decia, NOTE RINDAS, NO VEAS EL VIDEO HASTA QUE LO HAGAS, hasta que pense en usar el remove y me salio a la primera, casi justo como el profe. ME SIENTO TAN ORGULLOSO
Me encantan tus vídeos estoy cursando en la facu, y iniciaron el contenido de las clases muy avanzado y no tenia una base así que me resulta muy difícil. Pero tus tutoriales me ayudan. Gracias por el contenido.
El último ejercicio hice un poquito de trampa porque primero utilicé List listanumeros = listastring.ConvertAll(double.Parse); para convertir la Lista String a una Lista Double, pero la razón fue porque intenté hacer lo mismo que vos pero no me dejaba y google un Convert para List luego hice "trampa" ordenando los números porque investigando de curiosidad antes de ver este video había descubierto el método .Sort() listanumeros.Sort(); Y bueno la verdad tardé más buscando el Convert que terminando el ejercicio. Código completo: static void Main(string[] args) { // Pide al usuario números hasta que introduzca "PARAR" y almacénalos en una Lista. Luego sácalos por pantalla ordenados. PISTA: Mejor antes de imprimir nada, ordénalos. List listastring = new List();
string cadena = "";
while (cadena != "PARAR") { Console.Clear(); Console.WriteLine("Introduzca números y cuando quiera finalizar introduzca PARAR:"); cadena = Console.ReadLine(); listastring.Add(cadena); } listastring.Remove("PARAR"); List listanumeros = listastring.ConvertAll(double.Parse); listanumeros.Sort(); Console.Clear(); foreach (double num in listanumeros) { Console.WriteLine(num); } Console.ReadKey(); }
En el primer ejercicio he utilizado un list en vez de un array, he ahorrado una línea de código pero he roto un poco el dinamismo al tener que ingresar manualmente la cantidad de números a analizar. Por el tema de optimización intentaré usar arrays de aquí en adelante si no son estrictamente necesarios los list. ----- EDIT. Llevo un día dándole vueltas a los bucles anidados y por fin los entiendo bien, he vuelto a realizar el ejercicio con un array en vez de un list. He averiguado dos cosas que el profe con las prisas se ha podido despistar: 1. La línea "suma += numero;" se puede meter dentro del condicional "if (esprimo)" y ahorramos hacer un foreach, donde "numero" tiene que ser el nombre de la variable del primer for. 2. Como han comentado más abajo el 1 no es primo, por lo tanto el primer for tiene que empezar en 2 para que descarte el 1, quedando "for (int numero = 2; contador < 25; numero++)" y la suma en vez de 964 ha de dar 1060.
Lo hice en 15 minutos List lista=new List(); String cadena; do { Console.Write("Numero : "); cadena = Console.ReadLine(); if (cadena != "PARAR") { lista.Add(int.Parse(cadena)); } } while (cadena!="PARAR"); int aux = 0; for (int i = 0; i < lista.Count; i++) { for (int j = i + 1; j < lista.Count; j++) { if (lista[j] < lista[i]) { aux = lista[i]; lista[i] = lista[j]; lista[j] = aux; } } } foreach (var item in lista) { Console.WriteLine(item); }
Madre mía, consigo hacer los ejercicios, a veces tirando un poco de google, pero cualquier parecido con como los realiza el profesor, es pura coincidencia XDD
En el tercer ejercicio lo traté de hacer con el método del Bubblesort porque vengo de C y ya sabía hacerlo de esa forma, pero no me dejó porque las Lists no son cómo los Arrays. Así que miré el vídeo y entendí la lógica pero a la hora de copiarlo en VS no me dejaba y me daba error en el While (List.Count > 0). Si alguno sabe por qué, que me diga. Pero, literalmente, copié el código...
Hola ; ). Me parece que el primer ejercicio es incorrecto si colocamos primero que nos muestre los números primos y luego la suma nos muestra un bucle muy largo e incorrecto.
Dure dos dias para resolver el ultimo, cada vez que me equivocaba solo decia, NOTE RINDAS, NO VEAS EL VIDEO HASTA QUE LO HAGAS, hasta que pense en usar el remove y me salio a la primera, casi justo como el profe. ME SIENTO TAN ORGULLOSO
Me encantan tus vídeos estoy cursando en la facu, y iniciaron el contenido de las clases muy avanzado y no tenia una base así que me resulta muy difícil. Pero tus tutoriales me ayudan. Gracias por el contenido.
Tremendo ejercicio me encanto,!! Sos un genio, vamos por mas.
amigo sos un capo ,ahora la tengo re clara las listas bro
El último ejercicio hice un poquito de trampa porque primero utilicé
List listanumeros = listastring.ConvertAll(double.Parse);
para convertir la Lista String a una Lista Double, pero la razón fue porque intenté hacer lo mismo que vos pero no me dejaba y google un Convert para List
luego hice "trampa" ordenando los números porque investigando de curiosidad antes de ver este video había descubierto el método .Sort()
listanumeros.Sort();
Y bueno la verdad tardé más buscando el Convert que terminando el ejercicio.
Código completo:
static void Main(string[] args)
{
// Pide al usuario números hasta que introduzca "PARAR" y almacénalos en una Lista. Luego sácalos por pantalla ordenados. PISTA: Mejor antes de imprimir nada, ordénalos.
List listastring = new List();
string cadena = "";
while (cadena != "PARAR")
{
Console.Clear();
Console.WriteLine("Introduzca números y cuando quiera finalizar introduzca PARAR:");
cadena = Console.ReadLine();
listastring.Add(cadena);
}
listastring.Remove("PARAR");
List listanumeros = listastring.ConvertAll(double.Parse);
listanumeros.Sort();
Console.Clear();
foreach (double num in listanumeros)
{
Console.WriteLine(num);
}
Console.ReadKey();
}
en el segundo ejercicio, me parece mas lógico hacerlo con un SWITCH en vez muchos IF, sobretodo si después quisiéramos agregar mas opciones al menú.
42:00 EL método mágico para ordenar la lista es: numeros.Sort();
Ordena automáticamente, pero excelente usar la lógica para ordenarlos.
En el primer ejercicio he utilizado un list en vez de un array, he ahorrado una línea de código pero he roto un poco el dinamismo al tener que ingresar manualmente la cantidad de números a analizar. Por el tema de optimización intentaré usar arrays de aquí en adelante si no son estrictamente necesarios los list.
-----
EDIT. Llevo un día dándole vueltas a los bucles anidados y por fin los entiendo bien, he vuelto a realizar el ejercicio con un array en vez de un list. He averiguado dos cosas que el profe con las prisas se ha podido despistar:
1. La línea "suma += numero;" se puede meter dentro del condicional "if (esprimo)" y ahorramos hacer un foreach, donde "numero" tiene que ser el nombre de la variable del primer for.
2. Como han comentado más abajo el 1 no es primo, por lo tanto el primer for tiene que empezar en 2 para que descarte el 1, quedando "for (int numero = 2; contador < 25; numero++)" y la suma en vez de 964 ha de dar 1060.
Hola Antonio, decirte que no se puede acceder al sitio web programacion101.net que mencionas. Saludos.
En vez de usar un swich se puede usar un diccionario para ahorra lineas
excelente!!
En el último use el método Numeros.Sort(); para ordenarlos
Lo hice en 15 minutos
List lista=new List();
String cadena;
do
{
Console.Write("Numero : ");
cadena = Console.ReadLine();
if (cadena != "PARAR")
{
lista.Add(int.Parse(cadena));
}
} while (cadena!="PARAR");
int aux = 0;
for (int i = 0; i < lista.Count; i++)
{
for (int j = i + 1; j < lista.Count; j++)
{
if (lista[j] < lista[i])
{
aux = lista[i];
lista[i] = lista[j];
lista[j] = aux;
}
}
}
foreach (var item in lista)
{
Console.WriteLine(item);
}
Madre mía, consigo hacer los ejercicios, a veces tirando un poco de google, pero cualquier parecido con como los realiza el profesor, es pura coincidencia XDD
Antonio buen video! Pero el primer ejercicio está un poco mal, porque considera al 1 como primo. El resultado debió haber sido 1060. Un saludo!
Viejo la suma de los primeros 25 números primos es 1060.
En el tercer ejercicio lo traté de hacer con el método del Bubblesort porque vengo de C y ya sabía hacerlo de esa forma, pero no me dejó porque las Lists no son cómo los Arrays. Así que miré el vídeo y entendí la lógica pero a la hora de copiarlo en VS no me dejaba y me daba error en el While (List.Count > 0). Si alguno sabe por qué, que me diga. Pero, literalmente, copié el código...
Hola ; ). Me parece que el primer ejercicio es incorrecto si colocamos primero que nos muestre los números primos y luego la suma nos muestra un bucle muy largo e incorrecto.
cuando curso de java
31:36 CÓMO HACER UN EJECUTABLE!!
te quiero! xd asdsd grax