sphinx Posted December 5, 2011 Share Posted December 5, 2011 Hello, I currently have a .txt file with numbers, and I want PHP to display the number closest to 1000. What method would I use to go about doing this? Thanks Quote Link to comment https://forums.phpfreaks.com/topic/252523-display-number-closest-to-desired-value/ Share on other sites More sharing options...
Pikachu2000 Posted December 5, 2011 Share Posted December 5, 2011 Not enough information. What is the format of the file? What happens when 2 numbers are equally 'close' to 1000? Quote Link to comment https://forums.phpfreaks.com/topic/252523-display-number-closest-to-desired-value/#findComment-1294685 Share on other sites More sharing options...
scootstah Posted December 5, 2011 Share Posted December 5, 2011 Make the data into an array, then use asort() to sort it low-to-high, then use end() to get the last item in the array. $array = range(1 ,997); asort($array); echo end($array); Quote Link to comment https://forums.phpfreaks.com/topic/252523-display-number-closest-to-desired-value/#findComment-1294686 Share on other sites More sharing options...
PFMaBiSmAd Posted December 5, 2011 Share Posted December 5, 2011 After you answer Pika's question, you would take the absolute value of the difference between the data and the target value, then find the value(s) with the smallest abs(difference). Quote Link to comment https://forums.phpfreaks.com/topic/252523-display-number-closest-to-desired-value/#findComment-1294687 Share on other sites More sharing options...
ManiacDan Posted December 5, 2011 Share Posted December 5, 2011 scootstah, that wouldn't really be helpful if some of the numbers were OVER the target number. sphinx, I'm afraid your answer is "subtraction." Loop through all the numbers, subtract from 1000, find the abs() of the result, and find the lowest difference. Same way you'd do it by hand. Quote Link to comment https://forums.phpfreaks.com/topic/252523-display-number-closest-to-desired-value/#findComment-1294688 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.