TryCatch problem (Nybörjare)
Tjena! Min första post här.
Jag studerar just nu Programmering 1 i C# på Komvux och skulle behöva lite hjälp.
Jag är klar och nöjd med koden so far i en ganska enkel uppgift om vektorer. Problemet jag har är att jag inte får min TryCatch att fungera som jag vill. Det här är 2:a gången jag använder mig utav det så inte riktigt inläst på hur jag ska lösa detta.
När användaren matar in något annat än ett heltal så möts man av mitt felmeddelande MEN problemet är att inmatningen lagras som 0 i min vektor och det vill jag ju inte. Jag vill att när man inte matar in ett heltal så ska loopen pausas till man gör det igen och användare tillåts fortsätta skriva in nummer.
Här är min kod:
static void Main(string[] args)
{
Console.WriteLine("Hej! Nu ska du få skriva in 10 st heltal!"); //berättar för användaren vad som ska göras
int[] vektor = new int[10]; //sätter upp en vektor för att lagra talen
for (int i = 0; i < vektor.Length; i++) //här har vi en for loop som låter oss lagra tal så länge det finns lediga platser
{
try
{
vektor[i] = int.Parse(Console.ReadLine());
continue; //HÄR är problemet. min loop fortsätter men skriver man in nåt annat än heltal här så lagras det som 0 i min vektor
}
catch
{
Console.WriteLine("Du skrev inte in ett heltal... Försök igen!");
}
}
int nummer = 1; //deklarerar nummer så vi kan hålla reda på vilket nummer vi skriver ut
foreach (int temp in vektor) //foreach loop för att skriva ut alla talen användaren matat in
{
if (nummer < 3) //enbart för att snygga till texte
{
Console.WriteLine("Det {0}:a talet du skrev in var: ", nummer);
Console.WriteLine("{0}", temp);
nummer++;
}
else //snygga till texten
{
Console.WriteLine("Det {0}:e talet du skrev in var: ", nummer);
Console.WriteLine("{0}", temp);
nummer++;
}
}
Console.WriteLine("Tryck på valfri knapp för att avsluta . . .");
Console.ReadKey(); //programavslut
}
All hjälp uppskattas! Tack på förhand.