How to square every digit of a number in Java

4 Answers

0 votes
public class MyClass
{
	public static int SquareDigits(int number) {
		var str = String.valueOf(number);
		var result = "";

		for (var i = 0; i < str.length(); i++) {
			char ch = str.charAt(i);
			int num = Integer.parseInt(String.valueOf(ch));
			result += (num * num);
		}

		return Integer.parseInt(result);
	}
	public static void main(String[] args)
	{
		int num = 234;

		num = SquareDigits(num);

		System.out.print(num);
	}
}




/*
run:
    
4916
    
*/

 



answered Aug 4, 2023 by avibootz
0 votes
public class MyClass
{
	public static int SquareDigits(int number) {
		var result = "";

		while (number != 0) {
			int remainder = number % 10;
			number = number / 10;
			result = (remainder * remainder) + result;
		}

		return Integer.parseInt(result);
	}
	public static void main(String[] args)
	{
		int num = 234;

		num = SquareDigits(num);

		System.out.print(num);
	}
}




/*
run:
    
4916
    
*/

 



answered Aug 4, 2023 by avibootz
0 votes
public class MyClass
{
	public static int SquareDigits(int number) {
		StringBuilder result = new StringBuilder();
        
        while (number > 0) {
            int remainder = number % 10;
            result.insert(0, remainder * remainder); 
            number /= 10;
        }
        
        return Integer.parseInt(result.toString());
	}
	public static void main(String[] args)
	{
		int num = 234;

		num = SquareDigits(num);

		System.out.print(num);
	}
}




/*
run:
    
4916
    
*/

 



answered Aug 4, 2023 by avibootz
edited Aug 4, 2023 by avibootz
0 votes
public class MyClass
{
    public static int SquareDigits(int number) {
        int digit, result = 0, mul = 1;
 
        while (number > 0) {
            digit = number % 10;
            result += digit * digit * mul;
            mul *= (digit <= 3) ? 10 : 100;
            number /= 10;
        }
 
        return result;
    }

    public static void main(String[] args)
    {
        int num = 234;
 
        num = SquareDigits(num);
 
        System.out.print(num);
    }
}
 
 
 
 
/*
run:
     
4916
     
*/

 



answered Aug 4, 2023 by avibootz
edited Aug 5, 2023 by avibootz

Related questions

1 answer 118 views
2 answers 148 views
2 answers 159 views
2 answers 145 views
1 answer 111 views
1 answer 95 views
95 views asked Aug 4, 2023 by avibootz
2 answers 111 views
...