How to resolve the algorithm Middle three digits step by step in the Pike programming language

Published on 12 May 2024 09:40 PM

How to resolve the algorithm Middle three digits step by step in the Pike programming language

Table of Contents

Problem Statement

Write a function/procedure/subroutine that is called with an integer value and returns the middle three digits of the integer if possible or a clear indication of an error if this is not possible. Note: The order of the middle digits should be preserved. Your function should be tested with the following values; the first line should return valid answers, those of the second line should return clear indications of an error: Show your output on this page.

Let's start with the solution:

Step by Step solution about How to resolve the algorithm Middle three digits step by step in the Pike programming language

Source code in the pike programming language

string middlethree(int i) {
	i = abs(i);
	int length = sizeof((string)i);
	
	if(length >= 3) {
		if(length % 2 == 1) {
			int middle = (int)floor(length / 2) - 1;
			return(((string)i)[middle..middle+2]);
		}
		else {
			return "The value must contain an odd amount of digits...";
		}
	}
	else {
			return "The value must contain at least three digits...";
	}
}

int main() {
	array(int) numbers = ({123, 12345, 1234567, 987654321, 10001, -10001, -123, -100, 100, -12345, 1, 2, -1, -10, 2002, -2002, 0});

	foreach(numbers, int nums) {
		write((string)nums + " : " + middlethree(nums) + "\n");
	}
	return 0;
}


  

You may also check:How to resolve the algorithm Loops/Infinite step by step in the Modula-2 programming language
You may also check:How to resolve the algorithm Prime decomposition step by step in the Factor programming language
You may also check:How to resolve the algorithm Arithmetic/Integer step by step in the Eiffel programming language
You may also check:How to resolve the algorithm Repeat a string step by step in the AppleScript programming language
You may also check:How to resolve the algorithm Random numbers step by step in the Python programming language