Permalänk
Medlem

jämför vektor mot random int

hej finns kanske redan en tråd om detta men hitta den inte. iallafall jag har ett problem med en uppgift i programmering 1 c# med en bingo bricka där man ska jämföra och se ifall ens 10 valda vektor nummer har samma nummer som random genererade talet.

Permalänk
Keeper of Traditions

Är det en lista du menar? Vector i C# är väl något annat än vad det är i C++ till exempel?

Då kan du använda funktionen contains() i alla fall:
https://msdn.microsoft.com/en-us/library/bhkz42b3(v=vs.110).a...

Visa signatur

|| Intel 8700K || Asus RTX 4070 TI Super TUF || Samsung 750 EVO 500GB & Kingston A2000 1TB & Samsung 960 EVO 250GB || Corsair RM 850x || Antec P183 || Asus G-Sync RoG Swift PG279Q || Dell XPS 15 || Thinkpad X220

The Force is like Duct Tape, it has a light side, a dark side, and holds the universe together.

Permalänk
Medlem

Loopa igenom samtliga platser i din array, lägg till nuvarande positionens värde i en variabel, t.ex. int total.

Jämför den nya variabeln med det genererade talet.
t.ex:

/* Din kod för att lägga in egna värden i arrayen */ int total = 0; for(int i = 0; i < myArray.length; i++) { total = total + myArray[i]; } // Jämför total med ditt genererade tal.

*EDIT*
Osäker på vad du egentligen vill få fram, den totala summan av dina 10 tal, eller att jämföra varje tal med det genererade?

Visa signatur

NZXT H510 Flow MSI B450 Tomahawk MAX
AMD Ryzen 5800X3D RX 7900XTX Kingston Fury 64GB

Permalänk
Medlem

jag skulle göra något sånt här.
kontrollera varje värde i din lista/vektor mot den slumpmässiga talet.
om det hittas så bryter vi loopen.
annars loopa vidare.

Visa signatur

Outtröttlig, löpartokig besserwisser!

Bli vegan! För djuren, planeten, hälsan och våra barns skull!

Permalänk
Medlem

@Dunder: tack för tipset! men fick inte använda contains() i denna uppgift :/.

Permalänk
Medlem
Skrivet av epetsva1:

@DunderKlumpen: tack för tipset! men fick inte använda contains() i denna uppgift :/.

Vad är det du egentligen vill få fram? Ifall du har valt en bricka med samma värde som ditt random tal? Eller vill du lägga ihop samtliga valda och sedan jämföra dem med ditt random tal?

Hursomhelst så istället för att använda contains metoden så kan du loopa igenom varje tal i din List och i loopen jämföra dem.

Visa signatur

NZXT H510 Flow MSI B450 Tomahawk MAX
AMD Ryzen 5800X3D RX 7900XTX Kingston Fury 64GB

Permalänk
Keeper of Traditions
Skrivet av Pamudas:

Vad är det du egentligen vill få fram? Ifall du har valt en bricka med samma värde som ditt random tal? Eller vill du lägga ihop samtliga valda och sedan jämföra dem med ditt random tal?

Hursomhelst så istället för att använda contains metoden så kan du loopa igenom varje tal i din List och i loopen jämföra dem.

Tyckte första posten var ganska klar med vad som skulle göras. Man har en lista med tio valda nummer, sen ska man jämföra dessa med ett slumpat nummer. Bingo, som sagt.

Till TS: Får man inte använda färdiga metoder så är nog som sagt det enklaste att bara loopa igenom listan, som nedan:
http://stackoverflow.com/questions/915745/thoughts-on-foreach...

Visa signatur

|| Intel 8700K || Asus RTX 4070 TI Super TUF || Samsung 750 EVO 500GB & Kingston A2000 1TB & Samsung 960 EVO 250GB || Corsair RM 850x || Antec P183 || Asus G-Sync RoG Swift PG279Q || Dell XPS 15 || Thinkpad X220

The Force is like Duct Tape, it has a light side, a dark side, and holds the universe together.

Permalänk
Medlem

@Pamudas: vill jämföra dom 10 valda vektorerna mot det genererade talet, ifall någon av mina vektorer har samma värde ska det ge ett bingo.

Permalänk
Hedersmedlem
Skrivet av epetsva1:

hej finns kanske redan en tråd om detta men hitta den inte. iallafall jag har ett problem med en uppgift i programmering 1 c# med en bingo bricka där man ska jämföra och se ifall ens 10 valda vektor nummer har samma nummer som random genererade talet.

Hej.

Eftersom detta är en uppgift för en utbildning så föreslår jag att du gör ett försök på att lösa uppgiften, postar metoden här, talar om vad som inte funkar och ber om hjälp specifikt om det. Räkna inte med att någon ska servera dig lösningen.

Visa signatur

Använd gilla för att markera nyttiga inlägg!

Permalänk
Skrivet av epetsva1:

@Pamudas: vill jämföra dom 10 valda vektorerna mot det genererade talet, ifall någon av mina vektorer har samma värde ska det ge ett bingo.

