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,885 questions

51,811 answers

573 users

How to recursively check if a number is palindrome in Rust

2 Answers

0 votes
fn is_palindrome(n: i32) -> bool {
    fn recursive_reverse_number(n: i32, temp: i32) -> i32 {
        if n == 0 {
            temp
        } else {
            recursive_reverse_number(n / 10, temp * 10 + n % 10)
        }
    }

    if n < 0 {
        return false; 
    }

    n == recursive_reverse_number(n, 0)
}

fn main() {
    let number = 12321;
    
    println!("{}", is_palindrome(number)); 
}


     
     
/*
run:
 
true

*/

 

 



answered Oct 17, 2024 by avibootz
0 votes
fn recursively_check_palindrome(n: i32, original: i32) -> bool {
    if n == 0 {
        original == original.abs().to_string().chars().rev().collect::<String>().parse::<i32>().unwrap()
    } else {
        recursively_check_palindrome(n / 10, original)
    }
}

fn main() {
    let n = 12321;

    if recursively_check_palindrome(n, n) {
        println!("Palindrome");
    } else {
        println!("NOT Palindrome");
    }
}


     
     
/*
run:
 
Palindrome

*/

 



answered Oct 17, 2024 by avibootz
...