Over a million developers have joined DZone.

Thursday Code Puzzler: Is This An Armstrong Number?

· Java Zone

Easily build powerful user management, authentication, and authorization into your web and mobile applications. Download this Forrester report on the new landscape of Customer Identity and Access Management, brought to you in partnership with Stormpath.

Thursday is code puzzler day here at DZone. The idea is simple: solve the coding problem as efficiently as you can, in any language or framework that you find suitable.

Note: Even though there really is nothing stopping you from finding a solution to this on the internet, try to keep honest, and come up with your own answer.  It's all about the participation!

Do you have code puzzlers that you'd like to share with the DZone community?  If so, please submit here. 

Determine if a given number is an Armstrong number

Write a method that will return true if the number passed through as a parameter is an Armstrong number, as defined in Wikipedia . Numbers satisfy this condition if the number is a sum of it's own digits, each raised to the power of the number of digits.

For example, 153 has 3 digits, so everything is raised to the power of 3.
153 = 1 to the power of 3 + 5 to the power of 3 + 3 to the power of 3

Given a single linked list, write a method that will determine if the "next" pointer of one of the nodes is pointing to a previous node in your list.

Catch up on all our previous puzzlers here.

The Java Zone is brought to you by Stormpath—offering a complete, pre-built User Management API for building web and mobile applications, and APIs. Download our new whitepaper: "Build Versus Buy: Customer Identity Management for Web and Mobile Applications".


{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}