Stap 5: Functie algoritme (functie 3)
Functie 3:
vriend void most_costly (product * p, int n)
Deze functie neemt ook het adres van het eerste object in de array van objecten in de pointer variabele p, en ook neemt objecten verklaard in de integer variabele n aantal.
Nu, is er iets wat die ik geleerd van mijn leraar. Wanneer ik wil zoeken naar de maximale waarde in een matrix met waarden, declareert u een variabele I, zeggen "max1", en geef het de lagere waarde dan elke waarde dat ooit zal worden ingevoerd in de array waarvan de maximale waarde ik wil vinden. Hier, kan de prijs van een product niet nul, dus ik ben het geven van de laagste waarde van "0". Nu run ik een lus vergelijken van elk object (product) prijs met deze variabele "max1" van de waarde 0. Als de waarde bij vergelijking (hier de prijs van het product) groter is dan "max1", vervolgens ik opslaan die waarde (prijs) in de "max1", en volgende waarde van de array blijven (volgend product de prijs). Dus voor de onmiddellijk volgende vergelijking, zijn wij eigenlijk van het vorige product prijs opgeslagen in "max1" met het huidige product prijs vergelijken. Als het huidige product prijs hoger dan van het vorige product is vervolgens opslaan ik van het huidige product prijs in "max1". En dit proces wordt voortgezet. Dus uiteindelijk zal eigenlijk heb ik de hoogste prijs-waarde in alle van de objects(products), opgeslagen in "max1". Dus, ik heb ontdekt de maximumprijs nu!
Na dit mij stormloop een andere lus, deze waarde in "max1" (dus de maximumprijs) vergelijken met de prijs van elk product, en wanneer het overeenkomt met, ik uitprinten van het product details, die in wezen is het afdrukken van het duurste product Details!
(Zie afbeelding voor de code)
PS: Voor elke code deel dat ik heb gemist om foto's van, Raadpleeg de codebestanden die ik heb geupload. (Voor ex: er is geen foto toont de code voor het initialiseren van de variabele "max1" op 0.: P)