22. februar 2012 - 09:55Der er
11 kommentarer og 1 løsning
Matematisk hjælp til udregning af placering
Hej eksperten.
jeg sidder med et problem, det skal kunne lade sig gøre at at bestemme nogle forskellige genstandes række følge ved at sætte et tal imellem 1 og 3 i et input felt, men jeg ved ikke hvordan jeg lige skal kringle den med at sørge for at de ikke bliver det samme for det må de ikke være når koden bliver kørt igennem men brugeren må gerne vælge det samme tal så skal det bare laves om til den næst tal.
altså hvis der bliver valgt, 3-2-2 så skal det første element være nr 3 det andet element skal så være nr 1 og det sidste skal være nr 3 men hvis der bliver valgt 1-2-2 så det det være i rækkefølgen 1-2-3 håber i forstår hvad jeg menere ellers må i skrive og få mig til at uddybe mere :)
Jeg kan godt se dit problem hvis man skal "if"e eller "case" sig gennem alle muligheder. Talene 1, 2 og 3 har 27 forskellige kombinationer fra 111, 112, 113, 121 ... 331, 332, 333.
Hvis jeg har forstået dit problem korrekt, mener jeg du har en fejl i din beskrivelse med "det sidste skal være nr 3". Jeg synes logikken sige 2 således at 3-2-2 bliver konverteret til 3-1-2.
Jeg tror jeg ville lave en tabel med alle muligheder som nøgle og den rigtige kombination som værdi - noget i retning af: conv_arr = array("111" => "123", "112" => "123", "113" => "123" ... "331" => "312", "332" => "312", "333" => "312");
Så samler man felterne som tal eller streng og finder den korrekte værdi, som man derefter adskille til det der er brug for.
hmm det var det jeg frygtede, det er meget kode der skal til for at kan lade sig gøre, men vil bare ikke til at validere på talene så brugeren få en fejl besked, vil heller have systemet retter fejlen, så må lige tænke over det et par dage og se om der ikke kommer en helt vild perfekt løsning til mig, men ellers tak :) du må lige smide et svar også må jeg se om jeg kommer på noget bedere i løbet af de næste par dage. :)
Jeg må indrømme jeg ikke helt forstår hvor det er du ser problemer. Min ide med tabelopslag kan opgøres til ca. 3 linjer kode til tabel, 1 linje kode til at konvertere indholdet af felterne til en nøgle, 1 linje kode til at konvertere en kombination til en korrekt værdi og til sidst 2-3 linjer kode til at splitte den fundne værdi til videre brug. Med andre ord 5 - 8 linjer kode! Hvor kort skal det være?
Er sandheden at du har problemer med at arbejde med arrays?
Vagnk er det nu ikke grund til at skrue bissen sådan på, probie spørger efter hjælp, hvis ikke vil hjælpe på de betingelser så kan du vel bare lade være?
Problemet som jeg forstår det, er at det er svært at gennemskue den logiske gennemgang af det?
Er det sådan at det altså er 1 2 3 i række følge, men hvor række følgen kan brækkes til 3 1 2 fx? og 2 3 1, så hvis man altid starter med at læse fra 1 tallet så bliver det til 123 ?
@timpet #6 grund til at skrue bissen sådan på, probie spørger efter hjælp, hvis ikke vil hjælpe på de betingelser så kan du vel bare lade være?
Jeg var den første der bød ind med noget, og jeg kommer med 2 forslag probie ikke kan bruge, Hvad mener du så med jeg ikke har forsøgt at hjælpe ham. Jeg synes ærlig talt du er lidt ude i det urimelige, for ikke at sige fornærmende ærinde.
Man må undskylde mig at jeg borer lidt i årsagen til at mine forslag ikke kan bruges. Hvis probie ikke kan bruge tabelløsningen, kunne årsagen da udmærket være at han skal have lidt mere hjælp i den retning. En anden årsag kunne være at probie endnu ikke har formuleret sit spørgsmål ordentligt - heller ikke det kan vi hjælpe ham med, før han åbner sig lidt. Du selv kommer jo i #7 med et udtryk for at formuleringen mangler noget.
Der er ikke nogen der skriver på nogen forums for at fornærme hindanden, heller ikke mig. Det var netop det jeg prøvede at påpege. Hvis det er tone der bliver lagt hvis man måske ikke lige forstår hvad der bliver skrevet så kan jeg godt forstå der måske er nogen der ikke vender tilbage :)
Jeg ser fine muligheder i dine svar.
Det var nu heller ikke meningen at min besked skulle være fornærmende, jeg synes bare du var lidt hård ved den stakkels bruger.
Jeg er ikke et sekund uenige i at formulering mangler noget, men jeg har selv siddet på den anden side, og det er ikke altid nemt at forklare tekst hvad man mener.
Hvis mit spørgsmål til dig er den måde du gerne vil have det på så skal du bare lave 3 if cases og spørge til hvor 1 tallet er, udfra det kan du så placere resten.
if ($1 == 1) { $rakke = 123 } if ($2 == 1) { $rakke = 312 } if ($3 == 1) { $rakke = 231 }
undskyld jeg har været så meget fraværende og ikke har fået svaret. men mit problem er at jeg ikke gider at skrive hver eneste mulighed der er og hvad "løsningen" skal være ved hver mulighed alt f.eks
for probelemmet med denne linje er at der alt i alt er 27 forskkelige lsninger og hvis systemet skal udbygges så og der er 4 tal og 4 muligheder så vil det se sådan ud:
mit problem blev vidst aldrig løst jeg lukker og slukker...
Synes godt om
Ny brugerNybegynder
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.