This program is an example of using functions. It teaches you how to declare a function, define it and call. Here functions for calculating factorial and permutation/combination is used. Once you see the code you will be able to understand following

- Function declaration, definition, calls.
- Use of switch statement in a program.
- How to write a structured program.
- How to make menu in C

The complete source code and output are given below.

**Source Code**

`//calculation of permutation and combination using function in C`

#include<stdio.h>`#include<conio.h> //for getch() function`

`//function declaration must be`

`//written before main function,`

`//function definition is optional`

`//you can write befor or after main`

int factorial(int n){`int fact = 1;`

`int i;`

`for(i = n; i > 0; i--){`

fact = fact*i;}`return fact;`

}int permutation(int n,int r){`int per;`

per = factorial(n)/(factorial(n-r));`return per;`

}int combination(int n,int r){int comb; //local variablecomb = factorial(n)/(factorial(n-r)*factorial(r));return comb; //return statement}`int main(){`

`int choice;`

`int n,r;`

`while(1){`

printf("\n1. Permutation\n2. Combination\n3. Factorial\n");printf("Choose option: ");scanf("%d",&choice);switch(choice){ //start of switch statement`case 1:`

printf("Enter value of n,r: ");scanf("%d%d",&n,&r);`//calculation of combination with function call`

printf("Permutation P(%d,%d) = %d",n,r,permutation(n,r));`break;`

`case 2:`

printf("Enter value of n,r: ");scanf("%d%d",&n,&r);printf("Combination C(%d,%d) = %d",n,r,combination(n,r));`break;`

`case 3:`

printf("Enter value of n: ");scanf("%d",&n);printf("The factorial %d! = %d",n,factorial(n));`break;`

default: //if user enter other than 1 or 2printf("Invalid choice! Enter either 1 or 2");`} //end of switch statement`

printf("\nWant another calculation?(y/n):");`if(getche()=='n')`

`break;`

}`return 0;`

`}//end of main`

**Output**

## No comments:

## Post a Comment