Wednesday, 7 June 2017

History of C Language Programming

                   C Language Programming Development

C is a programming language developed at AT & T Bell Laboratory of USA in 1972 and it is designed and written by Dennis Ritchie. C allows a precise control of input and output as compared to other programming languages such as Pascal.

Many of the ideas and principles were taken from B and its ancestors BPCL and CPL.
Earlier a new language called Combined Programming Language(CPL) was developed at Cambridge University. This language was too complex and it is difficult to learn. Martin Richards at Cambridge University reduced the features of CPL and developed a new language called Basic Combined Programming Language(BPCL). But this is also a less powerful and too specific. Ken Thompson at AT & T's Bell Laboratory developed a language called B as further simplification of CPL. But this was also too specific.Dennis Ritchie inherited some features of CPL and BPCL and added some his own features and developed a new language called C language. Dennis Ritchie first implemented C on a DEC PDP-11 that used the UNIX operating system.

Earlier, the absence of a standard for C programming code there is discrepancies. During the rest of the 1970's, C spread throughout many colleges and universities because of it's close ties to Unix and the availability of C compilers. Soon, many different organizations began using their own versions of C causing compatibility problems. To overcome this situation, American National Standards Institute ANSI established a committee in 1983 that defined an ANSI standard for the C language formed a committee to establish a standard definition of C which became known as ANSI Standard C. Today C is in widespread use with a rich standard library of functions.

ANSI CISO C, and Standard C refer to the successive standards for the C programming language published by the American National Standards Institute (ANSI) and the International Organization for Standardization (ISO). Historically, the names referred specifically to the original and best-supported version of the standard (known as C89 or C90). Software developers writing in C are encouraged to conform to the standards, as doing so aids portability between compilers.



Monday, 5 June 2017

Categories / Type of Programming Language

Type of Programming Language
Programming languages can be divided into four categories:-

Algorithm - C Programming Language

What is Algorithm?

Algorithm is a set of step by step solution of a complex problems. It define a flow of step in very sequence manner. Algorithm is a procedure or formula for solving any problem. This concept of step by step solving any problem are being used in Mathematics and any now a days in computer science.


Algorithm Definition - Algorithm in Programming


An Algorithm is a finite set of steps defining the solution of a particular problem. An efficient Algorithm is one which is capable of giving the solution to the problem by using minimum resources of the system such as memory and processor time.

What is the features of Algorithm- Algorithm Characteristics


The features of Algorithm are following:-

1. Documentation of the Program - Documentation of the program is very necessary which facilitates the debugging and providing information. A related part the documentation is the information that the programmer presents to the user  during the execution of the program.
2. Proper understanding of the problem- This is very important feature of Algorithm. The expectation of the program must be clearly understood before starting of the programming phase. It should be very well defined the target and main goal of the program before starting of the initial phase of the program.
3. Choice of variable and constant name ; - Proper choice of variable and constant name tends to make the program more self documenting.


Algorithm in pdf

TO Studies in more detail please visit 
http://beust.com/algorithms.pdf
http://citc.ui.ac.ir/zamani/clrs.pdf


Types of Algorithm



  • Simple recursive algorithms.
  • Backtracking algorithms.
  • Divide and conquer algorithms.
  • Dynamic programming algorithms.
  • Greedy algorithms.
  • Branch and bound algorithms.
  • Brute force algorithms.
  • Randomized algorithms.

LIST