1 svar
127 visningar
Toman är nöjd med hjälpen!
Toman 5
Postad: 27 sep 2020

C# Vektor - Skriv ut och jämför

Håller på med en uppgift som gett mig följande instruktioner: 

Du ska nu skapa en vektor med plats för tio positioner och som lagrar heltal. Du ska nu fylla vektorn med tal. Detta ska ske med hjälp av en for-loop och genom att användaren får skriva in dessa värden.

Deklarera nu en variabel med ett heltal. Skriv ut alla värden ur vektorn med en loop. Om något tal i vektorn är lika med heltalet i den nya variabeln så ska detta uppmärksammas.

Min kod hittills ser ut så här: 

 


int helTal = 18;

Console.WriteLine("Skriv in 10 heltal"); //Ber användaren efter 10 värden till talen

string inmatning = Console.ReadLine();
int num = Convert.ToInt32(inmatning); //Gör om den inmatade string till en int med namnet "num"


int[] tal = new int[9]; // En vektor med plast för 10 heltal deklareras
for (int i = 0; i < tal.Length; i++) //En for-loop deklareras
{
Console.WriteLine("Ditt tal:");
tal[i] = Convert.ToInt32(Console.ReadLine()); // Talen som använder matar in skrivs ut 
}

for (int i = 0; helTal == i; i++)
{
Console.WriteLine("Det inmatade talet matchde med det förutbestämde heltalet 18");
Console.ReadLine();

 

Programmet läser in användares tal men anger inte om talet stämmer överens med mitt förutbestämda heltal. 

Kan inte komma på vart jag skall lägga in det villkoret. Lite hjälp på vägen tack?

Laguna 10972
Postad: 27 sep 2020

Du får gå igenom vektorn på precis samma sätt som när du läste in talen:

for (int i = 0; i < tal.Length; i++)

och i den loopen kolla om tal[i] == helTal.

Det du gör nu är att loopa så länge i == helTal och det är ju aldrig sant.

Man kan lägga rätt test i loopens första rad, som du försökte göra, men man får tänka på hur det fungerar dels när inget tal i vektorn matchar, dels när flera gör det.

Svara Avbryt
Close