Showing posts with label C. Show all posts
Showing posts with label C. Show all posts

Program to find the sum of the series 0.9, 0.99, 0.999, 0.9999, ..........

Problem:

WAP to display the series 0.9, 0.99, 0.999, 0.9999, .......... and also find the sum of the series.

Source Code:

/*to find the sum of the series 0.9, 0.99, 0.999, 0.9999, ..........*/
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{
    int i, n;
    double j=0, sum=0;
    printf("Enter the length of the series: ");
    scanf("%d", &n);
    printf("The series is\n");
    for(i = 1; i <= n; i++)
    {
        j += 0.9/pow(10, i-1);
        printf("%f, ", j);
        sum += j;
    }
    printf("\nSum of  the series is %f", sum);
    system ("pause");
    return 0;
}

Sample Run:

Enter the length of the series: 5
The series is
0.900000, 0.990000, 0.999000, 0.999900, 0.999990,
Sum of  the series is 4.888890

Program to decide the type of a triangle.

Problem:

Given the lengths of three sides of a triangle. Write a program in C which decides the type (Right Angled, Acute, Obtuse, Isosceles, Scalene, Equilateral etc.) of the triangle.

Source Code:

/*to decide the type of triangle*/
#include <stdio.h>
#include <stdlib.h>
int main()
{
    float a,b,c;
    printf("Enter the length of three sides of a triangle: ");
    scanf("%f%f%f",&a,&b,&c);
    if(a > b + c || b > c + a || c > a+b)
    {
        printf("This is not a triangle.");
        system ("pause");
        exit(0);
    }
    else if( a == b && b == c && c == a)
        printf("This is an equilateral triangle.");
    else if(a==b || b==c || c==a)
        printf("This is an isosceles triangle.");
    else if(a*a == b*b + c*c || b*b == c*c + a*a || c*c == a*a + b*b)
        printf("This is a right angled triangle.");
    else if(a*a > b*b + c*c || b*b > c*c + a*a || c*c > a*a + b*b)
        printf("This is an obtuse angled triangle.");
    else if(a*a < b*b + c*c || b*b < c*c + a*a || c*c < a*a + b*b)
        printf("This is an acute angled triangle.");
    else
        printf("This is a scalene triangle.");
    system ("pause");
    return 0;
}

Sample Output:

Enter the length of three sides of a triangle: 5 6 7
This is an acute angled triangle.

Program to display the number in reverse order.

Problem:

WAP to read four digit number and display the number in reverse order.


Source Code:

/*to display the numbers in reverse order*/
#include<stdio.h>
int main()
{
int n;
printf("Enter a four digit number: ");
scanf("%d", &n);
 printf("The number in reverse order is ");
printf("%d", n %10);
n = n/10;
printf("%d", n %10);
n = n/10;
printf("%d", n %10);
n = n/10;
printf("%d", n %10);
return 0;
}

Sample Run:

Enter a four digit number: 1234
The number in reverse order is 4321


Program to find net salary

Problem:

WAP to read basic salary. Apart from basic salary, allowances are given as follows
a. TA (Travelling Allowance) is 5% of basic salary
b. DA (Daily Allowance) is 3% of basic salary
c. HRA (House Rate Allowance) is 8% of basic salary
Also, tax is witheld 1% of basic salary.
Finally, calculate the net salary


Source Code:

/*to find net salary*/
#include<stdio.h>
int main()
{
float bs, ta, hra, da, tax, ns;
printf("Enter the amount of basic salary: ");
scanf("%f", &bs);
ta = 0.05 * bs;
da = 0.03 * bs;
hra = 0.08 * bs;
tax = 0.01 * bs;
ns = bs + ta + da + hra - tax;
printf("Travelling Allowance = %f", ta);
printf("\nDaily Allowance = %f", da);
printf("\nHome Rate Allowance = %f", hra);
printf("\nTax = %f", tax);
printf("\nNet Salary = %f", ns);
return 0;
}

Sample Run:

Enter the amount of basic salary: 50000
Travelling Allowance = 2500.00
Daily Allowance = 1500.00
Home Rate Allowance = 4000.00
Tax = 500.00
Net Salary = 57500.00


To find total price paid by a customer

Problem:

WAP to read price of three items. Apart from normal cost, a customer has to pay 13% VAT and 10% service charge. Finally, calculate the total price paid by the customer.


Source Code:

