Ask Question

Name:
Title:
Your Question:

Answer Question

Name:
Your Answer:
User Submitted Source Code!


Description:
  aa
Language: C/C++
Code:
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include<stdlib.h>
#include<graphics.h>
#include<dos.h>
#include"areas.h"
#include"boperation.h"
#define TRUE 1
#define Pi 3.142
int no,a,b;
long int fact(int);
void main(void)
{
clrscr();
int gd=DETECT,gm;
initgraph(&gd,&gm,"C:\\TC\\BGI");
setbkcolor(3);
setcolor(BLUE);
rectangle(50,10,600,50);
settextstyle(10,HORIZ_DIR,2);
setcolor(RED);
outtextxy(110,0,"\"SCIENTIFIC CALCULATOR\"");
setcolor(MAGENTA);
outtextxy(200,40,"\"MAIN MENU\"");
  while(TRUE)
  {
printf("\n\n\n\n\n\n\tWhat you want to perform:\n ");
printf("\t1.Basic Operations\n");
printf("\t2.Roots\n");
printf("\t3.Power\n");
printf("\t4.Areas\n");
printf("\t5.Trignometric Functions\n");
printf("\t6.Factorial\n");
printf("\t7.Logarithm\n");
printf("\t8.Exponent\n");
printf("\t9.Vectors\n");
printf("\t10.Matrices\n");
printf("\t11.Permutation\n");
printf("\t12.Combination\n");
printf("\t13.Absolute Value\n");
printf("\t14.Round off\n");
printf("\t0.0 to exit\n");
printf("\n\tEnter number to perform operations: ");
scanf("%d",&no);
switch(no)
{
case 1:
int x,y;
printf("\n\t\t1.Addition\n\t\t2.Subtraction\n\t\t3.Multiplication\n\t\t4.Division\n\t\t5.Mode");
printf("\n\t\tEnter number to perform basic operations: ");
scanf("%d",&x);
printf("\t\tEnter two numbers:");
scanf("%d %d",&a,&b);
(x==1?printf("\t\tAddition=%d",ADD(a,b)):(x==2?printf("\t\tSubtraction=%d",SUB(a,b)):(x==3?printf("\t\tMultiplication=%d",MUL(a,b)):(x==4?printf("\t\tDivision=%d",DIV(a,b)):(x==5?printf("\t\tMode=%d",MOD(a,b)):printf("Do Nothing"))))));
break;
case 2:
float rt;
printf("\n\t\tWhich root you want to take?\n\t\t1.Square root\n\t\t2.Cube root\n\t\t3.Fourth root");
printf("\n\t\tEnter root number: ");
scanf("%d",&a);
printf("\t\tEnter number which root you want to take= ");
scanf("%f",&rt);
(a==1?printf("\n\t\tSquare root=%.2f",pow(rt,1.0/2.0)):(a==2?printf("\n\t\tCube root=%.2f",pow(rt,1.0/3.0)):(a==3?printf("\n\t\tFourth root=%.2f",pow(rt,1.0/4.0)):printf("Do nothing"))));
break;
case 3:
long power;
printf("\t\tEnter number and its power: ");
scanf("%d %d",&a,&b);
power=pow(a,b);
printf("\t\tPower= %Ld",power);
break;
case 4:
float a1,a2;
printf("\n\t\tWhich area you want to calculate?\n\t\t1.Circle\n\t\t2.Square\n\t\t3.Triangle\n\t\t4.Rectangle\n\t\t5.Ellipse");
printf("\n\t\tEnter num for area: ");
scanf("%d",&a);
printf("\t\tEnter parameters= ");
scanf("%f %f",&a1,&a2);
(a==1?printf("\t\tArea of circle=%.2f",AREA_CIRCLE(a1)):(a==2?printf("\t\tArea of Square=%.2f",AREA_SQUARE(a1,a2)):(a==3?printf("\t\tArea of Triangle=%.2f",AREA_TRIANGLE(a1,a2)):(a==4?printf("Area of Rectangle=%.2f",AREA_RECTANGLE(a1,a2)):(a==5?printf("Area of Ellipse=%.2f",AREA_ELLIPSE(a1,a2)):printf("Wrong Selection"))))));
break;
case 5:
double angle;
printf("\n\t\tPress 1 for trignometric function\n\t\tPress 2 for Inverse trignometric function\n\t\tPress 3 for Hyperbolic functions");
printf("NOTE:This calculator will give you results in radian");
scanf("%d",&b);
if(b==1)
{
printf("\t\t1.Sin\t2.Cos\t3.Tan\n\t\t4.Cot\t5.Sec\t6.Cosec\n");
printf("\n\tEnter num to perform function and its angle in degrees:\n\t\t");
scanf("%d %lf",&a,&angle);
angle*=Pi/180;
(a==1?printf("\t\tSin=%.3lf",sin(angle)):(a==2?printf("\t\tCos=%.3lf",cos(angle)):(a==3?printf("\t\tTan=%.3lf",tan(angle)):(a==4?printf("\t\tCot=%.3lf",1/tan(angle)):(a==5?printf("\t\tSec=%.3lf",1/cos(angle)):(a==6?printf("\t\tCosec=%.3lf",1/sin(angle)):printf("Wrong Selection:-(")))))));
}
else if(b==2)
{
printf("\t1.Inverse of Sin\t2.Inverse of Cos\t3.Inverse of Tan\n\t4.Inverse of Cot\t5.Inverse of Sec\t6.Inverse of Cosec\n");
printf("\t\tEnter num to perform function and its angle in degrees:");
scanf("%d %lf",&a,&angle);
angle*=Pi/180;
(a==1?printf("\t\tInverse of Sin=%lf",asin(angle)):(a==2?printf("\t\tInverse of Cos=%lf",acos(angle)):(a==3?printf("\t\tInverse of Tan=%lf",atan(angle)):(a==4?printf("\t\tInverse of Cot=%.3lf",1/atan(angle)):(a==5?printf("\t\tInverse of Sec=%.3lf",1/acos(angle)):(a==6?printf("\t\tInverse of Cosec=%.3lf",1/asin(angle)):printf("\t\tWrong Selection:-(")))))));
}
else if(b==3)
{
printf("\t\t1.Hyperbolic Sin\t2.Hyperbolic Cos\t3.Hyperbolic Tan\n\t\t4.Hyperbolic Cot\t5.Hyperbolic Sec\t6.Hyperbolic Cosec\n");
printf("\t\tEnter num to perform function and its angle in degrees:");
scanf("%d %lf",&a,&angle);
angle*=Pi/180;
(a==1?printf("\t\tHyperbolic Sin=%lf",sinh(angle)):(a==2?printf("\t\tHyperbolic Cos=%lf",cosh(angle)):(a==3?printf("\t\tHyperbolic Tan=%lf",tanh(angle)):(a==4?printf("\t\tHyperbolic Cot=%.3lf",1/tanh(angle)):(a==5?printf("\t\tHyperbolic Sec=%.3lf",1/cosh(angle)):(a==6?printf("\t\tHyperbolic Cosec=%.3lf",1/sinh(angle)):printf("\t\tWrong Selection:-(")))))));
}
else
printf("\t\tSORRY! You press wrong num:-(");
break;
case 6:
int i;
long int ans=1;
printf("\t\tEnter factorial number: ");
scanf("%d",&a);
for(i=1;i<=a;i++)
ans*=i;
printf("\t\tFactorial= %Ld",ans);
break;
case 7:
double l;
printf("\t\tPress 1 for Natural log \n\t\t\tOR \n\t\tPress 2 for Base 10 log\n\t\t\t");
scanf("%d",&b);
if(b==1)
{
printf("\t\tEnter natural log num: ");
scanf("%d",&a);
printf("\t\tNatural log=%lf",log(a));}
else if(b==2)
{
printf("\t\tEnter base 10 log num:");
scanf("%d",&a);
printf("\t\tBase 10 log=%lf",log10(a));}
else
printf("\t\tSORRY! You press wrong number:-(");
break;
case 8:
double e;
printf("\t\tEnter exponent number:");
scanf("%lf",&e);
printf("\t\tThe exponential value of %.3lf is %.4lf",e,exp(e));
break;
case 9:
int j,v1[10],v2[10],v3[10];
printf("\t\tWhat u want to choose?");
printf("\n\t\t1.Vector Addition\n\t\t2.Vector Subtraction");
scanf("%d",&a);
printf("\t\tEnter vector size: ");
scanf("%d",&b);
printf("\t\tEnter elements of vector A: ");
for(j=0;j<b;j++)
{scanf("%d",&v1[j]);}
printf("\t\tEnter elements of vector B: ");
for(j=0;j<b;j++)
{scanf("%d",&v2[j]);}
if(a==1)
{
for(j=0;j<b;j++)
v3[j]=v1[j]+v2[j];
printf("\t\tAddition Vector: ");
for(j=0;j<b;j++)
printf("\t%d",v3[j]);
getch();
}
if(a==2)
{
for(j=0;j<b;j++)
v3[j]=v1[j]-v2[j];
printf("\t\tSubtraction Vector: ");
for(j=0;j<b;j++)
printf("\t%d",v3[j]);
getch();
}
break;
case 10:
int m,c,d,m1[10][10],m2[10][10],m3[10][10];
printf("\t\tPress 1 for Matrix Addition\n\t\tPress 2 for Matrix Subtraction\n\t\tPress 3 for Matrix Multiplication\n");
scanf("%d",&m);
printf("Enter the number of rows and columns of matrix");
scanf("%d %d",&a,&b);
printf("\t\tEnter the elements of first matrix:");
for(c=0;c<a;c++)
for(d=0;d<b;d++)
scanf("%d",&m1[c][d]);
printf("\t\tEnter the elements of second matrix:");
for(c=0;c<a;c++)
for(d=0;d<b;d++)
scanf("%d",&m2[c][d]);
if(a==1)
{
printf("\t\tSum of entered matrices:\n");
for(c=0;c<a;c++)
{
for(d=0;d<b;d++)
{
m3[c][d]=m1[c][d]+m2[c][d];

printf("%d\t",m3[c][d]);
}
printf("\n");}
}
else if(a==2)
{
printf("\t\tSub of entered matrices: ");
for(c=0;c<b;c++)
{
for(d=0;d<a;d++)
{
m3[c][d]=m1[c][d]-m2[c][d];
printf("%d\t",m3[c][d]);
}
printf("\n");}
}
else if(a==3)
{
int k1,p1,q1,m1,n1,c1,d1,f[10][10],s[10][10],m[10][10],sum1=0;
printf("\t\tEnter the number of rows and columns of first matrix\n");
scanf("%d %d",&m1,&n1);
printf("\t\tEnter the elements of first matrix:");
for(c1=0;c1<m1;c1++)
for(d1=0;d1<n1;d1++)
scanf("%d",&f[c1][d1]);
printf("Enter the num of rows and column of second matrix:\n");
scanf("%d %d",&p1,&q1);
if(n1!=p1)
printf("\t\tMatrices with entered order can't be multiplied with each other\n");
else
printf("\t\tEnter element of second matrix:\n");
for(c1=0;c1<m1;c1++)
for(d1=0;d1<n1;d1++)
scanf("%d",&s[c1][d1]);
for(c1=0;c1<m1;c1++){
for(d1=0;d1<q1;d1++){
for(k1=0;k1<p1;k1++) {
sum1=sum1+f[c1][k1]*s[k1][d1]; }
m[c1][d1]=sum1;
sum1=0;
}
}
printf("\t\tProduct of entered matrix:\n");
for(c1=0;c1<m1;c1++)
{
for(d1=0;d1<n1;d1++)
{
printf("%d\t",m[c1][d1]);
}
printf("\n");
} }
else
printf("\t\tYou entered wrong num:-(\n");
break;
case 11:
int n,r;
long int nPr=1;
printf("\t\tEnter n and r value(n>r):");
scanf("%d %d",&n,&r);
nPr=fact(n)/fact(n-r);
printf("\t\tnPr value is %Ld",nPr);
getch();
break;
case 12:
int N,R;
long int nCr=1;
printf("\t\tEnter n and r value(n>r):");
scanf("%d %d",&N,&R);
nCr=fact(N)/(fact(R)*fact(N-R));
printf("\t\tnCr value is %Ld",nCr);
getch();
break;
case 13:
int n1;
printf("\t\tEnter integer to calculate its absolute value: ");
scanf("%d",&n1);
printf("\t\tAbsolute value of %d = %d",n1,abs(n1));
break;
case 14:
double n2;
printf("\n\t\tEnter num to rounf it of: ");
scanf("%lf",&n2);
printf("\t\tNumber rounded up of %lf = %lf",n2,ceil(n2));
break;
case 0:
exit(0);
break;
}}
getch();
closegraph();
}
long int fact(int c)
{
int k;
int long f=1;
for(k=1;k<=c;k++)
f*=k;
return (f);
}

     
Comments: