##### Stefan
Trusted teacher
##### Stefan
Trusted teacher
from44.47USD/ h

# Learn the basics of programming with C++ and dive into the vast world of coding!

The lessons will start with an introduction to a C++ program, then they will advance to simple data structures, operations, and basic algorithms. Moreover, the lessons will move to more advanced data structures such as 1D arrays, 2D arrays, lists, stacks, maps, and later on, to classes and objects.

There will also be tasks included in each lesson so that the newly introduced terms will be put into practice.

INTRODUCTION

1) Compilers

LEVEL 1 - NOVICE PROGRAMMER

1) Structure of a program / Input and output

2) Variables, Constants, Types

3) Operators

4) Basic algorithms I:
a) What's an algorithm?
b) Calculations (+, -, /, %, *, pow, sqrt)
c) Swap algorithm

5) Instructions:
a) Conditional instructions: if
b) Repetitive instructions: for, while, do-while

6) Basic algorithms II:
a) Maximum and minimum values from a list of variables
b) Digits of an integer
c) Divisors of an integer
d) Greatest Common Divisor
e) Prime Number Testing
f) Base switch (binary, decimal, etc)
g) Greatest Common Divisor of two integers

7) Documentation and debugging

LEVEL 2 - BEGINNER PROGRAMMER

1) One-dimensional arrays:
a) Definition and implementation
b) Reading and displaying of arrays
c) Inserting an element in an array
d) Deleting an element in an array
e) Sorting arrays
f) Searching in an array: sequential search, binary search
g) Merging of two arrays

2) Functions:
a) Definition and implementation
b) Functions with type and void functions
c) Recursive functions
d) Algorithms III (A combination of Algorithms I and Algorithms II, but using functions this time)
e) Applications

LEVEL 3 - INTERMEDIATE PROGRAMMER

1) Matrices (Two-dimensional arrays):
a) Definition and implementation
b) Reading and displaying of matrices
c) Square matrices and operations on matrices

2) Character sequences:
a) Definition and implementation
b) Predefined functions on character sequences
c) Applications

3) Struct data types:
a) Definition and implementation
b) Applications

LEVEL 4 - UPPER-INTERMEDIATE PROGRAMMER

1) Lists:
a) Definition and implementation
b) Applications

2) Stacks:
a) Definition and implementation
b) Applications

3) Queues:
a) Definition and implementation
b) Applications

1) Introduction to STL (Standard Template Library) and applications

2) Undirected graphs:
a) Definition and implementation
b) Traversing graphs
c) Partial graphs / Spanning subgraphs
d) Depth-First Search Algorithm
e) Paths
f) Cycles
g) Hamilton cycle
h) Hamilton graphs
i) Eulerian cycle
j) Eulerian graphs
k) Applications

3) Directed graphs:
a) Definition and implementation
b) Traversing graphs
c) Partial graphs / Spanning subgraphs
d) Depth-First Search Algorithm
e) Paths
f) Cycles
g) Hamilton cycle
h) Hamilton graphs
i) Eulerian cycle
j) Eulerian graphs
k) Applications

4) Graphs with costs:
a) Definition and implementation
b) Traversing graphs
c) Prim's Algorithm
d) Applications

LEVEL 6 - EXPERT PROGRAMMER

1) Introduction to Object-Oriented Programming (OOP)
a) Classes and properties of classes
b) Fields
c) Methods
d) Protection levels of classes
e) Applications

## Extra information

You must require:
- laptop / PC (preferably with Windows OS)
- a valid email address that you can use
- a valid Skype / Discord account for classes

## Location

Online via webcam

## General info

Age: Children (7-12 years old)Teenagers (13-17 years old)Adults (18-64 years old) BeginnerIntermediateAdvanced 60 minutes90 minutes120 minutes English, Romanian

I have been teaching Mathematics, English and Programming to students and children since 2017 and I am constantly on the lookout to share my programming knowledge as I believe that this is one of the most vital and practical skills anyone can possibly acquire. Therefore, I want to dedicate my time to people who want to learn how to code. As a university student, I am eager to learn from my students by teaching what I have known since 2012. The lessons that I provide are fit for any type of student, regardless of their experience with programming. My goal with these lessons is to make programming easy to understand, to give confidence in people that they can create anything by simply understanding basic notions of coding and to open doors to paths that they may not even heard about.
Learning is a fun activity, especially with someone who is eager to offer lots of help and that is why I am here.

## Education

1) Theoretical Highschool “Mihail Kogalniceanu” | September 2015 – June 2019
• Romanian Literature Baccalaureate – 9.2 / 10.0
• Mathematics Baccalaureate – 10.0 / 10.0
• Informatics Baccalaureate – 8.8 / 10.0

2) Royal Holloway University of London | September 2019 – 2022
• BSc Computer Science and Information Security

## Experience / Qualifications

1) IELTS | May 2018 – 2020
• 7.5 - Overall Band

2) FiiPractic Training Programme Back-End Development (April 2018) - 2nd place
Skills acquired:
- Developed my first API using .NET
- Developed skills in working with Git

3) FiiPractic Training Programme Back-End Development (April 2019) - 3rd place
Skills acquired:
- Improved my skills in working with Git
- Developed my second API using a different approach with .NET

4) FiiPractic Training Programme Game Development Development (April 2019) - 1st place
Skills acquired:
- Improved my skills in working with Git
- Developed a complete 3D Unity Game in 2 weeks using only hand written code
- Used Blender to create my own objects for my personal project

5) Summer School Staff – Chelsea Independent College (July 2019 – August 2019)
Skills acquired:
• Interactive experience with students, and behavior management
• Assumed the responsibility to take care of the students during the scheduled activities
• Assumed the responsibilities of keeping the students safe outside their activity hours
• Assisted Computer Science teacher with teaching basic Computing & Engineering skills such as: building a robot, coding a simple game using JavaScript, understanding the simple tasks behind the security of internet routers and AI

6) Translator for an American Medical Team – Romania, Vaslui, Negresti (Summer 2012, Summer 2013)
Skills acquired:
• Eased the communication between medics from the United States and sick people from poor villages
• Taught English to children from poor villages, as well as fun Mathematics

7) Voluntary Activity Staff - Romania, Vaslui, Vaslui (July 2017)
Skills acquired:
• Supported educational activities aimed at fostering and harnessing the potential of children in the areas of Computer Science and English
• Improved communication in English
• Improved teaching skills

The more detail, the better.
Ex. "Hi, when are you available to meet for a lesson?"

### Availability of a typical week

(GMT -04:00) New York
MonTueWedThuFriSatSun
0
1
2  Monday at 2:00  Tuesday at 2:00  Wednesday at 2:00  Thursday at 2:00  Friday at 2:00  Saturday at 2:00  Sunday at 2:00
3  Monday at 3:00  Tuesday at 3:00  Wednesday at 3:00  Thursday at 3:00  Friday at 3:00  Saturday at 3:00  Sunday at 3:00
4  Monday at 4:00  Tuesday at 4:00  Wednesday at 4:00  Thursday at 4:00  Friday at 4:00  Saturday at 4:00  Sunday at 4:00
5  Monday at 5:00  Tuesday at 5:00  Wednesday at 5:00  Thursday at 5:00  Friday at 5:00  Saturday at 5:00  Sunday at 5:00
6  Monday at 6:00  Tuesday at 6:00  Wednesday at 6:00  Thursday at 6:00  Friday at 6:00  Saturday at 6:00  Sunday at 6:00
7  Monday at 7:00  Tuesday at 7:00  Wednesday at 7:00  Thursday at 7:00  Friday at 7:00  Saturday at 7:00  Sunday at 7:00
8  Monday at 8:00  Tuesday at 8:00  Wednesday at 8:00  Thursday at 8:00  Friday at 8:00  Saturday at 8:00  Sunday at 8:00
9  Monday at 9:00  Tuesday at 9:00  Wednesday at 9:00  Thursday at 9:00  Friday at 9:00  Saturday at 9:00  Sunday at 9:00
10  Monday at 10:00  Tuesday at 10:00  Wednesday at 10:00  Thursday at 10:00  Friday at 10:00  Saturday at 10:00  Sunday at 10:00
11  Monday at 11:00  Tuesday at 11:00  Wednesday at 11:00  Thursday at 11:00  Friday at 11:00  Saturday at 11:00  Sunday at 11:00
12  Monday at 12:00  Tuesday at 12:00  Wednesday at 12:00  Thursday at 12:00  Friday at 12:00  Saturday at 12:00  Sunday at 12:00
13  Monday at 13:00  Tuesday at 13:00  Wednesday at 13:00  Thursday at 13:00  Friday at 13:00  Saturday at 13:00  Sunday at 13:00
14  Monday at 14:00  Tuesday at 14:00  Wednesday at 14:00  Thursday at 14:00  Friday at 14:00  Saturday at 14:00  Sunday at 14:00
15
16
17
18
19
20
21
22
23
from \$44.47Online via webcam

### Good-fit Instructor Guarantee

If you are not satisfied after your first lesson, Apprentus will find you another instructor or will refund your first lesson.

### Online reputation

• Instructor since September 2020
• Phone number verified

### Availability of a typical week

(GMT -04:00) New York
MonTueWedThuFriSatSun
0
1
2  Monday at 2:00  Tuesday at 2:00  Wednesday at 2:00  Thursday at 2:00  Friday at 2:00  Saturday at 2:00  Sunday at 2:00
3  Monday at 3:00  Tuesday at 3:00  Wednesday at 3:00  Thursday at 3:00  Friday at 3:00  Saturday at 3:00  Sunday at 3:00
4  Monday at 4:00  Tuesday at 4:00  Wednesday at 4:00  Thursday at 4:00  Friday at 4:00  Saturday at 4:00  Sunday at 4:00
5  Monday at 5:00  Tuesday at 5:00  Wednesday at 5:00  Thursday at 5:00  Friday at 5:00  Saturday at 5:00  Sunday at 5:00
6  Monday at 6:00  Tuesday at 6:00  Wednesday at 6:00  Thursday at 6:00  Friday at 6:00  Saturday at 6:00  Sunday at 6:00
7  Monday at 7:00  Tuesday at 7:00  Wednesday at 7:00  Thursday at 7:00  Friday at 7:00  Saturday at 7:00  Sunday at 7:00
8  Monday at 8:00  Tuesday at 8:00  Wednesday at 8:00  Thursday at 8:00  Friday at 8:00  Saturday at 8:00  Sunday at 8:00
9  Monday at 9:00  Tuesday at 9:00  Wednesday at 9:00  Thursday at 9:00  Friday at 9:00  Saturday at 9:00  Sunday at 9:00
10  Monday at 10:00  Tuesday at 10:00  Wednesday at 10:00  Thursday at 10:00  Friday at 10:00  Saturday at 10:00  Sunday at 10:00
11  Monday at 11:00  Tuesday at 11:00  Wednesday at 11:00  Thursday at 11:00  Friday at 11:00  Saturday at 11:00  Sunday at 11:00
12  Monday at 12:00  Tuesday at 12:00  Wednesday at 12:00  Thursday at 12:00  Friday at 12:00  Saturday at 12:00  Sunday at 12:00
13  Monday at 13:00  Tuesday at 13:00  Wednesday at 13:00  Thursday at 13:00  Friday at 13:00  Saturday at 13:00  Sunday at 13:00
14  Monday at 14:00  Tuesday at 14:00  Wednesday at 14:00  Thursday at 14:00  Friday at 14:00  Saturday at 14:00  Sunday at 14:00
15
16
17
18
19
20
21
22
23
from \$44.47Online via webcam

### Good-fit Instructor Guarantee

If you are not satisfied after your first lesson, Apprentus will find you another instructor or will refund your first lesson.