Hello,
As I said in the previous post that I have started learning Rust and made a simple fibonacci series generator. Today I made a palindrome string checker. it’s very basic. I haven’t used Enum or Struct in the code since I don’t think it’s necessary in this simple code.
here is the code:
use std::io;
fn main() {
let mut input = String::new();
let stdin = io::stdin();
stdin.read_line(&mut input).unwrap(); // we want to exit in case it couldn't read from stdin
input = input.replace("\n", ""); // Removing newline
let mut is_palindrome: bool = true;
for i in 0..input.len()/2 {
let first_char: &str = &input[i..i+1];
let last_char: &str = &input[input.len()-i-1..input.len()-i];
if first_char != "\n" {
if first_char != last_char {
is_palindrome = false;
}
}
}
println!("palindrome: {}", is_palindrome);
}
That’s a fun problem! Good for getting used to how to do loops in Rust.
One thing that might be interesting is to try to do it with iterators as well. You can make a really concise solution (link is a spoiler if you plan to do this yourself) using them.