[ Foro de C# ]

La cadena de entrada no tiene el formato correcto.no tiene el formato correcto

23-Apr-2016 23:36
juan martinez
2 Respuestas

do
               {
                   Console.Clear();
                   Console.Write("MENU COMPETENCIAS \n\n");
                   Console.Write("Elija una opcion:\n");
                   Console.Write("1.Registrar Atletas \n");
                   Console.Write("2.Datos del campeon \n");
                   Console.Write("3.Atletas por pais \n");
                   Console.Write("4.Tiempo promedio de los atletas \n");
                   Console.Write("5.Salir \n\n");
                   String op = " ";
                   op = Console.ReadLine();
           
                   String opc = op;
                   int opcion= Convert.ToInt32(op);//en esta parte no me sale el error de que la cadena de entrada
                   switch (opcion)
                   {
                       case 1:
                           salir = false;
                           break;
                       case 2:
                           for (int i = 1; i <= Atletas; i++)
                           {
                               for (int j = 1; j < Atletas; j++)
                               {
                                   if ((tiempo1[j] > tiempo1[j + 1]) & (i < Atletas))
                                   {
                                       double aux = tiempo1[j];
                                       tiempo1[j] = tiempo1[j + 1];
                                       tiempo1[j + 1] = aux;
                                       String aux2 = nombre1[j];
                                       nombre1[j] = nombre1[j + 1];
                                       nombre1[j + 1] = aux2;
                                       String aux3 = pais1[j];
                                       pais1[j] = pais1[j + 1];
                                       pais1[j + 1] = aux3;
                                   }
                               }
                           }
                           Console.Write("\n El campeon de la competencia es: " + nombre1[1] + "\n");
                           Console.Write("Nacionalidad: " + pais1[1] + "\n");
                           Console.Write("Tiempo: " + tiempo1[1]);

                           Console.Read();
                         
                           break;
                       case 3:
                           Console.Write("Digite un pais: ");
                           String p = Console.ReadLine();
                           Console.Clear();
                           Console.Write("\n\n PAIS : "+p+"\n");
                           for (int i = 1; i <= Atletas; i++)
                           {
                               if (p == pais1[i])
                               {
                                   Console.Write("\n Atleta No." + i +" "+ nombre1[i] + "\n");
                                   Console.Write("Nacionalidad: " + pais1[i] + "\n");
                                   Console.Write("Tiempo: " + tiempo1[i]+"\n\n");
                               }
                           }
                           Console.Read();
                           break;
                       case 4:
                           double promediogeneral=0;
                           double tiempoprom=0;
                           int No_competidores=0;
                           for (int i = 1; i <= Atletas; i++) {
                               tiempoprom = tiempoprom + tiempo1[i];
                               No_competidores = i;
                           }
                           promediogeneral = tiempoprom / No_competidores;
                           Console.Clear();
                           Console.Write("El tiempo promedio de los " + No_competidores + " competidores es:" + promediogeneral);
                           Console.Read();
                               break;
                   }

               } while (salir);
               Console.ReadKey();
           }
           }while(fin);
       }
   }
}


23-Apr-2016 23:38
juan martinez

Ayuda lo necesito urgente que podria hacer es un proyecto por consola


26-May-2016 15:16
Invitado (Noba)

Holap. Veo ciertos errores de lleno en la entrada de tu programa. Lo primero es la linea:
String op = " "; Si aquí lo que pretendías era declarar una variable string de nombre "op", lo has hecho incorrectamente, pues para declarar una variable de tipo string, la misma tiene que empezar con el tipo de dato "string" ("s" minúscula), no "String", que tiene "S" mayúscula. Sólo por ese error, las líneas subsiguientes repercutirán en un error fatal para todo el programa. Ello es lo que podría explicar "que la cadena de entrada no tiene el formato correcto". Luego tenemos lo de: String opc = op;... De igual manera, es el mismo error, por declarar la variable de manera incorrecta, y encima asignarle como valor una variable que también ha sido declarada de manera incorrecta. Lo tercero es la línea: switch (opcion)... En realidad, no podrá evaluar esa variable en esa sentencia por que no existe, es decir, las únicas que existen son "opc" y "op", pero no "opcion", etc,...

Saludos y un abrazo.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)