Avatar billede set Nybegynder
18. juli 2015 - 21:52 Der er 10 kommentarer og
1 løsning

array

hvordan kan jeg oprette et array med tal til f. eks. mine lottotal som jeg har på en 5 ugers kupon. jeg har 10 rækker med 7 tal.
jeg er ved at lave et lille program som tester om der er gevinst.
jeg har lavet en tabel hvor jeg indtaster resultatet af trækningen og udskriver denne i en label.
jeg vil gerne teste mine rækker om de indeholder det tal jeg indsætter i tabellen, så jeg kan se om der er gevinst eller ikke og i hvilken evt. række der er gevinst.
arrayet skal selvfølgelig være statisk.
Avatar billede jakobdo Ekspert
19. juli 2015 - 08:30 #1
er det noget ala dette du tænker på ?
var lottotal = [1, 2, 5, 7, 9, 12, 32];
Avatar billede Slater Ekspert
19. juli 2015 - 09:03 #2
Ti rækker med syv tal, så er det vel nærmere noget à la

var lottotal = [
  [1, 2, 5, 7, 9, 12, 32],
  [2, 3, 4, 5, 6, 7, 8],
  osv.
];

Men ja, jeg er også lidt i tvivl om spørgsmålet.
Avatar billede set Nybegynder
19. juli 2015 - 11:07 #3
Tak for svarene.

Det løsningen som viperine har, der muligvis kan bruges til videre løsning af mit spørgsmål.

Det jeg nu skal bruge er hvordan jeg kan tjekke de enkelte elementer i hver række når jeg klikker på et tal i en tabel.

Altså når jeg f.eks. klikker på tallet 16 hvordan kan jeg kontrollere om tallet er i hver af de rækker der evt. indeholder dette tal og hvordan jeg får at vide hvilke række(r) tallet er tilstede, således at når jeg har klikket på de 7 tal der er udtrukket kan se om der er gevinst på min kupon.

Håber dette hjælper lidt med overskueligheden på mit spørgsmål.
Avatar billede jakobdo Ekspert
19. juli 2015 - 11:13 #4
Det er jo svært at sige noget 100%, da vi ikke ved hvad du forsøger.
Men at undersøge om et tal er i et array, der kan du bruge: lottotal.indexOf(16)
Avatar billede Slater Ekspert
19. juli 2015 - 11:14 #5
At tjekke om ét tal findes i sådan en todimensionel array kan gøres f.eks. således:

var lottotal = [
    [1, 2, 3, 4, 5, 6, 7],
    [2, 3, 4, 5, 6, 7, 8],
    [3, 4, 5, 6, 7, 8, 9]
];

var search = 2;

for (var i in lottotal) {
    if (lottotal[i].indexOf(2) >= 0)
        console.log("Tallet blev fundet i række " + i);
}

- Hvis du vil tjekke om alle 7 tal findes i en række, er du nok nødt til at have to loops inde i hinanden.
Avatar billede ebea Ekspert
19. juli 2015 - 11:33 #6
En helt anden løsning, kunne være et færdigt system som laver alt det du efterlyser, og med lidt ekstra features.
Det er lavet i Excel regneark.

http://www.excel-regneark.dk/?pageIDX=149
Avatar billede set Nybegynder
26. juli 2015 - 09:35 #7
nu har fået løst mit problem med hjælp fra viperine, og fået lavet hele mit program med at finde mine evt. gevinster.
så hvis du lægger et svar er dine point hjemme.

Som tillægsspørgsmål hvordan opretter jeg et XML dokument og kan brug dette som en slags datainput til mit program.

Dvs. at jeg ikke behøver at have mine tal liggende direkte i programmet, men kan indlæse dem fra direkte fra dette dokument i stedet for at oprette en database.
Avatar billede Slater Ekspert
26. juli 2015 - 12:23 #8
Du kan indlæse en XML-fil med Javascript med XmlHttpRequest. Alternativt kan du gemme det som JSONP og indlæse det med et almindeligt script tag.

Jeg er på min telefon, så kan ikke lige beskrive nærmere nu, men det er noget at søge på.
Avatar billede set Nybegynder
26. juli 2015 - 14:49 #9
har du evt. et eksempel når du får tid, jeg kan ikke rigtig finde en løsning.
Avatar billede set Nybegynder
27. juli 2015 - 21:21 #10
hej igen
fik det selv løst, tak for hjælpen.

her er hvad jeg gjorde:

            if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
                xmlhttp = new XMLHttpRequest();  //  læser opjekt til xml filer
            }
            else {// code for IE6, IE5
                xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            }
            xmlhttp.open("GET", "Lottotal.xml", false);
            xmlhttp.send();
            xmlDoc = xmlhttp.responseXML;
            x = xmlDoc.getElementsByTagName("lottotal");  // indlæser xml dokument

            var rows = 10;  //  antal rækker i array

            for (var i = 0; i < rows; i++) {
                lotto.push([]); // indsætter antal rækker i array
            }

            for (var i = 0; i < rows; i++) {
                var række = (x[i].getElementsByTagName("Række")[0].childNodes[0].nodeValue).split(",");  //  henter den enkelte række i xml filen

                for (var k = 0; k < række.length; k++)
                    lotto[i].push(række[k]);  // indsætter rækken i arrayet
            }
Avatar billede Slater Ekspert
28. juli 2015 - 07:57 #11
Nå, det var godt. Jeg kom først lige hjem til en pc i går aftes.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester