carl111 Postad 22 oktober, 2010 Share Postad 22 oktober, 2010 - Länk till kommentar Dela på andra webbplatser More sharing options...
Cecilia Postad 22 oktober, 2010 Share Postad 22 oktober, 2010 Det låter som en skoluppgift och i så fall bör du skriva in hur långt du har kommit i lösningen, vad du har fastnat på etc. Det är ju inte meningen att du ska skriva av en färdig lösning. Länk till kommentar Dela på andra webbplatser More sharing options...
carl111 Postad 22 oktober, 2010 Trådskapare Share Postad 22 oktober, 2010 - Länk till kommentar Dela på andra webbplatser More sharing options...
dirbacke Postad 2 november, 2010 Share Postad 2 november, 2010 Kul problem som antagligen har något att göra med lotto rad, det du efterfrågar är en utömmande sökning, men jag använde mig av slumpgeneratorer istället, som kan ta tid då den återupprepar att skapa arrayen ett flertal gånger om kriterierna inte uppnås! Jag gör ett vilt antagande att du kan lite Java, så här är min kod: package tal.generator; import java.util.Random; public class Generator { private int[] talArray; public int[] getTalArray() { return talArray; } public Generator() { talArray = new int[7]; } public int getSum() { return checkSum(talArray.length - 1); } public void generate(int minTal, int maxTal) { Random rnd = new Random(System.currentTimeMillis()); int sum=0, value = 0; for(int i=0; i < talArray.length; i++) { value = maxTal - sum; if(value <= 0) { i=-1; continue; } do { talArray[i] = rnd.nextInt(34) + 1; }while(checkEquals()); sum = checkSum(i); if(sum > maxTal) { i=-1; continue; } else if( i == (talArray.length - 1) && sum < minTal) { i = -1; continue; } } } private boolean checkEquals() { boolean isTrue = false; for(int i=0; i < talArray.length; i++) { for(int j=0; j < i; j++) { if(talArray[i] == talArray[j] && talArray[i] != 0 && i != j) { isTrue = true; break; } } } return isTrue; } private int checkSum(int value) { int sum=0; for(int i=0; i <= value; i++) { sum += talArray[i]; } return sum; } } och du kan köra den genom att skriva in detta: package exekvera.mig; import tal.generator.Generator; public class Shooter { public static void main(String[] args) { Generator gen = new Generator(); gen.generate(100, 150); int[] myArray = gen.getTalArray(); for(int i=0; i < myArray.length; i++) { System.out.print(myArray[i]); if(i != (myArray.length - 1)) { System.out.print(" + "); } } System.out.print(" = " + gen.getSum()); } } projektet.zip Länk till kommentar Dela på andra webbplatser More sharing options...
carl111 Postad 7 november, 2010 Trådskapare Share Postad 7 november, 2010 Tack för koden:) /mvh Henrik Länk till kommentar Dela på andra webbplatser More sharing options...
carl111 Postad 19 november, 2010 Trådskapare Share Postad 19 november, 2010 - Länk till kommentar Dela på andra webbplatser More sharing options...
Rekommendera Poster
Arkiverat
Det här ämnet är nu arkiverat och är stängt för ytterligare svar.