/*to find total price*/
#include<stdio.h>
int main()
{
float nc1, nc2, nc3, nc, vat, sc, tp;
printf("Enter normal cost of first item: ");
scanf("%f", &nc1);
printf("Enter normal cost of second item: ");
scanf("%f", &nc2);
printf("Enter normal cost of third item: ");
scanf("%f", &nc3);
nc = nc1 + nc2 + nc3;
vat = 0.13 * nc;
sc = 0.10 * nc;
tp = nc + vat + sc;
printf("Total net cost = %f", nc);
printf("\nVat = %f", vat);
printf("\nService charge = %f", sc);
printf("\nTotal price = %f", tp);
return 0;
}


Sample Run:

Enter normal cost of first item: 3000
Enter normal cost of second item: 4500
Enter normal cost of third item: 6000
Total net cost = 13500.00
Vat = 1755.00
Service charge = 135.00
Total price = 15390.00


Program to read marks in five subjects and calculate the total and percentage

Source Code:

/*to find the total and percentage of an examination*/
#include<stdio.h>
int main()
{
int s1, s2, s3, s4, s5, tot;
float per;
printf("Enter the marks of 5 subjects: ");
scanf("%d %d %d %d %d", &s1, &s2, &s3, &s4, &s5);
tot = s1 + s2 + s3 + s4 + s5;
per = tot / 500.0 * 100;
printf("Total = %d", tot);
printf("\nPercentage = %f", per);
return 0;
}


Sample Run:

Enter the marks of 5 subjects: 90 89 88 87 86
Total = 440
Percentage = 88.00


Program to read principle, time and rate and calculate simple interest

Source Code:

/*to find the simple interest*/
#include<stdio.h>
int main()
{
float p, t, r, si;
printf("Enter the value of principle: ");
scanf("%f", &p);
printf("Enter the time (in years): ");
scanf("%f", &t);
printf("Enter the interest rate: ");
scanf("%f", &r);
si = (p * t * r) / 100;
printf("Simple Interest = %f", si);
return 0;
}

Sample Run:

Enter the value of principle: 10000
Enter the time (in years): 3
Enter the interest rate: 12
Simple Interest = 3600.00


Program to read the length and bredth of a rectangle and find the perimeter

Source Code:

/*to find the perimeter of a rectangle*/
#include<stdio.h>
int main()
{
    float l, b, p;
    printf("Enter the value of length: ");
    scanf("%f", &l);
    printf("Enter the value of breadth: ");
    scanf("%f", &b);
    p = 2 * (l + b);
    printf("Perimeter of the rectangle is %f", p);
    return 0;
}



Sample Run:

Enter the value of length: 5
Enter the value of breadth: 6
Perimeter of the rectangle is 22

 

C program to read the radius of a circle and calculate the area and circumference

Source Code:

/*to find the area and circumference of a circle*/
#include<stdio.h>
#include<math.h>
int main()
{
float r, a, c;
printf("Enter the value of radius: ");
scanf("%f", &r);
a = M_PI * r * r;
c = 2 * M_PI * r;
printf("Area of circle = %f", a);
printf("\nCircumference of the circle = %f", c);
return 0;
}

Sample run:

Enter the value of radius: 5
Area of circle = 78.539818
Circumference of the circle = 31.415926


How to Compile a C Program on Ubuntu

This article will guide you to compile a C program on Ubuntu using the GNU gcc/g++ compiler. Additions were made in order to simplify and clarify the creation of a C program on Ubuntu.

1. Open up a terminal on Ubuntu and install the build-essential package by typing the following command in the terminal
  • sudo apt-get install build-essential
  • This will install the necessary C development libraries for your Ubuntu system to create C programs.
2. Create a directory and a sub directory to hold your C programs and your main HelloWorld program.
  • mkdir -p CProgram/HelloWorld
  • We are using CProgram for the main directory to hold our created C programs and we are using the sub directory HelloWorld to hold our main program.
3. Then we will change into our created directory by issuing the following command
  • cd CProgram/HelloWorld
4. Next we will use a text editor such as gedit or nano to create our C or C++ source code using the following command.

  • gedit main.c
  • OR
  • nano main.c

5. Enter the source code of your program. For example: the HelloWorld program is as follows:

