- Android alkalmazások - szoftver kibeszélő topik
- Samsung Galaxy S22 és S22+ - a kis vagány meg a bátyja
- Samsung Galaxy Watch8 - Classic - Ultra 2025
- Honor Magic V5 - méret a kamera mögött
- Sony Xperia 1 VII - Látod-e, esteledik
- Fotók, videók mobillal
- A lapkakészlet és az akku különbözteti meg a Motorola Edge 60 és Edge 60 Pro-t
- Yettel topik
- Megérkezett a Google Pixel 7 és 7 Pro
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
Ú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!
- exHWSW - Értünk mindenhez IS
- Android alkalmazások - szoftver kibeszélő topik
- PC random újraindulásai
- Gumi és felni topik
- Samsung Galaxy S22 és S22+ - a kis vagány meg a bátyja
- Autóhifi
- Samsung Galaxy Watch8 - Classic - Ultra 2025
- gban: Ingyen kellene, de tegnapra
- GAI: 150k+
- Honor Magic V5 - méret a kamera mögött
- További aktív témák...
- BESZÁMÍTÁS! Microsoft XBOX Series X 1TB SSD fekete játékkonzol garanciával hibátlan működéssel
- Tablet felvásárlás! Samsung Galaxy Tab S10+, Samsung Galaxy Tab S10 Ultra, Samsung Galaxy Tab S10 FE
- Tablet felvásárlás!! Apple iPad, iPad Mini, iPad Air, iPad Pro
- Samsung Galaxy A21s 32GB, Kártyafüggetlen, 1 Év Garanciával
- Gamer PC-Számítógép! Csere-Beszámítás! Ryzen 5 5500 / RX 6600XT / 32GB DDR4 / 512GB SSD
Állásajánlatok
Cég: FOTC
Város: Budapest