#include <stdio.h>
// Function prototypes
int Square( int value) ;
int Cube( int value) ;
int main ( )
{
/* variable definition: */
int intValue, menuSelect, Results;
intValue = 1 ;
// While a positive number
while ( )
{
printf ( "Enter a positive Integer\n : " ) ; if ( )
{
printf ( "Enter 1 to calculate Square, 2 to Calculate Cube \n : " ) ; scanf ( "%d" , & menuSelect
) ;
if ( menuSelect == 1 )
{
// Call the Square Function
Results = Square( intValue) ;
printf ( "Square of %d is %d\n " , intValue
, Results
) ; }
else if ( menuSelect == 2 )
{
// Call the Cube function
Results = Cube( intValue) ;
printf ( "Cube of %d is %d\n " , intValue
, Results
) ; }
else
printf ( "Invalid menu item, only 1 or 2 is accepted\n " ) ; }
}
return 0 ;
}
/* function returning the Square of a number */
int Square( int value)
{
return value* value;
}
/* function returning the Cube of a number */
int Cube( int value)
{
return value* value* value;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Ci8vIEZ1bmN0aW9uIHByb3RvdHlwZXMKaW50IFNxdWFyZShpbnQgdmFsdWUpOwppbnQgQ3ViZShpbnQgdmFsdWUpOwppbnQgbWFpbiAoKQp7CiAvKiB2YXJpYWJsZSBkZWZpbml0aW9uOiAqLwogaW50IGludFZhbHVlLCBtZW51U2VsZWN0LFJlc3VsdHM7CiBpbnRWYWx1ZSA9IDE7CiAvLyBXaGlsZSBhIHBvc2l0aXZlIG51bWJlcgp3aGlsZSAoKQogewogcHJpbnRmICgiRW50ZXIgYSBwb3NpdGl2ZSBJbnRlZ2VyXG46ICIpOwogc2NhbmYoIiVkIiwgJmludFZhbHVlKTsKIGlmICgpCiB7CiBwcmludGYgKCJFbnRlciAxIHRvIGNhbGN1bGF0ZSBTcXVhcmUsIDIgdG8gQ2FsY3VsYXRlIEN1YmUgXG46ICIpOwogc2NhbmYoIiVkIiwgJm1lbnVTZWxlY3QpOwoKIGlmIChtZW51U2VsZWN0ID09IDEpCiB7CiAvLyBDYWxsIHRoZSBTcXVhcmUgRnVuY3Rpb24KIFJlc3VsdHMgPSBTcXVhcmUoaW50VmFsdWUpOwogcHJpbnRmKCJTcXVhcmUgb2YgJWQgaXMgJWRcbiIsaW50VmFsdWUsUmVzdWx0cyk7CiB9CiBlbHNlIGlmIChtZW51U2VsZWN0ID09IDIpCiB7CiAvLyBDYWxsIHRoZSBDdWJlIGZ1bmN0aW9uCiBSZXN1bHRzID0gQ3ViZShpbnRWYWx1ZSk7CiBwcmludGYoIkN1YmUgb2YgJWQgaXMgJWRcbiIsaW50VmFsdWUsUmVzdWx0cyk7CiB9CiBlbHNlCiBwcmludGYoIkludmFsaWQgbWVudSBpdGVtLCBvbmx5IDEgb3IgMiBpcyBhY2NlcHRlZFxuIik7CiB9CiB9CiByZXR1cm4gMDsKfQovKiBmdW5jdGlvbiByZXR1cm5pbmcgdGhlIFNxdWFyZSBvZiBhIG51bWJlciAqLwppbnQgU3F1YXJlKGludCB2YWx1ZSkKewogcmV0dXJuIHZhbHVlKnZhbHVlOwp9Ci8qIGZ1bmN0aW9uIHJldHVybmluZyB0aGUgQ3ViZSBvZiBhIG51bWJlciAqLwppbnQgQ3ViZShpbnQgdmFsdWUpCnsKIHJldHVybiB2YWx1ZSp2YWx1ZSp2YWx1ZTsKfSAK