Showing posts with label runnables. Show all posts
Showing posts with label runnables. Show all posts

Upload files using Ajax with Progress Bar

Uploading files using some server side languages are not a big deal. But, if we handle file uploads asynchronously, then we will be able to save time as well as some sudden overload to the server. Here is a very short working demo of code that uploads the file through Ajax. Actually, the file is uploaded via the server side code (here PHP), but the user don't have to step upto the next page and it feels like it is happening in client side.


  • 1.   Create an HTML file say, form.html and put the following code.

        <!DOCTYPE html>
        <html>
        <head>
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.js"></script>
        <script src="http://malsup.github.com/jquery.form.js"></script>
        </head>
        <body>
        <div class="container">
        <h3 class="page-header">File Upload via Ajax with Progress Bar</h3>
        <div>
        <form action="upload.php" method="post" enctype="multipart/form-data">
        <input type="file" name="myfile"><br/>
        <input type="submit" value="Upload File to Server" class="btn btn-primary">
        </form>
        </div>
        <br/>
        <div class="progress">
        <div class="progress-bar progress-bar-striped active" role="progressbar" aria-valuemin="0" aria-valuemax="100">
        </div>
        <div class="percent">0%</div >
        </div>
        <p class="alert-info" id="status"></p>
        </div>
    
        <script>
        (function() {
        var bar = $('.progress-bar');
        var percent = $('.percent');
        var status = $('#status');
    
        $('form').ajaxForm({
        beforeSend: function() {
        status.empty();
        var percentVal = '0%';
        bar.width(percentVal);
        percent.html(percentVal);
        },
        uploadProgress: function(event, position, total, percentComplete) {
        var percentVal = percentComplete + '%';
        bar.width(percentVal);
        percent.html(percentVal);
        },
        success: function() {
        var percentVal = '100%';
        bar.width(percentVal);
        percent.html(percentVal);
        },
        complete: function(xhr) {
        status.html(xhr.responseText);
        status.addClass('alert');
        }
        });
    
        })();
        </script>
        </body>
        </html>

    2.  Now, handle the file upload into another file, upload.php as follows.
    <?php
        $uploaddir = 'E:/WebArtisans/';  //Path to a directory on your file system
        $uploadfile = $uploaddir . basename($_FILES['myfile']['name']);
    
        if (move_uploaded_file($_FILES['myfile']['tmp_name'], $uploadfile)) {
            echo "File is successfully uploaded.";
        } else {
            echo "Upload failed.";
        }
    ?>
    


    You can download the complete project from GitHub. Click here.

    Now, run and see. :)

    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


    Defining Member Function in C++

    The data member of a class is declared within the body of the class. However, the member functions can be defined in one of the two places.
    • Inside the class definition
    • Outside the class definition

    No matter whether the function is defines inside or outside the class definition, the function performs the same operation. But the syntax of the member function definition is different if declared inside or outside. The program code written inside the body of member function is the same whether it is declared inside or outside.

    1. Inside the class definition:

    The general syntax of the function definition inside class definition will be as:

    class classname
    {
        //……………..
        public:
            return_type member_function(args…)
            {
                 //function body
            }
    };

    Following example illustrates the definition of function inside class definition:

    Source Code:
    //definition inside the class
    #include<iostream>
    using namespace std;
    class student
    {
        private:
           int roll;
           char name[20];
           char phone[10];
        public:
           void getdata()
           {
               cout<<"\nEnter Roll Number: ";
               cin>>roll;
               cout<<"Enter Name: ";
               cin>>name;
               cout<<"Enter Phone Number: ";
               cin>>phone;
           }
           void showdata()
           {
               cout<<"Name: "<<name<<endl;
               cout<<"Roll Number: "<<roll<<endl;
               cout<<"Phone Number: "<<phone<<endl;
           }
    }; //end of class

    int main()
    {
        student s1, s2;
        s1.getdata();
        s2.getdata();
        cout<<"First Student"<<endl;
        s1.showdata();
        cout<<"Second Student"<<endl;
        s2.showdata();
        return 0;
    }

    Sample Run:
    Enter Roll Number: 1
    Enter Name: John
    Enter Phone Number: 1234567890

    Enter Roll Number: 2
    Enter Name: Marrie
    Enter Phone Number: 9876543210

    First Student
    Name: John
    Roll Number: 1
    Phone Number: 1234567890
    Second Student
    Name: Marrie
    Roll Number: 2
    Phone Number: 9876543210



         2. Outside the class definition:


    The general syntax of the function definition outside class definition will be as:

    class classname
    {
        //……………..
        public:
            return_type member_function(args…);
            //…………….
    };

    Return_type class_name::member_function(args…)
    {
        //function body
    }

    The declaration can be done in private or public section.
    We have presented the same example presented above where member functions are defined outside the class specification.

    Source Code:
    //definition outside the class
    #include<iostream>
    using namespace std;
    class student
    {
        private:
            int roll;
            char name[20];
            char phone[10];
        public:
            void getdata(); //function declaration
            void showdata();
    }; //end of class

    void student::getdata()  //function definition
    {
         cout<<"\nEnter Roll Number: ";
         cin>>roll;
         cout<<"Enter Name: ";
         cin>>name;
         cout<<"Enter Phone Number: ";
         cin>>phone;
    }

    void student::showdata()
    {
         cout<<"Name: "<<name<<endl;
         cout<<"Roll Number: "<<roll<<endl;
         cout<<"Phone Number: "<<phone<<endl;
    }

    int main()
    {
         student s1, s2;
         s1.getdata();
         s2.getdata();
         cout<<"First Student"<<endl;
         s1.showdata();
         cout<<"Second Student"<<endl;
         s2.showdata();
         return 0;
    }

    Sample Run:
    Enter Roll Number: 1
    Enter Name: John
    Enter Phone Number: 1234567890

    Enter Roll Number: 2
    Enter Name: Marrie
    Enter Phone Number: 9876543210

    First Student
    Name: John
    Roll Number: 1
    Phone Number: 1234567890
    Second Student
    Name: Marrie
    Roll Number: 2
    Phone Number: 9876543210



    Function Overloading in C++

    In a program there can be many functions with different name. However, some functions conceptually perform the same task on objects of different types and numbers. In such a case it is convenient to give them same name. When the same name is used for different operation, it is called function overloading. When an overloaded function is called the function with matched arguments is invoked.
    Examples of overloaded functions are as follows:
    void display(); //function with no arguments
    void display(int); //function with one int argument
    void display(float); //function with one float argument
    void display(int, float) //function with one int and
                             //one float argument

    A Complete Example to demonstrate the function overloading is as follows:

    Source Code:
    //function overloading
    #include<iostream>
    using namespace std;
    int max(int, int);
    long max(long, long);
    float max(float, float);
    char max(char, char);

    int main()
    {
    int i1 = 12, i2 = 22;
    cout<<"Greater is "<<max(i1, i2)<<endl;
    long l1 = 400000, l2 = 380000;
    cout<<"Greater is "<<max(l1, l2)<<endl;
    float f1 = 34.04, f2 = 54.455;
    cout<<"Greater is "<<max(f1, f2)<<endl;
    char c1 = 'f', c2 = 'F';
    cout<<"Greater is "<<max(c1, c2)<<endl;
    return 0;
    }

    int max(int i1, int i2)
    {
    return(i1 > i2 ? i1 : i2);
    }

    long max(long l1, long l2)
    {
    return(l1 > l2 ? l1 : l2);
    }

    float max(float f1, float f2)
    {
    return(f1 > f2 ? f1 : f2);
    }

    char max(char c1, char c2)
    {
    return(c1 > c2 ? c1 : c2);
    }

    Sample Run
    Greater is 22
    Greater is 400000
    Greater is 54.455
    Greater is f