#include<stdio.h>
#include<stdlib.h>
int main()
{
        printf("Hello World,\nThis is my first program compiled on 
Ubuntu.");

        return 0;
}

6. Save the file as main.c and exit.

7. Compiling your C program
  • Make sure you are in the CProgram/HelloWorld directory before you compile your C programs.
        Now type in the terminal:
  • gcc -Wall -W -Werror main.c -o HelloWorldC
  • The first line will invoke the GNU C compiler to compile the file main.c and output (-o) it to an executable called HelloWorldC.
  • The options -Wall -W and -Werror instruct the compiler to check for warnings.
9. If you get the permission errors, you need to make the file executable. You can do this by issuing the following commands below
  • chmod +x HelloWorldC
10. In order to execute your program you will have to type in the following commands.
  • ./HelloWorldC
[Note: All the sentences that are highlighted are the commands that have to be written in Ubuntu terminal.]


How to find second greatest number in an array?

Source Code:

//second greates among array
#include<iostream>
using namespace std;
int great (int a[],int n)
{
     int i,greatest;
     greatest=a[0];
     for (i=0;i<n;i++)
     {
         if(a[i]>greatest)
  greatest=a[i];
     }
     return greatest;
}
int second (int a[],int n)
{
    int i,second,g;
    g=great(a,n);
    if(a[0]==g)
second=a[1];
    else
        second=a[0];
    for(i=0;i<n;i++)
    {
        if(a[i]>second&&a[i]<g)
        {
            second=a[i];
        }
    }
    return second;
}
int main()
{
    int n,a[40],j;
    cout<<"How many numbers? ";
    cin>>n;
    cout<<"Enter "<<n<<" numbers\n";
    for(j=0;j<n;j++)
        cin>>a[j];
    cout<<"The greatest number is "<<great(a,n)<<endl;
    cout<<"The second greatest number is "<<second(a,n)<<endl;
    system("pause");
    return 0;
}

Output:



Insertion Sort in C++

Source Code:

//insertion sort
#include<iostream>
#include<stdlib.h>
using namespace std;
class insertion
{
    private:
        int n,key;
        int stack[100],temp;        
    public:
        void getinput()
        {
            cout<<"How many nuumbers in array? ";
            cin>>n;
            cout<<"Enter "<<n<<" numbers: ";
            for (int i=0;i<n;i++)
                cin>>stack[i];
        }
        void ascending()
        {
            for (int i=1;i<n;i++) 
            {
                while(i>0 && stack[i]<stack[i-1])
                {
                    temp=stack[i];
                    stack[i]=stack[i-1];
                    stack[i-1]=temp;
                    i--;
                }
            } 
        }
        void descending()
        {
            for (int i=1;i<n;i++) 
            {
                while(i>0&&stack[i]>stack[i-1])
                {
                    temp=stack[i];
                    stack[i]=stack[i-1];
                    stack[i-1]=temp;
                    i--;
                }
            } 
        }
        void showoutput()
        {
            cout<<"\nThe sorted numbers are: ";
            for(int j=0;j<n;j++)
                cout<<stack[j]<<"\t";
            cout<<"\n-----------------------------------------------                       --------------\n";
        }         
}; 
int main()
{
    insertion q;
    int choice;
    cout<<"\n**************************\n******INSERTION                         SORT******\n**************************\n";
    while (1)
    {
        cout<<"\n1-> Sort in ascending order\n";
        cout<<"2-> Sort in descending order\n";
        cout<<"3-> Exit\n";
        cout<<"\n\nEnter your choice(1, 2 or 3): ";
        cin>>choice;
        switch(choice)
        {
            case(1):
                q.getinput();
                q.ascending();
                q.showoutput();
                break;
            case(2):
                q.getinput();
                q.descending();
                q.showoutput();                
                break;
            case(3):
                exit(1);
        }   
    } 
    system("pause");
    return 0;
}



Output:



How to find waiting time in a single server queue system?

Source Code:

//single server queuing system
#include<iostream>
#include<conio.h>
using namespace std;
int main()
{
int n, i, a[10], s[10], w[10];
float wa=0.0;
cout<<"\n***SINGLE SERVER QUEUING SYSTEM***"<<endl;
cout<<"Get Ready!!! You are in!!!"<<endl;
cout<<"\nPress any key to run..."<<endl;
getch();
cout<<endl;
cout<<"Enter the number of customers: ";
cin>>n;
cout<<"Enter the arrival times of "<<n<<" customers: ";
for(i=1; i<=n; i++)
cin>>a[i];
cout<<"Enter the service times of "<<n<<" customers: ";
for(i=1; i<=n; i++)
cin>>s[i];
cout<<endl<<"\t---------------------------------------------                       --------------"<<endl;
cout<<"\t|Customer id | Arrival Time | Service Time |                        Waiting Time |"<<endl;
cout<<"\t---------------------------------------------------                  --------"<<endl;
w[1]=0;
for(i=1; i<=n; i++)
{
w[i+1]=w[i]+s[i]-a[i+1];
cout<<"\t|\t"<<i<<"    |\t   "<<a[i]<<"\t    |\t"                           <<s[i]<<"\t   |\t"<<w[i]<<"\t  |"<<endl;
wa+=w[i];
}
cout<<"\t---------------------------------------------------                 --------"<<endl<<endl;
cout<<"Average waiting time = "                                             <<wa/n<<endl<<endl<<endl<<endl;
system("pause");
return 0;
}

Output: