Neste programa eu recebo as siglas para cada operação, como eu poderia printar conforme eu as solicitei com, o programa se encerra quando OOO é digitado.
exemplos de entrada
18 12
MOD
MDC
OOO
saida
MDC(18,12) = 6
MOD(18,12) = 6
***código abaixo
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
int MDC(int n1, int n2);
int MOD(int n1, int n2);
int POT(int n1, int n2);
int main(){
char x[100];
int n1=0, n2=0 , rmdc = 0, rmod = 0, rpot = 0;
scanf("%d",&n1);
scanf("%d",&n2);
rmdc = MDC(n1,n2);
rmod = MOD(n1,n2);
rpot = POT(n1,n2);
do{
scanf("%s", x);
if(strcmp(x,"MDC") == 0){
printf("MDC(%d,%d) = %d\n", n1, n2, rmdc);
}
else if(strcmp(x,"MOD") == 0){
printf("MOD(%d,%d) = %d\n", n1, n2, rmod);
}
else if(strcmp(x,"POT") == 0){
printf("POT(%d,%d) = %d\n", n1, n2, rpot);
}
else if(strcmp(x,"OOO") == 0){
break;
}
} while (strcmp(x,"OOO") != 0);
return 0;
}
int MDC(int n1, int n2){
if (n2==0) return n1;
return MDC(n2, n1 % n2);
}
int MOD(int n1, int n2){
int res;
res = n1 % n2;
return res;
}
int POT(int n1, int n2)
{
if(n2 == 0)
return 1;
else if(n2 > 0)
return n1 * POT(n1, n2-1);
}