- Xiaomi Smart Band 8 - folyamatosan
- Szerkesztett és makrofotók mobillal
- Ingyen beszerezhető pár SEGA klasszikus mielőtt lekerülnek a Play Áruházból
- Motorola Moto Tag - nyomom, követ
- Magisk
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- További kavarás a Pixel 10-ek körül
- Android szakmai topik
- Samsung Galaxy Watch7 - kötelező kör
- Hivatalos a OnePlus 13 startdátuma
Új hozzászólás Aktív témák
-
Alexios
veterán
pedig ahol list<int> van ott hashset<int>-nek is mennie kéne, ugyanaz a namespace
Amúgy lista.distinct() és kivannak szűrve a duplikált elemekIlletve olvashatóbb a kódod ha egy megametódus helyett, amiket ráadásul regionnal szedsz szét, amiket most regionokbe raktál kirakod egy külön metódusba és azokat hívod meg.(főleg hogy lényegében mind ugyanazt csinálja, és 3x kell leírnod mikor egy metódusba elég lenne 1x és azt 3x meghívni)
-
Peter Kiss
őstag
Nem tudom, mi a végcél, de ilyen feladatnál előbb összeszedjük az elemeket, majd random sorrendben kiszedjük őket:
using System;
using System.Collections.Generic;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
var listOfNumbers = new List<int>();
var minValue = 1;
var exclusiveMaxValue = 6;
for (var i = minValue; i < exclusiveMaxValue; i++)
{
listOfNumbers.Add(i);
}
var randomized = new int[exclusiveMaxValue - minValue];
var random = new Random();
for (var i = 0; i < exclusiveMaxValue - minValue; i++)
{
var index = random.Next(0, listOfNumbers.Count);
randomized[i] = listOfNumbers[index];
listOfNumbers.RemoveAt(index);
}
/* ... */
}
}
} -
lord.lakli
őstag
Én inkább List<int>-be pakolnám. List-nek van Contains fv, ami megmondja szerepel-e benne. Ha nem, akkor hozzáadod. Ezt az egészet egy while ciklusba, ami akkor álljon meg, ha Count 5-öt ad vissza.
Így nem kell for, do-while, csak egy while.A te megoldásodban az a baj, hogy "ronda"
és csak egyszer vizsgálod meg, hogy mit kell cserélni, de miután 5 elem kell és 1-5 között, így sokszor ismétlődhet.
Valami ilyesmi:
var tomb = new List<int>();
var r = new Random();
while (tomb.Count < 5)
{
int szam = r.Next(1, 6);
if (!tomb.Contains(szam))
tomb.Add(szam);
}String.Join(", ", tomb.ToArray())
Sőt ha csak kiírod, egyből mehet List<string>-be is.
Új hozzászólás Aktív témák
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Kerékpárosok, bringások ide!
- Xiaomi Smart Band 8 - folyamatosan
- Szerkesztett és makrofotók mobillal
- Revolut
- Ingyen beszerezhető pár SEGA klasszikus mielőtt lekerülnek a Play Áruházból
- Motorola Moto Tag - nyomom, követ
- Gamepad
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Magisk
- Milyen notebookot vegyek?
- További aktív témák...
- Acer Nitro 5 -AN515 - 15.6"FHD IPS 144Hz - i7-11800H - 16GB - 512GB SSD+1TB HDD -RTX 3050 - Garancia
- Microsoft Surface Book 3 - 15 col
- Eladó ÚJ BONTATLAN Honor Magic6 Lite 8/256GB fekete / 12 hónap jótállással!
- Apple iPhone 13 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- Azonnali készpénzes Sony Playstation 4 Slim / PS4 Pro felvásárlás személyesen/csomagküldéssel
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged