Fundamentals of Computer Programming with C#









Understanding JSON Schema

7 févr. 2022 specification is like learning to drive a car by looking at its ... There are a number of online JSON Schema tools that allow you to run ...
UnderstandingJSONSchema


OPENING BIM IN A NEW DIMENSION A simple OpenBIM standards

Two important OpenBIM standards are Industry Foundation Classes (IFC) and. BIM Collaboration Format (BCF) C-Sharp class to deserialize the JSON file.
caadria


Back-end development of mobile application for the collection of

5 nov. 2012 SQL database Visual Studio Web Service
FULLTEXT


C# 9.0 in a Nutshell Supplement

The (somewhat redundant) data contract serializer (XML and JSON). • The binary serializer (binary) To illustrate suppose we define the following class:.
cs ian supplement





SATO Printer API Reference Guide

3 mai 2021 to Floppy Disks CD-ROM
UM SATOPrinterAPI EN


Fundamentals of Computer Programming with C#

identifiers; variable names; method names; naming classes; Classes in C#. ... online on his personal blog at http://veskokolev.blogspot.com.
Fundamentals of Computer Programming with CSharp Nakov eBook v


REST API Developer Guide

You can use the HTTP ACCEPT header to select either JSON or XML or append json or xml to the Gets all online article fields
api rest


MyGLS API for system integration

5 nov. 2020 Response class GetPrintedLabelsResponse . ... Appendix E: Service parameter examples in JSON format . ... sample codes (C# PHP
mygls api





Learning Management System (LMS) Using C# ASP.Net and SQL

Arora Dipti


AWS Step Functions - Developer Guide

27 juil. 2022 Preprocess data and train a machine learning model . ... I want to return a JSON output from a nested state machine execution.
step functions dg


213304 Fundamentals of Computer Programming with C#

Fundamentals of Computer Programming with C#

(The Bulgarian C# Programming Book) by Svetlin Nakov & Co. http://www.introprogramming.info

ISBN: 978-954-400-773-7

ISBN-13: 978-954-400-773-7 (9789544007737)

ISBN-10: 954-400-773-3 (9544007733)

Pages: 1122

Language: English

Published: Sofia, 2013

Tags: book; free book; ebook; e-book; programming; computer programming; programming concepts; programming principles; tutorial;

C#; data structures; algorithms; Intro C#; C# book; book C#; CSharp; CSharp book; programming book; book programming; textbook;

learn C#; study C#; learn programming; study programming; how to program; programmer; practical programming guide; software

engineer; software engineering; computer programming; software developer; software technologies; programming techniques; logical

thinking; algorithmic thinking; developer; software development; programming knowledge; programming skills; programming language;

basics of programming; presentations; presentation slides; coding; coder; source code; compiler; development tools; code decompiler;

JustDecompile; debugging code; debugger; Visual Studio; IDE; development environment; bug fixing; class library; API; C#; .NET; .NET

Framework; types; variables; operators; expressions; statements; value types; reference types; type conversion; console; console input;

console output; console application; conditional statements; if; if-else; switch-case; loops; whole; do-while; for loops; foreach; nested

loops; arrays; matrices; multidimensional arrays; numeral systems; binary numbers; decimal numbers; hexadecimal numbers;

representations of numbers; methods; method invocation; parameters; recursion; iteration; recursive algorithms; classes; objects; fields;

constructors; properties; static fields; static methods; static constructor; static members; namespaces; exceptions; exception handling;

stack trace; catch exception; throw exception; try-catch; try-finally; using statement; strings; text processing; StringBuilder; escaping;

System.String; regular expressions; string formatting; OOP; object-oriented programming; access modifiers; public; private; protected;

internal; this keyword; const fields; readonly fields; default constructor; implicit constructor; overloading; method overloading; constructor

overloading; automatic properties; read-only properties; constants; enumerations; inner classes; nested classes; generics; generic types;

generic methods; text files; streams; files; StreamReader; StreamWriter; data structures; ADT; abstract data structure; linear data

structures; list; linked list; static list; doubly-linked list; array list; stack; queue; deque; trees; graphs; binary tree; binary search tree;

balanced tree; balanced search tree; B-tree; red-black tree; tree traversal; ordered balanced search tree; graph representation; list of

edges; list of successors; adjacency matrix; depth-first search; DFS; breadth-first search; BFS; dictionary; hash table; associative array;

hash function; collision resolution; set; multi set; bag; multi bag; multi dictionary; algorithm complexity; asymptotic notation; time

complexity; memory complexity; execution time; performance; collection classes; .NET collections; Wintellect Power Collections; OOP;

principles; abstraction; encapsulation; polymorphism; abstract class; interface; operation contract; virtual method; method overriding;

cohesion; strong cohesion; coupling; loose coupling; spaghetti code; object-oriented modeling; UML; use-case diagram; sequence diagram;

statechart diagram; activity diagram; design patterns; singleton; factory method; code quality; high-quality code; code conventions; naming

identifiers; variable names; method names; naming classes; code formatting; high-quality classes; high-quality methods; variable scope;

variable span; variable lifetime; control-flow statements; defensive programming; assertions; code documentation; documentation; self-

documenting code; code refactoring; lambda expressions; LINQ; extension methods; anonymous types; LINQ queries; data filtering; data

searching; data sorting; data grouping; problem solving; problem solving methodology; problems and solutions; generating ideas; task

decomposition; algorithm efficiency; writing code; code testing; border cases testing; borderline cases; performance testing; regression

testing; exercises; problems; solutions; programming guidelines; programming problems; programming exercises; good programmer;

efficient programmer; pragmatic programmer; Nakov; Svetlin Nakov; Software Academy; Bulgaria; Bulgarian book; BG book; Bulgarian C#

book; Kolev; Vesselin Kolev; Dilyan Dimitrov; Hristo Germanov; Iliyan Murdanliev; Mihail Stoynov; Mihail Valkov; Mira Bivas; Nikolay

Kostov; Nikolay Nedyalkov; Nikolay Vassilev; Pavel Donchev; Pavlina Hadjieva; Radoslav Ivanov; Radoslav Kirilov; Radoslav Todorov;

Stanislav Zlatinov; Stefan Staev; Teodor Bozhikov; Teodor Stoev; Tsvyatko Konov; Vesselin Georgiev; Yordan Pavlov; Yosif Yosifov, ISBN

9789544007737, ISBN 9544007733, ISBN 978-954-400-773-7, ISBN 954-400-773-3

Book Front Cover

FRQPHQPV

Contents .............................................................................................. 2

Detailed Table of Contents .................................................................. 5

Preface .............................................................................................. 13

Chapter 1. Introduction to Programming........................................... 69 Chapter 2. Primitive Types and Variables ........................................ 111 Chapter 3. Operators and Expressions ............................................. 139 Chapter 4. Console Input and Output .............................................. 165 Chapter 5. Conditional Statements .................................................. 195 Chapter 6. Loops ............................................................................. 211 Chapter 7. Arrays ............................................................................ 235 Chapter 8. Numeral Systems ........................................................... 265 Chapter 9. Methods ......................................................................... 293 Chapter 10. Recursion ..................................................................... 351 Chapter 11. Creating and Using Objects .......................................... 385 Chapter 12. Exception Handling ...................................................... 415 Chapter 13. Strings and Text Processing ......................................... 457 Chapter 14. Defining Classes ........................................................... 499 Chapter 15. Text Files ...................................................................... 615 Chapter 16. Linear Data Structures ................................................. 641 Chapter 17. Trees and Graphs ......................................................... 681 Chapter 18. Dictionaries, Hash-Tables and Sets .............................. 727 Chapter 19. Data Structures and Algorithm Complexity .................. 769 Chapter 20. Object-Oriented Programming Principles ..................... 807 Chapter 21. High-Quality Programming Code .................................. 853 Chapter 22. Lambda Expressions and LINQ ..................................... 915 Chapter 23. Methodology of Problem Solving .................................. 935 Chapter 24. Sample Programming Exam ± Topic #1 ........................ 985 Chapter 25. Sample Programming Exam ± Topic #2 ...................... 1041 Chapter 26. Sample Programming Exam ± Topic #3 ...................... 1071

Conclusion ..................................................................................... 1119

FUNDAMENTALS OF

COMPUTER PROGRAMMING

WITH C#

(The Bulgarian C# Programming Book)

Svetlin Nakov & Co.

Dilyan Dimitrov

Hristo Germanov

Iliyan Murdanliev

Mihail Stoynov

Mihail Valkov

Mira Bivas

Nikolay Kostov

Nikolay Nedyalkov

Nikolay Vasilev

Pavel Donchev

Pavlina Hadjieva

Radoslav Ivanov

Radoslav Kirilov

Radoslav Todorov

Stanislav Zlatinov

Stefan Staev

Svetlin Nakov

Teodor Bozhikov

Teodor Stoev

Tsvyatko Konov

Vesselin Georgiev

Veselin Kolev

Yordan Pavlov

Yosif Yosifov

Sofia, 2013

FUNDAMENTALS OF COMPUTER

PROGRAMMING WITH C#

(The Bulgarian C# Programming Book)

‹ 6YHPOLQ 1MNRY FRB 2013

The book is distributed freely under the following license conditions:

1. Book readers (users) may:

- distribute free of charge unaltered copies of the book in electronic or paper format; - use portions of the book and the source code examples or their modifications, for all intents and purposes, including educational and commercial projects, provided they clearly specify the original source, the original author(s) of the corresponding text or source code, this license and the website www.introprogramming.info; - distribute free of charge portions of the book or modified copies of it (including translating the book into other languages or adapting it to other programming languages and platforms), but only by explicitly mentioning the original source and the authors of the corresponding text, source code or other material, this license and the official website of the project: www.introprogramming.info.

2. Book readers (users) may NOT:

- distribute for profit the book or portions of it, with the exception of the source code; - remove this license from the book when modifying it for own needs. All trademarks referenced in this book are the property of their respective owners.

Official Web Site:

http://www.introprogramming.info

ISBN 978-954-400-773-7

GHPMLOHG 7DEOHRI&RQWHQWV

Contents .............................................................................................. 2

Detailed Table of Contents .................................................................. 5

Preface .............................................................................................. 13

About the Book ............................................................................................. 13

C# and .NET Framework ................................................................................ 17

How ǺȖ Read This Book? ................................................................................ 22

Why Are Data Structures and Algorithms Emphasized? ...................................... 25 Do You Really Want to Become a Programmer? ................................................. 26 History: How Did This Book Come to Be? ......................................................... 38

Authors and Contributors ............................................................................... 40

The Book Is Free of Charge! ........................................................................... 53

Reviews ....................................................................................................... 53

License ........................................................................................................ 63

Resources Coming with the Book ..................................................................... 65

Chapter 1. Introduction to Programming........................................... 69

In This Chapter ............................................................................................. 69

What Does It Mean "To Program"? .................................................................. 69

Stages in Software Development ..................................................................... 71

Our First C# Program .................................................................................... 75

The C# Language and the .NET Platform .......................................................... 79

Visual Studio IDE .......................................................................................... 93

Alternatives to Visual Studio .......................................................................... 104

Decompiling Code ........................................................................................ 104

C# in Linux, iOS and Android ......................................................................... 107

Other .NET Languages .................................................................................. 107

Exercises ..................................................................................................... 108

Solutions and Guidelines ............................................................................... 108

Chapter 2. Primitive Types and Variables ........................................ 111

In This Chapter ............................................................................................ 111

What Is a Variable? ...................................................................................... 111

Data Types .................................................................................................. 111

Variables ..................................................................................................... 123

Fundamentals of Computer Programming with C#

(The Bulgarian C# Programming Book) by Svetlin Nakov & Co. http://www.introprogramming.info

ISBN: 978-954-400-773-7

ISBN-13: 978-954-400-773-7 (9789544007737)

ISBN-10: 954-400-773-3 (9544007733)

Pages: 1122

Language: English

Published: Sofia, 2013

Tags: book; free book; ebook; e-book; programming; computer programming; programming concepts; programming principles; tutorial;

C#; data structures; algorithms; Intro C#; C# book; book C#; CSharp; CSharp book; programming book; book programming; textbook;

learn C#; study C#; learn programming; study programming; how to program; programmer; practical programming guide; software

engineer; software engineering; computer programming; software developer; software technologies; programming techniques; logical

thinking; algorithmic thinking; developer; software development; programming knowledge; programming skills; programming language;

basics of programming; presentations; presentation slides; coding; coder; source code; compiler; development tools; code decompiler;

JustDecompile; debugging code; debugger; Visual Studio; IDE; development environment; bug fixing; class library; API; C#; .NET; .NET

Framework; types; variables; operators; expressions; statements; value types; reference types; type conversion; console; console input;

console output; console application; conditional statements; if; if-else; switch-case; loops; whole; do-while; for loops; foreach; nested

loops; arrays; matrices; multidimensional arrays; numeral systems; binary numbers; decimal numbers; hexadecimal numbers;

representations of numbers; methods; method invocation; parameters; recursion; iteration; recursive algorithms; classes; objects; fields;

constructors; properties; static fields; static methods; static constructor; static members; namespaces; exceptions; exception handling;

stack trace; catch exception; throw exception; try-catch; try-finally; using statement; strings; text processing; StringBuilder; escaping;

System.String; regular expressions; string formatting; OOP; object-oriented programming; access modifiers; public; private; protected;

internal; this keyword; const fields; readonly fields; default constructor; implicit constructor; overloading; method overloading; constructor

overloading; automatic properties; read-only properties; constants; enumerations; inner classes; nested classes; generics; generic types;

generic methods; text files; streams; files; StreamReader; StreamWriter; data structures; ADT; abstract data structure; linear data

structures; list; linked list; static list; doubly-linked list; array list; stack; queue; deque; trees; graphs; binary tree; binary search tree;

balanced tree; balanced search tree; B-tree; red-black tree; tree traversal; ordered balanced search tree; graph representation; list of

edges; list of successors; adjacency matrix; depth-first search; DFS; breadth-first search; BFS; dictionary; hash table; associative array;

hash function; collision resolution; set; multi set; bag; multi bag; multi dictionary; algorithm complexity; asymptotic notation; time

complexity; memory complexity; execution time; performance; collection classes; .NET collections; Wintellect Power Collections; OOP;

principles; abstraction; encapsulation; polymorphism; abstract class; interface; operation contract; virtual method; method overriding;

cohesion; strong cohesion; coupling; loose coupling; spaghetti code; object-oriented modeling; UML; use-case diagram; sequence diagram;

statechart diagram; activity diagram; design patterns; singleton; factory method; code quality; high-quality code; code conventions; naming

identifiers; variable names; method names; naming classes; code formatting; high-quality classes; high-quality methods; variable scope;

variable span; variable lifetime; control-flow statements; defensive programming; assertions; code documentation; documentation; self-

documenting code; code refactoring; lambda expressions; LINQ; extension methods; anonymous types; LINQ queries; data filtering; data

searching; data sorting; data grouping; problem solving; problem solving methodology; problems and solutions; generating ideas; task

decomposition; algorithm efficiency; writing code; code testing; border cases testing; borderline cases; performance testing; regression

testing; exercises; problems; solutions; programming guidelines; programming problems; programming exercises; good programmer;

efficient programmer; pragmatic programmer; Nakov; Svetlin Nakov; Software Academy; Bulgaria; Bulgarian book; BG book; Bulgarian C#

book; Kolev; Vesselin Kolev; Dilyan Dimitrov; Hristo Germanov; Iliyan Murdanliev; Mihail Stoynov; Mihail Valkov; Mira Bivas; Nikolay

Kostov; Nikolay Nedyalkov; Nikolay Vassilev; Pavel Donchev; Pavlina Hadjieva; Radoslav Ivanov; Radoslav Kirilov; Radoslav Todorov;

Stanislav Zlatinov; Stefan Staev; Teodor Bozhikov; Teodor Stoev; Tsvyatko Konov; Vesselin Georgiev; Yordan Pavlov; Yosif Yosifov, ISBN

9789544007737, ISBN 9544007733, ISBN 978-954-400-773-7, ISBN 954-400-773-3

Book Front Cover

FRQPHQPV

Contents .............................................................................................. 2

Detailed Table of Contents .................................................................. 5

Preface .............................................................................................. 13

Chapter 1. Introduction to Programming........................................... 69 Chapter 2. Primitive Types and Variables ........................................ 111 Chapter 3. Operators and Expressions ............................................. 139 Chapter 4. Console Input and Output .............................................. 165 Chapter 5. Conditional Statements .................................................. 195 Chapter 6. Loops ............................................................................. 211 Chapter 7. Arrays ............................................................................ 235 Chapter 8. Numeral Systems ........................................................... 265 Chapter 9. Methods ......................................................................... 293 Chapter 10. Recursion ..................................................................... 351 Chapter 11. Creating and Using Objects .......................................... 385 Chapter 12. Exception Handling ...................................................... 415 Chapter 13. Strings and Text Processing ......................................... 457 Chapter 14. Defining Classes ........................................................... 499 Chapter 15. Text Files ...................................................................... 615 Chapter 16. Linear Data Structures ................................................. 641 Chapter 17. Trees and Graphs ......................................................... 681 Chapter 18. Dictionaries, Hash-Tables and Sets .............................. 727 Chapter 19. Data Structures and Algorithm Complexity .................. 769 Chapter 20. Object-Oriented Programming Principles ..................... 807 Chapter 21. High-Quality Programming Code .................................. 853 Chapter 22. Lambda Expressions and LINQ ..................................... 915 Chapter 23. Methodology of Problem Solving .................................. 935 Chapter 24. Sample Programming Exam ± Topic #1 ........................ 985 Chapter 25. Sample Programming Exam ± Topic #2 ...................... 1041 Chapter 26. Sample Programming Exam ± Topic #3 ...................... 1071

Conclusion ..................................................................................... 1119

FUNDAMENTALS OF

COMPUTER PROGRAMMING

WITH C#

(The Bulgarian C# Programming Book)

Svetlin Nakov & Co.

Dilyan Dimitrov

Hristo Germanov

Iliyan Murdanliev

Mihail Stoynov

Mihail Valkov

Mira Bivas

Nikolay Kostov

Nikolay Nedyalkov

Nikolay Vasilev

Pavel Donchev

Pavlina Hadjieva

Radoslav Ivanov

Radoslav Kirilov

Radoslav Todorov

Stanislav Zlatinov

Stefan Staev

Svetlin Nakov

Teodor Bozhikov

Teodor Stoev

Tsvyatko Konov

Vesselin Georgiev

Veselin Kolev

Yordan Pavlov

Yosif Yosifov

Sofia, 2013

FUNDAMENTALS OF COMPUTER

PROGRAMMING WITH C#

(The Bulgarian C# Programming Book)

‹ 6YHPOLQ 1MNRY FRB 2013

The book is distributed freely under the following license conditions:

1. Book readers (users) may:

- distribute free of charge unaltered copies of the book in electronic or paper format; - use portions of the book and the source code examples or their modifications, for all intents and purposes, including educational and commercial projects, provided they clearly specify the original source, the original author(s) of the corresponding text or source code, this license and the website www.introprogramming.info; - distribute free of charge portions of the book or modified copies of it (including translating the book into other languages or adapting it to other programming languages and platforms), but only by explicitly mentioning the original source and the authors of the corresponding text, source code or other material, this license and the official website of the project: www.introprogramming.info.

2. Book readers (users) may NOT:

- distribute for profit the book or portions of it, with the exception of the source code; - remove this license from the book when modifying it for own needs. All trademarks referenced in this book are the property of their respective owners.

Official Web Site:

http://www.introprogramming.info

ISBN 978-954-400-773-7

GHPMLOHG 7DEOHRI&RQWHQWV

Contents .............................................................................................. 2

Detailed Table of Contents .................................................................. 5

Preface .............................................................................................. 13

About the Book ............................................................................................. 13

C# and .NET Framework ................................................................................ 17

How ǺȖ Read This Book? ................................................................................ 22

Why Are Data Structures and Algorithms Emphasized? ...................................... 25 Do You Really Want to Become a Programmer? ................................................. 26 History: How Did This Book Come to Be? ......................................................... 38

Authors and Contributors ............................................................................... 40

The Book Is Free of Charge! ........................................................................... 53

Reviews ....................................................................................................... 53

License ........................................................................................................ 63

Resources Coming with the Book ..................................................................... 65

Chapter 1. Introduction to Programming........................................... 69

In This Chapter ............................................................................................. 69

What Does It Mean "To Program"? .................................................................. 69

Stages in Software Development ..................................................................... 71

Our First C# Program .................................................................................... 75

The C# Language and the .NET Platform .......................................................... 79

Visual Studio IDE .......................................................................................... 93

Alternatives to Visual Studio .......................................................................... 104

Decompiling Code ........................................................................................ 104

C# in Linux, iOS and Android ......................................................................... 107

Other .NET Languages .................................................................................. 107

Exercises ..................................................................................................... 108

Solutions and Guidelines ............................................................................... 108

Chapter 2. Primitive Types and Variables ........................................ 111

In This Chapter ............................................................................................ 111

What Is a Variable? ...................................................................................... 111

Data Types .................................................................................................. 111

Variables ..................................................................................................... 123