/*Implemente um programa que calcule e escreva o numero de arranjos e combinações de m elementos p a p, daos pelas formulas P M! P M! A = ----- C = ------ M (M-P)! M p!(M-P)! Se M

#include //#include void menu(); //Função imprime menu int fat(int m); //Calcula fatorial de cada numero solicitado int arr(int p, int m); //recebe o valor de dois numeros P e M e retorna o arranjo de P e M. int com(int p, int m); //recebe o valor de dois numeros P e M e retorna a combinação de P e M. void main() { int p,m; //p e m inteiros float a,c; //arranjo combinação menu(); cin >> p >> m; if(p>m) { clrscr(); cout << "\nP eh maior que M, portanto, o numero de arranjos e combinacoes eh (0) zero\n"; cout << "\nFim do programa:\n"; getch(); } else { while(!(p==0&&m==0)) { a=arr(p,m); cout << "\nNumero de arranjos:\t" << a; c=com(p,m); cout << "\nNumero de combinacoes:\t" << c; getch(); menu(); cin >> p >> m; } clrscr(); cout << "\n0 0 ==> Fim do programa:\n"; getch(); } }//Fim de main void menu() //Função imprime menu { clrscr(); cout << "\nDIGITE O PAR DE NUMEROS PARA CALCULO DE ARRANJO E COMBINACAO, ou 0 0 para terminar\nDIGITE NA SEGUINTE ORDEM: P M\t"; } int fat(int m) //Calcula fatorial { int a; int i; a=1; for(i=m;i>1;i--) a*=i; return a; } int arr(int p, int m) //calcula um arranjo { int a; a=fat(m)/fat(m-p); //Fatorial de m dividido por Fatorial de m-p return a; } int com(int p, int m) //Calcula as combinações possiveis { int c; c=fat(m)/(fat(p-m)*fat(p)); return c; }