Avatar billede Shasim Novice
17. januar 2005 - 11:17 Der er 17 kommentarer og
1 løsning

Hvor mange if'er kan man lave?

Hvor mange if'er kan man være bekendt at lave i en onClipEvent(enterFrame)? Er der nogen øvre grænse før man belaster systemressourcerne for meget? Kan en pc gå i sænk hvis man f.eks. har 50 if'er, og er det bedst at bruge else?

:) Shanne
Avatar billede barklund Nybegynder
17. januar 2005 - 11:23 #1
1) Jeg har lavet filer med på den anden side af 100.000 linjers script - jeg tror ikke dine 50 if'er er et problem. :)

2) onClipEvent er lidt uddateret - kan eventuelt gøres pænere.

3) if..else blokke kan ofte skrives om til andre ting, der er lidt smartere.

Lad os se dit script :)

--
Morten Barklund
Avatar billede Shasim Novice
17. januar 2005 - 11:29 #2
Jeg har ikke noget script endnu - er ved at planlægge og undersøge hvordan jeg skal lave en opgave. Men idéen var at jeg på baggrund af 2 betingelser som tilsammen giver ca. 50 kombinationer skulle bestemme hvilke værdier som skulle vises i en ComboBox. Men det er muligvis slet ikke måden man gør den slags på ...
Avatar billede barklund Nybegynder
17. januar 2005 - 11:31 #3
Højst sandsynligt ikke. Smid noget ide og vi kan give et forslag til en løsning :)
Avatar billede Shasim Novice
17. januar 2005 - 11:41 #4
Det er et designmodul til ringe, som kan vælges i 7 forskellige profiler og 9 forskellige bredder. Besætning med brillanter er teknisk afhængigt af disse to valg. Det vil sige at der ikke må kunne vælges for mange eller for store sten til en ring. Så jeg forestillede mig at jeg med mine mange if'sætninger kunne opstille regler for besætning og angive max antal i et dyn. tekstfelt og carat-mulighederne i en combobox.
Avatar billede barklund Nybegynder
17. januar 2005 - 11:55 #5
Umiddelbart er der _intet_ svært i det, intet krævende for computeren at beregne. Kast du dig bare ud i det. Det vil dog være ret fjollet at lave det onEnterFrame - lav det som en onChange på både tekstfelt og combobox - så beregner du kun, når værdierne ændres.
Avatar billede Shasim Novice
17. januar 2005 - 12:29 #6
Kan sådan en onChanged tjekke for om en variabel skifter værdi? (Jeg har 16 knapper som bruges til at vælge profiler og bredde, og ved tryk registrer jeg værdien i en variabel)
"if..else blokke kan ofte skrives om til andre ting, der er lidt smartere." >> kan de så det i dette tilfælde?
Avatar billede barklund Nybegynder
17. januar 2005 - 12:36 #7
Hvis du allerede først registerer det ved tryk på en knap, så kan du jo bare kalde din beregningsfunktion dér? Det er da ligetil?

Og om man kan gøre det smartere end if..else - aner jeg ikke :) Kommer jo helt an på dine betingelser og resultater med videre. Men jeg kan stadig ikke se, at noget af det skulle være det store problem at lave.

--
Morten Barklund
Avatar billede Shasim Novice
17. januar 2005 - 12:42 #8
Dine svar er altid guld værd for sådan nogle som mig, og jeg forstår godt at mine "problemer" er svære at få øje på for sådan én som dig, men med en grafisk- og ikke programmerings-baggrund famler jeg altså lidt i blinde, og derfor spørger jeg de kloge.
Tak for din interesse - læg et svar så skal du få dine points :)
Avatar billede barklund Nybegynder
17. januar 2005 - 12:49 #9
Oki...

Dit spørgsmål er bare af så generel og ikke-praktisk karakter, at det er lidt svært at svare på. Forsøg dig lidt frem først (det er jo ikke meget, du skal skrive), så er det nemmere at komme med tips til løsninger.
Avatar billede Shasim Novice
17. januar 2005 - 12:50 #10
Ja, der er ingen tvivl om at jeg vender tilbage når det bliver alvor.
Avatar billede barklund Nybegynder
17. januar 2005 - 12:58 #11
Tark for points :)
Avatar billede pyroman Nybegynder
17. januar 2005 - 17:23 #12
Heh bare lidt sjov:

Man siger (groft sagt) at fx en 1 GHz cpu kan lave 1 milliard matematiske udregninger pr. sekund. En if-kode tæller dog som et par udregninger og den skal også behandles af flere systemer...


lavede lige denne simple test:

var tid = getTimer();
var n = 0;
while(getTimer()-tid <= 1000){
    n++;
}
trace(n);

som lægger 1 til værdien n, indtil der er gået mere end et sekund:

det kunne den så gøre: 390236 gange!!

og man skal nok regne med at getTimer() også sluger lidt tid... ;)
Avatar billede Shasim Novice
18. januar 2005 - 08:31 #13
Okayyy.... det var vist et meget præcist svar. Hvis ellers du dermed siger at det sagtens kan lade sig gøre at afvikle ca. 50 if-sætninger 18 gange i sekundet...?
Avatar billede barklund Nybegynder
18. januar 2005 - 12:13 #14
Hvem kunne dog finde på at lave et setup, hvor der skal laves den samme beregning 50 gange i sekundet uden præmisserne har ændret sig? Du skal selvfølgelig kun re-beregne, når der er en ændring i et af input-tallene.

Ikke, at det ikke kan lade sig gøre. Tag et kig på http://dr.dk/skum/hundeparken og gæt dig til, hvor mange tusind beregninger, der sker hvert sekund - mange!
Avatar billede Shasim Novice
18. januar 2005 - 12:54 #15
Nej - så dum skulle man ikke tro at nogen kan være :)
Jeg HAR faktisk forstået at jeg ikke skal lave det på den måde, men Jeg regnede med at pyromans sjove indslag forholdt sig til mit indledende spørgsmål, og svarede mest af høflighed.
For ikke at miste den sidste rest af selvtillid, trækker jeg mig tilbage nu med tak for hjælpen endnu en gang ...
Avatar billede pyroman Nybegynder
18. januar 2005 - 20:53 #16
Hehe - det er i orden, man kan jo ikke kande til alt - og det er bedre at spørge om vej i stedet for at famle sig frem i blinde...
- barklund skulle bare lige blære sig med sin utroligt store erfaring og videnskab...
Og ja morten - du ved sgu nok mange gange mere end mig og shanne hvordan man tester beregninger helt præcist... ;) - For du er sgu nok en af de bedste programmører på exp.dk!!
Avatar billede barklund Nybegynder
18. januar 2005 - 20:55 #17
Det var nu ikke sådan ment :/
Avatar billede pyroman Nybegynder
18. januar 2005 - 21:18 #18
Min kommentar var nu også ment både rosende og sjov ;)
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
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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