Om det är en vektor med 10 tal och om det slumpmässiga talet finns i sagda vektor så ska programmet ropa bingo så är det ganska lätt. Du behöver en for, en if och lite småsaker runt om bara.

Visa signatur

Corsair Vengeance LPX 4x8GB DDR4 2666MHz CL16 | Intel Core i7 6700 3,4 GHz 8MB | MSI Z170A KRAIT GAMING | Corsair Force Series 3 120 GB | Seagate SSHD Desktop 2 TB 7200 RPM 3,5" | Creative Sound Blaster Z PCIe | Western Digital 500 GB | Samsung Writemaster | Corsair TX750 V2 750 W | EVGA GeForce GTX 970 4GB SSC ACX 2.0+| Fractal Design Define R5 (Svart)

Permalänk
Medlem
Skrivet av epetsva1:

@Pamudas: vill jämföra dom 10 valda vektorerna mot det genererade talet, ifall någon av mina vektorer har samma värde ska det ge ett bingo.

Jag tror du är lite förvirrad angående terminologi - en vektor kan inte ha samma värde som ett tal.

Permalänk
Medlem

@giplet: nej självklart inte! måste ju kunna detta som sagt.Men har suttit och knåpat i 2 dagar och inte kommit fram till något som funkar.

Permalänk
Medlem
Skrivet av giplet:

Hej.

Eftersom detta är en uppgift för en utbildning så föreslår jag att du gör ett försök på att lösa uppgiften, postar metoden här, talar om vad som inte funkar och ber om hjälp specifikt om det. Räkna inte med att någon ska servera dig lösningen.

static void Main(string[] args)
{
Random rand = new Random();
int random = rand.Next(1, 10);

int minanummer;

int[] bingotalen = new int[9];

Console.WriteLine("du ska nu få skriva in 10 bingo tal mellan 1-25");

for (int i =0;bingotalen.Length>i;i++)
{

minanummer = Convert.ToInt32( Console.ReadLine());
bingotalen[i] = minanummer;
}

for (int k = 0; bingotalen.Length>k; k++)
{
if (random == bingotalen[k]) <-------------------------
{
Console.WriteLine("du hade ett av numren!\n");
}
else
{
Console.WriteLine("inge bingo\n");
}

}

Console.WriteLine("tack för att du spelade!");
Console.ReadLine();

får inte till att jämföra if satsen. just den som strular

Permalänk
Medlem
Skrivet av epetsva1:

static void Main(string[] args) { Random rand = new Random(); int random = rand.Next(1, 10); int minanummer; int[] bingotalen = new int[9]; Console.WriteLine("du ska nu få skriva in 10 bingo tal mellan 1-25"); for (int i =0;bingotalen.Length>i;i++) { minanummer = Convert.ToInt32( Console.ReadLine()); bingotalen[i] = minanummer; } for (int k = 0; bingotalen.Length>k; k++) { if (random == bingotalen[k]) <------------------------- { Console.WriteLine("du hade ett av numren!\n"); } else { Console.WriteLine("inge bingo\n"); } } Console.WriteLine("tack för att du spelade!"); Console.ReadLine();

får inte till att jämföra if satsen. just den som strular

Använd [ code ] [ /code ] taggarna så ser din kod lite snyggare ut

Det du vill göra är att avbryta loopen om du hittar något som matchar.
https://msdn.microsoft.com/en-us/library/adbctzc4.aspx

Visa signatur

NZXT H510 Flow MSI B450 Tomahawk MAX
AMD Ryzen 5800X3D RX 7900XTX Kingston Fury 64GB

Permalänk
Medlem

Hur har du tänkt denna loop ska funka??

for (int i =0;bingotalen.Length>i;i++)

Permalänk
Medlem
Skrivet av oxxyyd:

Hur har du tänkt denna loop ska funka??

for (int i =0;bingotalen.Length>i;i++)

Inget fel på loopen bortsett från att det bör vara åt andra hållet, d.v.s i < bingotalen.Length. Men båda sätten är klart godkända, då dem gör det dem ska.

Visa signatur

NZXT H510 Flow MSI B450 Tomahawk MAX
AMD Ryzen 5800X3D RX 7900XTX Kingston Fury 64GB

Permalänk
Medlem

@Pamudas: tack så mycket fick till det nu! hanterade den som en while loop :P.. får nöta in det där nu! men angående snygga till koden med [] kan du ge ett exempel?

Permalänk
Medlem
Skrivet av epetsva1:

@Pamudas: tack så mycket fick till det nu! hanterade den som en while loop :P.. får nöta in det där nu! men angående snygga till koden med [] kan du ge ett exempel?

När du lägger in kod här på forumet så kan du använda [code] [/code ]

Visa signatur

NZXT H510 Flow MSI B450 Tomahawk MAX
AMD Ryzen 5800X3D RX 7900XTX Kingston Fury 64GB

Permalänk
Medlem

@Pamudas: Sorry, du har givetvis rätt. Såg bara ovanligt ut...