Programming – All you need to know in the beginning for your first days
Table of Contents - Programming
∘ PROGRAMMING LANGUAGE
∘ C PROGRAMMING LANGUAGE
∘ WHY C?
∘ ALGORITHMIC APPROACH
∘ FLOW CHARTS
Programming – A computer is basically a machine that performs three main tasks. It receives the input (INPUT), processes it (PROCESSING) and outputs a result (OUTPUT) from the processed data. A computer does not only work as hardware. Because without software, the hardware does not know what to do. It needs a set of commands to tell the computer hardware what to do.
We can call the commands that tell it what to do a program.
A program is a sequence of commands that specifies the execution of only the specified operations in accordance with a certain command and syntax structure.
A Programming Language is a set of definitions with formal rules that allow the computer to write the solution to a problem to be solved step by step and requires strict adherence to these rules.
Perhaps a shorter definition would be to say that it is an interpreter between you and the computer.
C PROGRAMMING LANGUAGE
The C Programming Language is a general-purpose, intermediate-level, structured programming language.
It was designed in 1972 by Dennis Ritchie at the Bell Telephone Laboratory.
It is used extensively in low-level system programs such as operating systems, compilers and debugs programs.
It was not originally conceived as a programming language and had a special purpose: To design the UNIX operating system (1000 lines of the UNIX operating system were written in C).
In short, by learning the Standard C language (ANSI C) you will be well prepared for all of these languages. In this course, programming in ANSI C is covered.
C is a powerful and flexible language. Being flexible means that you need to be more careful in the program you write. A forgotten sign may not cause a compiler error, but it will not run your program correctly.
With C you can write operating systems, create word processors or draw graphics.
C is a portable language. This means that any C code can be compiled in another compiler with little or no change. For example, C code written on Windows operating systems can be compiled on operating systems such as Linux, UNIX or VAX.
C is a structured language. C code is composed of subroutines called functions.
The sequence of operations specified in the program is not processed directly.
The computer has to process the program in machine language.
The programmer knows programming language, the computer knows machine language. Who will translate what the programmer means to the computer, that is, how will the communication between the computer and the programmer be ensured?
This translation is done by translation programs called compilers. In this way, the source program, which consists of a sequence of commands written in programming languages, is compiled into machine language.
In problem-solving, a careful and systematic approach should be the principle rather than jumping into the problem.
The problem should be thoroughly understood and broken down into as small pieces as possible.
An algorithm is a plan prepared to define a finite number of steps or operations related to the program to be prepared for the solution of a problem, one after the other, and thus reveal the path or method to be followed.
It must be sequential. Starting from a starting point, it should be able to end after a finite number of uncertain steps.
It should include all kinds of situations that may arise in relation to the problem.
It should be valid for the same type of problem.
An algorithm describing the path a person would take from home to work
1. Get out of the house
2. Walk to the bus stop
3. Wait at the bus stop for the bus in the direction you are going
4. When your bus arrives, get on the bus
5. Put your ticket in the ticket piggy bank
6. When you get close to your destination, walk backwards
7. Press the landing warning light
8. Get off when the bus stops
9. Walk to your workplace
10. Enter through the workplace entrance door
Algorithms can be expressed on paper in two different ways;
1. Pseudo Code (Rough Code or Pseudo Code or Pseudo Code) is a half programming language rule, half colloquial representation of an algorithm. This way of representation reflects the algorithm in general terms.
2. Flowchart is a visual/formal representation of the algorithm. It shows what needs to be done to solve the problem, from beginning to end, with symbols consisting of geometric shapes.
The visual representation of the algorithm in symbols or icons is called “flowcharts” or FLOWCHART.
The difference between flowcharts from the algorithm is that the steps are written in boxes in the form of symbols and the relationships between the steps and their direction are shown with arrows.
The preparation of flowcharts, which are the main documents of the program to be stored, is used for reasons such as making the problem-solving process easier to understand, controlling the workflow and facilitating the coding of the program.
In practice, for programs to be written, a general overview flowchart showing the main steps (sections) of the program is prepared first. Then detailed flowcharts are drawn for each step.
In its simplest form, it consists of rectangular boxes and arrows. Flowchart symbols are defined as ANSI (American National Standards Institute) standards and are used all over the world.