Ú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
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- IPHONE 17 PRO NARANCS 256GB, 3 év garanciával, bontott,aktiválatlan, űzletből, beszámitás lehetséges
- iPhone 15 256GB Black eladó
- Karcmentes Független Apple iPhone 16 Pro 256GB Black Titanium 96% ! 3Hó Jótállás
- Lenovo ThinkPad X1 Carbon Gen9: i7-1185G7/32GB/1TB NVMe SSD/14"FHD IPS, Matt/Win 11Pro
- Hibátlan Lenovo P14s Gen5 AMD Ryzen 5 8540U /16GB 512GB SSD/HUN BILL
- MacBook Pro 13, 14, 15, 16, MacBook Air M1, M2 M3 M4 bill magyarosítás lézerrel / sapkacserével
- Apple iPhone 15 Pro / 128GB / Kártyafüggetlen/ 12Hó Garancia / 100% akku
- LG 32SQ700S-W - 32" VA Smart - 3840x2160 4K UHD - 62Hz 5ms - WebOS - Wifi + BT - USB-C - Hangszórók
- Gamer PC-Számítógép! Csere-Beszámítás! I7 12700E / RTX 3070Ti / 32GB DDR5 / 1 TB SSD
- Bomba ár! Dell Latitude 3580 - i5-7GEN I 8GB I 256SSD I HDMI I 15,6" HD I Cam I W11 I Gar
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest