C

***Important News*** ***Important News***

!!! Auf vielfache Nachfrage hin, hier nun mein neuer MATLAB – Kurs, Beginn ab 15.07.2016 !!!

Dauer: 8 Wochen (8 Termine / 90 Minuten / 40 Euro pro Termin)

Beginn : 15.07.2016 — Ende : 02.09.2016, immer Dienstags oder Freitags von 19.30 Uhr – 21 Uhr, 4 U-Bahnstationen vom Alexanderplatz, sehr schöner großer Raum mit toller Aussicht über die ganze Stadt.

Die Unterrichtssprache wird Englisch sein, ich kann aber auch gut Deutsch sprechen und notfalls auf Deutsch erklären.

Inhalte des MATLAB-Kurses:

1. Einführung in die Programmiersprache MATLAB

– Introduction to MATLAB programming language

2. Datentypen in MATLAB

– Data Types in MATLAB

3. Kontrollstrukturen in MATLAB

– Control structures in MATLAB

4. MATLAB Definitionen und Funktionen

– Definition and using Functions in MATLAB

5. Graphiken und Diagrammdarstellung in MATLAB

– Graphics and graph depiction in MATLAB

6. Dateien und Informationsmanagement in MATLAB

– Files and information management in MATLAB

7. Immer Hausarbeiten und Übungen für die nächste Unterrichtseinheit

– Solving homework and exercises

Weitere Informationen findet sie auf meiner Website: www.kispow.com. Bei Fragen, bitte kontaktieren Sie mich unter: info at kispow.com und rufen Sie mich an: 1523 859 895 0

Liebe Grüße und bis bald in meinem Kurs!

Armin

***End of Important News*** ***End of Important News***

In this section, You can find contents and topics for C course that I will teach in the class. These topics are according to the academic and university syllabus and will start from elementary level(from scratch) to advanced level.

To make it easy learning as possible as I can even for those people who don’t have any knowledge about C language, I teach every chapter with many examples, explanations and in a step by step procedure. After finishing every chapter, participants will receive exercises(homework) and programming projects to do and in this way, they will increase their ability and skills in writing commands and codes in the course.

If you are living in Berlin and you are busy and don’t have time to come to my classes,it is also possible to have private courses.About the location, you can come to my flat or I can come to your flat or we can go somewhere else.

About the time and date : everyday(also weekends : Saturday and Sunday) in evening after 5 p.m. is possible.

For people who don’t live in Berlin,please refer to “contact us” tab and write “Skype learning” in the message,i will contact them soon.

If you are interested in this course, Please refer to “registration” tab and register soon due to class capacity is limited to 20 seats.
If you have any question, comment and suggestion about following chapters, please go to “Contact us” tab and send me your message,i will get in touch shortly.

1. Introduction to C

– Data types

– Variables

– Variable definition

– Value assignment to variables

– Constant definition

– Operators

– Calculation operators

– Calculation expressions

– Operator precedence

– relational operators

– operators “&” and “*”

– operator “?”

– Comma operator “,”

– “sizeof” operator

– “()” operator

– operator precedence in general form

– Type conversion

– Procedure of program creation

– Specify problem’s requirements

– Problem analysis

– Algorithm Design

– Algorithm implementation

– Program test

– Program keeping and update

– Procedure of Preparation and execution of program

– Homework and exercise

2. C program structure, input and output

– Data input – output

– Printing data using “printf()” function

– Display of program’s output page

– Clear the output page

– Movement of cursor in output page

– Printing numbers of “short” and “long” types

–  Determination of field length in “printf()” function

– Data input using “scanf()” function

– Input and output of characters

– Character reading using “getch()” and “getche()” functions

– Character reading using “getchar()” function

– Character writing using “putch()” and “putchar()” functions

– Homework and exercises

3. Iteration loops and decision structures

– Iteration structures

– “for” iteration structure

– Nested iteration loops

– Comma operator and “for” loop

– “While” iteration structure

– “do while” iteration structure

– Which iteration loop we have to use?

– Decision structures

– ” if ” decision structure

– ” else if ” decision structure

– Unconditional control transfer

– “Break” command

– “Continue” command

– “goto” command

– “Switch” decision structure

– Homework and exercises

4. Functions and memory classes

– Functions and structured programming

– Writing the functions

– Some notes about writing the functions

– How a function works?

– Methods of sending parameters to functions

-The functions which don’t return any value

– The functions which return a value

– Local and global variables

– Local variables homonymous with global variables

– Recursive

– Recursive states and stop in calculation of Factorial

– Memory classes and variables area

– Automatic memory class

– Register memory class

– Static memory class

– Local static variables

– Global static variables

– External memory class

– Difference between external memory class and global static memory class

– A note about function pattern

– Homework and exercises

5. Arrays and strings

– one dimensional arrays

– one dimensional array as function argument

– Arrays sorting

– Bubble sorting

– Search in array

– Sequence searching

– Binary searching

– Multi dimensional arrays

– Two dimensional arrays as function argument

– Initial value of arrays

– A note about arrays

– Strings

– Initial value assignment to strings

– Input – output in strings

– Reading of string with “gets()” function

– Difference between “gets()” and “scanf()” in reading of strings

– printing strings with “puts()” function

– Strings as function arguments

– String assignment(Copy a string to another string)

– Comparison between strings

– Concatenation of two strings

– An arrays of strings

– Homework and exercises

6. Pointers

– Pointer variables

– Pointer operators

– Pointers and variable types

– Operations on pointers

– Pointers assignment to each other

– Computational operations on pointers

– Comparison of pointers

– Dynamic variables

– Dynamic memory allocation

– Memory return to system

– Pointers and functions

– Function execution using its address

– Pointers and arrays

– Dynamic Array

– Pointers and strings

– Initial value assignment to pointers

– Pointers to pointers

– Some notes about pointers

– Arguments of “main()” function

– Homework and exercises

7. Structures

– Definition of structure type

– Definition of variable in structure type

– Access to structure elements

– Initial value assignment to structure

– Structures assignment to each other

– An array of structures

– Definition of structures as nested

– Structures as function argument

– Transferring the structure elements to functions

– Transferring structures to functions

– Pointers of structure

– Bit structure

– Unions

– An structure of union

– Name changing of data types by “typedef”

– Enumeration data types

– Homework and exercises

8. Files

– File types from information type point of view

– File organization

– Opening the file

– Closing the file

– Input -output characters

– Input – output of strings

– File as an input – output tool

– Troubleshooting in input – output of file

– File elimination

– Buffer

– Input – output with format

– Input – output of record

– Solving a problem through sequential files

– Random access to the file(random input – output)

– Solving a problem through random file

– Standard input – output devices

– Homework and exercises

9. Library functions

– Mathematics functions

– Characters functions

– String functions

– Dynamic memory allocation functions

– Functions for files and contents

10. Queue, Stack, Linking list and Tree concepts

– Queue

– Stack

– Linking list

– Characteristics of list knots

– Definition of linking list knot

– Definition of external pointers

– Creation of linking list knot

– Linking of linking list knots

– Insert a knot in linking list

– Elimination a knot from linking list

– survey of linking list

– Spiral list

– Bi-linking lists

– Definition of bi-linking list knot

– Linking of bi-linking list knots

– Insert a knot in bi-linking list

– Elimination a knot from bi-linking list

– Trees

– Binary tree

– Structure of binary tree knot

– Definition of tree knot

– Creation of tree knot

– Creation of binary searching tree

– Tree survey

– Inorder survey of binary tree

– Preorder survey

– Postorder survey

– Homework and exercises

11. Sorting and search methods

– Sorting methods

– Comparison of sorting algorithms

– A sample of changeable sorting method

– Selective sorting method

– Insertion sorting method

– Some suitable sorting methods

– Shellsort sorting algorithm

– Quicksort sorting algoritm

– String sorting

– Structure sorting

– Sorting of random files

– Searching methods

– Homework and exercises

12. Computer structure and interrupts

– Computer structure

– Registers of 16 bits processors

– General registers

– Segments

– Segment registers

– Index registers

– Control and state registers

– Control flags

– state flags

– 32 bits registers

– Addressing concept

– Introduction to interruptions

– Interruption types

– BIOS interruptions

– Introducing functions of some interruptions

– Interruption execution in C

– DOS functions

13. Memory models and keyboard management

– “Tiny” memory model

– “Small” memory model

– “Medium” memory model

– “Compact” memory model

– “Large” memory model

– “Huge” memory model

– Selection a suitable memory model

– Introducing a memory model to compiler

– Addressing to outside of a memory segment

– ” far ” key word

– ” huge ” key word

– ” near ” key word

– Recognition of keyboard keys

– Character attributes and their changes

14. Encryption and text compression

– Encryption types

– Substitution encryption

– Transposition encryption

– Bit manipulation encryption

– Data compressing

– Storing 8 characters in 7 bytes (bit compressing)

– Compressing by elimination of characters

– Code detection of encrypted texts

15. Library functions

– Graphic functions

– Non-graphic functions of display

16. Graphics

– Color production

– From which point, we have to start?

– Writing pixels

– line drawing

– Rectangular drawing and filling it out

– Circle and oval drawing and filling them out

– Graphics storing and recovery

– Copy and transferring graphics from one point to another point

– Rotation of Graphical shapes

17. Software engineering using C

– Program design

– Selection a data structure

– Make hidden of data and code

– Programs consist of several files

– Creating library

– Observing contents of library file

– GREP program

18. Interpreter design for programming languages

– Expressions

– Tokens

– How to produce expressions?

– BASIC language interpreter

– Assignment command

– PRINT command

– INPUT command

– GOTO command

– IF command

– FOR command

– GOSUB command

– Complete program for BASIC interpreter

19. Library functions

– Functions about date, time and other system functions

– Dynamic memory allocation functions

– Control functions

– Input – output functions

– Miscellaneous functions

20. Menu management

– Storage and Retrieval a part of display

– Creation of “popup” menu

– Creation of “popup” menu without BIOS interruption

– Creation of “pulldown” menu

21. C language relationship with Assembly

– Assembly commands in C language

– Using Assembly sub-routines in a C program

– Uppercase and lowercase of alphabets and variables

– Default segment

– Relationship between identifiers ” extern ” and ” public ” in Turbo C and Turbo assembler

– Translation of some C files and assembly

– Parameter exchange between assembly and TC

– Parameter forwarding from C program to assembly

– Using stack for parameter transferring

– Return values from assembly to C

22. Preprocessing commands

– Macro definition

– File attachment

– Conditional preprocessor commands

– Elimination of defined Macro

– Names of predefined macros

– Preprocessor command ” #line “

– Preprocessor command ” #error “

23. Some notes about programming

24. Connection with peripheral systems

Microsoft Visual Studio environment

– Installing Visual Studio software

– Running Visual Studio

– Writing and execution a sample program in Visual Studio

– Opening a project in Visual Studio