#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 ( intValue > 0 )
{
printf ( "Enter a positive Integer\n : " ) ; if ( intValue > 0 )
{
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 " ) ; }
/* 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;
}
}
return 0 ;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Ci8vIEZ1bmN0aW9uIHByb3RvdHlwZXMKaW50IFNxdWFyZShpbnQgdmFsdWUpOwppbnQgQ3ViZShpbnQgdmFsdWUpOwppbnQgbWFpbiAoKQp7Ci8qIHZhcmlhYmxlIGRlZmluaXRpb246ICovCmludCBpbnRWYWx1ZSwgbWVudVNlbGVjdCxSZXN1bHRzOwppbnRWYWx1ZSA9IDE7Ci8vIFdoaWxlIGEgcG9zaXRpdmUgbnVtYmVyCndoaWxlIChpbnRWYWx1ZSA+IDApCnsKcHJpbnRmICgiRW50ZXIgYSBwb3NpdGl2ZSBJbnRlZ2VyXG46ICIpOwpzY2FuZigiJWQiLCAmaW50VmFsdWUpOwppZiAoaW50VmFsdWUgPiAwKQp7CnByaW50ZiAoIkVudGVyIDEgdG8gY2FsY3VsYXRlIFNxdWFyZSwgMiB0byBDYWxjdWxhdGUgQ3ViZSBcbjogIik7CnNjYW5mKCIlZCIsICZtZW51U2VsZWN0KTsKaWYgKG1lbnVTZWxlY3QgPT0gMSkKewovLyBDYWxsIHRoZSBTcXVhcmUgRnVuY3Rpb24KUmVzdWx0cyA9IFNxdWFyZShpbnRWYWx1ZSk7CnByaW50ZigiU3F1YXJlIG9mICVkIGlzICVkXG4iLGludFZhbHVlLFJlc3VsdHMpOwp9CmVsc2UgaWYgKG1lbnVTZWxlY3QgPT0gMikKewovLyBDYWxsIHRoZSBDdWJlIGZ1bmN0aW9uClJlc3VsdHMgPSBDdWJlKGludFZhbHVlKTsKcHJpbnRmKCJDdWJlIG9mICVkIGlzICVkXG4iLGludFZhbHVlLFJlc3VsdHMpOwp9CmVsc2UKcHJpbnRmKCJJbnZhbGlkIG1lbnUgaXRlbSwgb25seSAxIG9yIDIgaXMgYWNjZXB0ZWRcbiIpOwp9Ci8qIGZ1bmN0aW9uIHJldHVybmluZyB0aGUgU3F1YXJlIG9mIGEgbnVtYmVyICovCmludCBTcXVhcmUoaW50IHZhbHVlKQp7CnJldHVybiB2YWx1ZSp2YWx1ZTsKfQovKiBmdW5jdGlvbiByZXR1cm5pbmcgdGhlIEN1YmUgb2YgYSBudW1iZXIgKi8KaW50IEN1YmUoaW50IHZhbHVlKQp7CnJldHVybiB2YWx1ZSp2YWx1ZSp2YWx1ZTsKfQp9CnJldHVybiAwOwp9