Laagste uitkomst van berekeningen

Status
Niet open voor verdere reacties.

WILLIAMXXX

Terugkerende gebruiker
Lid geworden
29 nov 2006
Berichten
1.246
Hey,

Ik ben bezig met een spel waarbij je soldaten moet bouwen...
Die kosten: hout klei ijzer en graan
Er wordt berekent hoeveel je er van elke grondstof kan bouwen

MH = hoeveel je er maximaal met hout kunt bouwen
MK = hoeveel je er maximaal met klei kan bouwen
MI = ... ijzer
MG = ... graan

NumericUpdown1 moet als Maximun de laagste uitkomst hebben van die 4 berekeningen...

Is het zo duidelijker?
 
Laatst bewerkt:
Ik sta toch iedere keer weer versteld wat jij in een programma stopt met de meest wazige vragen die je ons stelt.

Berekening MH,MI en hij heeft al een uitkomst?
waarvan de laagste uitkomst het NumericUpDown1.maximum moet zijn?

Sorry hoor maar ik ben nu al het spoor bijster.
 
Laatst bewerkt:
Hey,

Ik laat mijn programma vier berekeningen doen.
Waarmee een maximum wordt berekent.
NumericUpDown1 moet de als maximun krijgen de laagste uitkomst...

de berekeningen zijn:

MH
MK
MI
MG

ze hebben allemaal al een uitkomst...

Weet iemand hoe je dit doet?

Ik moet Pizara gelijk geven dat je behoorlijk vaag bent. En hoe kun je controleren wat de laagste waarde is ? Misschien door alle waardes langs te gaan en dan bij te houden wat de laagste waarde was ?
 
Hoe doe je dat bijvoorbeeld?

Ik zal het wel verbeteren...
 
Laatst bewerkt:
Hoe doe je dat bijvoorbeeld?

Ik zal het wel verbeteren...

Mijn VB is erg roestig, dus ik doe het voorbeeld even in een andere taal, maar het gaat om het idee:

Code:
int myArray[] = { 16, 12, 18, 11, 9, 1 };    
int lowest = myArray[0];
    
for(unsigned int i = 1; i < 6; i++)
   if(myArray[i] < lowest)
      lowest = myArray[i];
 
Met verbeteren bedoelde ik het eerste bericht met uitleg;)

Maar zal is kijken of het lukt
 
nou,

wat CoD eigenlijk met zijn code uitlegt is dit: Stel je hebt een array met allemaal getallen, en je wilt de laagste (of de hoogste) eruit halen. Wat je dan doet is een loop maken en steeds kijken of het getal hoger of lager is.

In vb6 syn: (veurbeeld)
Code:
dim i as integer
dim myarray as string
dim iLaagste as integer

iLaagste = 13371337 [COLOR="seagreen"] 'neem een willekeurig groot getal[/COLOR]
myarray = array(5,9,200,3,2) [COLOR="SeaGreen"]'of iets dergelijks[/COLOR]

for i = 0 to ubound(myarray)
   if myarray(i) < iLaagste then
      iLaagste = myarray(i)
   end if
next i

msgbox iLaagste [COLOR="seagreen"] 'zal dus '2' geven[/COLOR]
 
nou,

wat CoD eigenlijk met zijn code uitlegt is dit: Stel je hebt een array met allemaal getallen, en je wilt de laagste (of de hoogste) eruit halen. Wat je dan doet is een loop maken en steeds kijken of het getal hoger of lager is.

In vb6 syn: (veurbeeld)
Code:
dim i as integer
dim myarray as string
dim iLaagste as integer

iLaagste = 13371337 [COLOR="seagreen"] 'neem een willekeurig groot getal[/COLOR]
myarray = array(5,9,200,3,2) [COLOR="SeaGreen"]'of iets dergelijks[/COLOR]

for i = 0 to ubound(myarray)
   if myarray(i) < iLaagste then
      iLaagste = myarray(i)
   end if
next i

msgbox iLaagste [COLOR="seagreen"] 'zal dus '2' geven[/COLOR]

Het idee klopt... maar een string vergelijken met een integer ? Of het toekennen van een string aan een integer ? Inderdaad VB style :D
 
Lukt alleen dit lukt niet:

myarray = array(5,9,200,3,2) 'of iets dergelijks

Ik had de code geupgraded en zegt die nog:

'UPGRADE_WARNING: Array has a new behavior. Click for more: 'ms-help://MS.VSCC.v90/dv_commoner/local/redirect.htm?keyword="9B7D5ADD-D8FE-4819-A36C-6DEDAF088CC7"'
 
ja, vandaar het 'ofzo. Ik maak zelf nooit arrays door de functie 'array' te gebruiken, maar, iets in deze richting moet werken (vb6)

Code:
dim sBla as string
dim sArray as string

sBla = "100,50,200,5,99,2"
sArray = split(sBla, ",")

'sArray(2) geeft dan dus 200.
of, je doet het manueel:
Code:
dim iEenArray(0 to 5) as integer

iEenArray(0) = 100
iEenArray(1) = 50
iEenArray(x) = x



het is maar wat het beste uitkomt/snelste is/makkelijkste is


Het idee klopt... maar een string vergelijken met een integer ? Of het toekennen van een string aan een integer ? Inderdaad VB style
he he, tsja. Als je het wilt kan je er natuurlijk een cInt() tussen droppen, maarja, als het goed is werkt het... :p


:thumb:
 
Laatst bewerkt:
Volgens mij is het gelukt:

Code:
        Dim grondstoffen(3) As Integer

        grondstoffen(0) = MH
        grondstoffen(1) = MK
        grondstoffen(2) = MI
        grondstoffen(3) = MG

        Dim u As Integer
        u = grondstoffen.Min
        MsgBox(u)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan