07. juli 2007 - 15:20
Der er
12 kommentarer og 1 løsning
Alle muligheder
Hej Jeg har en liste af 16 tal, og så skal jeg bruge alle muligheder hvor hvert tal kun må optræde en gang, og der skal være 4 tal i hvert resultat. Altså: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 Skal give: 1, 2, 3, 4 1, 2, 3, 5 1, 2, 3, 6 osv. Hvordan kan dette løses? Mvh. hmortensen
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Altså: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 Skal give: 1, 2, 3, 4 1, 2, 3, 5 1, 2, 3, 6 ? tror du har skrevet forkert?
Nej, det er alle muligheder jeg er ude efter. Dem jeg har vist er bare de 3 første.
altså det skal være tilfældigt?
Er rækkefølgen af tallene signifikant eller ej ?
Dvs. du skal have alle mulige kombinationer med 4 tal, udfra dine "kilde" tal ? Er rækkefølgen vigtig ? Altså, ses 1,2,3,4 og 1,3,2,4 som en eller 2 forskellige kombinationer ?
Det er to forskellige kombinationer. Samme tal må bare kun være én gang i hver kombination.
Forslag: using System; namespace E { public class MainClass { public delegate void Processor(int[] v); public static void Print(int[] v) { for(int i = 0; i < v.Length; i++) Console.Write(" " + v[i]); Console.WriteLine(); } public static void Combinations(int[] a, int ix, int[] v, int used, Processor p) { if(used < v.Length) { for(int i = ix + 1; i < a.Length; i++) { v[used] = a[i]; Combinations(a, i, v, used + 1, p); } } else { p(v); } } public static void Combinations(int[] a, int siz, Processor p) { Combinations(a, 0, new int[siz], 0, p); } public static void Main(string[] args) { int[] a = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 }; Combinations(a, 4, Print); Console.ReadLine(); } } }
07. juli 2007 - 16:58
#10
Det var lige som det skulle være arne. Laver du et svar. Jeg kogte rundt i en løkke i en løkke osv, hvilket var dømt til at gå galt :)
07. juli 2007 - 16:59
#11
Jeg mener at den enten skal vær erekrusiv eller så skal du have et antal nestede for løkker svarende til siz=v.Length.
07. juli 2007 - 17:00
#12
og et svar
07. juli 2007 - 17:00
#13
en gang mere
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.