Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,907 questions

51,839 answers

573 users

How to check if a number is an Armstrong number or not in Swift

1 Answer

0 votes
// An Armstrong number of three digits is an integer that the sum 
// of the cubes of its digits Is equal to the number itself
 
// 371 Is an Armstrong number 3**3 + 7**3 + 1**3 = 371
    
import Foundation

func armstrong(_ n: Int) -> Int {
    var reminder = 0, sum = 0
    let totalDigits = String(n).count
    
    var number = n
    while number > 0 {
        reminder = number % 10
        sum += Int(pow(Double(reminder), Double(totalDigits)))
        number /= 10
    }
    
    return sum
}

var n = 153 // 1*1*1 + 5*5*5 + 3*3*3 = 153
if n == armstrong(n) {
    print("Armstrong number")
} else {
    print("Not armstrong number")
}

n = 9474 // 9*9*9*9 + 4*4*4*4 + 7*7*7*7 + 4*4*4*4 =  9474
if n == armstrong(n) {
    print("Armstrong number")
} else {
    print("Not armstrong number")
}




/*
run:

Armstrong number
Armstrong number

*/

 



answered Dec 27, 2024 by avibootz

Related questions

1 answer 72 views
1 answer 90 views
1 answer 121 views
1 answer 96 views
1 answer 205 views
...