C++ from Beginner to Expert | Arkadiusz Włodarczyk | Skillshare
Play Speed
  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x
67 Lessons (14h 53m)
    • 1. Introduction

      3:21
    • 2. What is programming, compiler. Installing IDE

      15:40
    • 3. Basics of programming

      16:35
    • 4. Variables

      17:00
    • 5. Types of variables

      18:54
    • 6. Downloading data from input

      4:11
    • 7. Arithmetic and Assigment Operators

      14:16
    • 8. Relational Operators

      6:21
    • 9. Logical Operators

      9:33
    • 10. Bitwise Operators

      20:32
    • 11. Contidtional Statements

      14:26
    • 12. Switch

      9:15
    • 13. Conditional Operator

      5:02
    • 14. Calculator - exercise

      15:11
    • 15. Arrays

      16:35
    • 16. Multidimensional Arrays

      7:44
    • 17. for

      12:02
    • 18. while and do while

      10:15
    • 19. exercises, nested loops

      10:15
    • 20. break and continue

      13:11
    • 21. pre-function Scope of Variables

      10:38
    • 22. Functions

      29:13
    • 23. Overloading functions

      12:46
    • 24. Loops and functions - exercises

      20:13
    • 25. Data Validation - exercise

      21:26
    • 26. Enum Type

      11:18
    • 27. Reference Variables

      9:49
    • 28. Reference Variables in functions

      8:33
    • 29. What are pointers?

      19:38
    • 30. Name of array - Pointer

      13:22
    • 31. Dynamic allocation of memory

      22:15
    • 32. Strings and a pointer on a char type

      20:43
    • 33. Functions and pointers

      17:26
    • 34. Lottery - pseudo-random numbers generator

      17:50
    • 35. Type Casting

      6:29
    • 36. Creating project, external execution of program

      17:45
    • 37. Preprocessor directives, Multi-file project

      15:08
    • 38. Data Structures and Pointers

      11:23
    • 39. Classes

      31:12
    • 40. Static variables and functions

      10:40
    • 41. Constant classes and methods

      8:02
    • 42. Friend functions

      4:17
    • 43. Friend classes

      6:37
    • 44. Copy constructor

      11:48
    • 45. Convert constructor and overloading operators

      14:43
    • 46. Inheritance between classes

      28:02
    • 47. Polymorphism, virtual functions, abstract classes

      19:47
    • 48. Virtual destructor

      3:40
    • 49. Function templates

      15:25
    • 50. Class templates

      20:36
    • 51. Exceptions

      14:54
    • 52. Namespaces

      14:13
    • 53. Streams - what is input and output

      6:27
    • 54. How to open and close files

      6:27
    • 55. File opening modes

      13:24
    • 56. Stream's error flags

      17:41
    • 57. Reading position pointer - seekg and tellg

      8:53
    • 58. Writing position pointer - seekp and tellp

      3:55
    • 59. Extracting characters from files

      15:26
    • 60. Comparing content of two files

      25:11
    • 61. Put - loading characters from cin stream directly to file

      4:17
    • 62. Peek - peeking characters without extracting

      3:42
    • 63. Putback - returning extracted character on stream

      2:38
    • 64. Write - writing bytes to file

      5:42
    • 65. Gcount - counting characters from last operation

      3:35
    • 66. Mini database

      42:03
    • 67. What's next?

      3:54
108 students are watching this class

About This Class

Save your precious time by attending this course. You will learn how to program in a fast and easy way!

The total length of the course is over 12 hours! You will learn theory and you will also gain lots of practice. During the course we write many programs.

All this is presented by a young man who shares his knowledge, so the language used is accessible for everyone.

The course is designed for the people who don't have any knowledge about the programming. It doesn't matter if you have never written any programs or you have no idea about programming... After my course all this will change. You will bust the myth that programming is a difficult thing only for the few!

After this course you will be able to use the advanced components of C++ language.

Over 200,000 students over the world have enrolled my courses and most of them are satisfied with the way I teach. You will also be satisfied with this class. 

If you have any questions regarding the topics covered in this course after watching videos, please feel free to ask. I'm always happy to help.

Transcripts

1. Introduction: Hello, my friend, welcoming the video calls Seacoast plots. This course is divided into over 50 lessons and is over 12 hours long and it's recommended for bagging us after discos who will become expert in the C plus plus language. You might be asking yourself Who is the altar off this coast? Well, my name is our catalogue Adopt trick and I really, really love teaching other people. I am the altar off 26 very popular video courses in Poland, and I also created a few courses about the C plus plus and Web development in English. I put all my heart integration of video courses and I want them to be understand able for everyone. All the subjects are shown to you the easiest possible way. OK, it's not about me discourses about the c++. So what you will know after discourse. Well, after this goes, you will be able to use the advanced compliments of the C plus plus language. You will know cementing of the c++ semantic means meaning of wars in the C plus plus, you will be fluent in the sea prospers language, and you will have solely basics, allowing you to create whatever you want. Off course, you will know the advanced components also, but sold it. Basics is the most important thing. If you want to become very good programmer. Okay. If you have basics, you can create whatever you want. You can read libraries, and then everything is gonna be easy here. I type things that you will exactly learn this course. So you know, basics like variables have toe insel i d. How to use it. What is a compiler and other things like that? Operators condition, actions, a raise, loops, functions, references, pointers. I deeply discussed pointers. After this goes, there is no chance you have problems with them anymore. Project creation structures and class is object oriented programming templates, exceptions and name spaces. So, you know, totally fully c++ syntax. Okay, Now you might be asking yourself Why should you choose Michael's right? Because I have enormous experience in teaching other people and I do a different way. I always explain things from scratch. I do not omit anything. If you don't believe me, you can watch for free a few first video so we can check if you like the way I teach other people. I even in this the world at least free videos before buying anything, I'm sure that you will be satisfied with my course after completing it. And, well, it's really cheap comparing to world you can achieve after these cars. After this course, you will have knowledge. And what is the most important ability that we lead? You read C plus plus language. If you know how to read c++ libraries, you can then create whatever you want. If you have any questions, feel free to ask them. You can send me a message. I will respond as fast as possible. Okay, you can ask me about programming, but take in mind that I am not making the homework's. But I would be happy to give you hands. Okay, thank you very much for watching the first video and have a good day. 2. What is programming, compiler. Installing IDE : Hello, everybody. We're coming to the first lecture in the upcoming videos. I will teach you the C plus blast language. I would try to cover all the subjects about the c++ from the beginner to the expert level. So after you watch all my videos, you should be able to create your own programs. But before we start the school adventure with programming, I want to explain your what? The programming Gays first, Let's focus on the world language king. What is language? Have you ever wondered what language means? Well, let's make a company reason. Right now I am talking to you and I am using what? What kind of language and using English language. Right? So we are using some kind off coat toe communicate with each other, right? And that, I think, is called language. We understand each other on Lee Onley because we both know we both understand this coat and discovered in our situation is made off water off words, right? And each off that word has some kind of meaning which we all understand. That's why were able to communicate with each other. But unfortunately, there is a problem with computers when we look at our PC. So at our pieces personal computers, we can say to the PC to him something like, Hello? Pc, Drink me some beer, right? And, well, if the computer understood it, and probably if our computer had some kind off Lex that would allow him to move, he would bring it right. Mm. Okay. There is some small problem here. He doesn't understand it, as you can see, because I am well, not drinking it be right now. So we need to talk to a computer with a language that he can understand, right? And what is that language? These languages called programming language. Right. So programming means creating understand able instructions, orders that will be followed about our our computers. They must be full, right? The instructions that you give computer are full. That's how it works. So if the instruction must be understandable, we need to talk in the language that our PC is stalking in and dead language that our computer know and understand is created off numbers. So it's like the 01011 on the result. Much, much, much more zeros and ones. But what is it? Zero and one that subject is connected with electricity are a computer can read only two pulses, zero and one and every message everywhere. Every instruction to descend to our computer, uses different sets off the zeros and wants Whoa, that would be hard to talk to him using zeros and ones, right? And as you might have probably noticed already, it will be probably impossible, right? Can you impacting writing a code using zeros and ones? It will be hard for us to use the language. And for sure, it would take a lot off time to create any anything. And because of that, people created something between the computers, language and our language that we use every day like, for example, English. Well, to be honest, many line languages like that have been created, but we will focus on something goddess called C plus Plus in these scores now, using the C plus plus language, we could write, for example, something I get characters okay, and what the instruction could mean to our computer. Well, it could mean that we want to get characters, get characters from some kind off input. But as you can see, this is still not working right we type instruction that could be understand able by our computer. But it's not working. Why is that? So because this is still not a language that our computer uses right? It's not a sequence of zero and ones, right? This is the language that he uses. So we need something that will translate the C plus plus language instruction like, for example, this one into these zero in one's. Okay, and that Think that translates. Did It's called a compiler. Okay, compiler. So we have just learned a new word and the process off translating that languages. Okay, so from the instructions into Zero and ones, it's called Compilation, and we use it. So compilation. And we use it for eat, a program that this called Compiler, gets going to download compiler in order to compile a cult. Right? So when you compare the coat a program using a compiler, you are doing many things in behind the scene like, for example, also checking the Syntex off our Langdon's language. So it's checking. If we hadn't made animistic, it's linking libraries. It's optimizing our program and many other things. But I don't want to go into these details right now, right? You just need to know that compiler for now just translates, right? The coat, the instructions into the zeros and ones in order to make them work. So we need a compiler, right? Without do it with women won't be able to programs those. So to start our adventure with programming, we also need an editor that will had us write programs in the C plus plus around language. Right? Because we want right our programs in Google's search engine, right. Do you want to write programs in the web birth of your entire life? No. Right. So it will be great if that editor also had many additional features that we have us write programs like, for example, showing instantly where the Air Aries or it could also colorize our programs. So it would be easier to read. And that editor with all the features and a connected to a compiler. Okay, so we've compiler pre installed. It's cold. I the e. And it is a short for integrated development. Environmental came, so I d e is some kind off, um, set off programs inside of the editor right there. Set off programs that will help us write new programs and after comply compiling this programs, we can run them on our PC. So it's time to download id'ing and well, Donald I d they discolored coat books. It is a free one. It's good for beginners. So we will be using it again. You can use any other i d. But keeping minder might be a small difference. Set start. You know how to greet the problems so on. But do not worried. These differences are pretty small and you will be surely able to manage them. I highly recommend visual studio code. Okay, this is also very good. I d for Mark. I also recommend X killed. Okay, but we have focused on cold books. So let's download. So in order to download code law is going to go on coolers website Go to the town, would stop and click on the download The binary release. As you can see here, we can find versions for windows. Right? And here, if you are using leanings remark, you confined also could looks forward for these systems, Not what I would say is very, very important. Because if you choose by a mystic these think here this link here. You're well, Programs were will not compile. Why? Because even do not install something. What is called com Pilot that I talked about before. Your programs won't be able to be translators. Right. So here is something What is called mean, GW. Okay. And this is a compiler which is included in this set up. OK, and we need to chew thes thing here. Okay, that one with Minjae double. So don't choose these days of days link. Choose the link with the men G w. And then we click on these or this in order to download our cold books. So the cold look looks thes being downloaded right now. And now it's time to insulate, right? So let's click on it. Next. We need to read license. Of course. I agree, Onda. As you can see here, we have got mean GW compiler suit. So we have got a compiler included. It's correct care. Let's get next install. I have already installed. So it asked if we want to, you know, keep existing folder. I just I would just override everything. It will take some time to install it, right? It depends on how fast your computer. Aries. Okay, that's Ron our program. No, I need Teoh properly Said it in our recording room. We have got now here the I D integrated development environment. And in this environment, we can develop, you see, integrated those our own programs like to continue up our own programs at school and how to do it. Well, we need to first create a fine. So let's go here. Five new firing you empty If I And now we can right here. Account. I will write it now as fast as possible so you won't lose your precious time. I will explain all that. Go later. Okay. Very simple program right now so we can just check if it's working. So let's single the library. Let's say they were using the proper nine space, and now we have to use the main function. And let's send something to the output so we can see something like, let's welcome people. Example Hell award like that. Okay. And now we need to save the fire in order to save the fire. I can go here, fire and here, say five or use the shot Could control. Plus s I'm using the shortcut. And now it's very, very, very important here. I have got the name off my file and it's very important to not safe by default this as a C language. Okay, because we are not programming in the C language programming the C plus plus language ive you buy me steak to note at here, C plus plus, you have to model type. You remember about it. I'm telling it five times because people make me see here most time. And when you type the sit hospice Plaskett you are making sure you were compiled this program as a C plus plus program. Okay, let's save Zap. You're safe, buff. Let's save it. Well, we could, you know, call. It's a bit better not entitled one like first program. Let's save it. And as you can see now we have get our coat color rise and we can run it. Okay, we can Ryan to using the built and run option here. Here, it means that it's gonna built and then run the program. Signees is gonna compile it because the compiler is hidden behind his bottle right now back . And as you can see here, we have got color world and some kind of additional message that is headed by our compiler . Okay, but hey, we just compiled our first program. Can ride it right off course. We I will explain everything that you see here better in future. Do not worry for it now. I just want to show you in this lecture how to comply things, how they work. Okay. Normally, if you're using either I d. You might have toe stop your program manual. Remember, toe add them at the end. Distraction like that system pose. And you have to probably noble always include a library here that this called like that. Okay, just do it. And this will rock work. If you cannot use the system, you might need to add something like that. Get character. And also this program will stop. Sometimes you need to also at you and and here return zero. Ok, we do not need to add it here. We will not confuse. I don't so I would not confuse you anymore. Okay, so let's just because it is the symbols program the most simple program ever possible to create. I will explain every section very, very profound, very deeply right in the next lesson. So do not worry right now. I would also like to focus on you looking at one very important feature in this idea. Easier. I said something about the compile, right, And this compiler is hidden keeping, and it's translates C plus plus language into the +0111 Right, So into the computer language. And it also means that if I make enemy states like, for example, that well, things words I don't know. What does it mean, man? Well, it doesn't exist in my language. It doesn't exist in the C plus plus language, right? So it will be probably hard to translate it when I click here. As you can see, our program did not drown. We have got an arrow. And the coughing about this idea is that when I click here, I would be instantly shown where this error is. And also, I can read here the arrow message that war work worth was not declared in this scope. This, uh, this place, right? What the hell is this? It is just I don't know how to react on this. You have to just deflate it and then run again the program and it's gonna work. What? Work? Right. So as you can see, everything is working. Now I'm inviting you to mark watch my other lectures. If you have any question as always, feel free to ask. 3. Basics of programming: Hello, everybody, on the second lesson Today we're going to lend basics of building programs. So this lesson is really, really important in orderto understand program. Let's hide our manager on the left side because we don't need. Right now I will click View and manager. Okay, now let's create a new fire counter chief blocks and and stands here for new. You have just created the fire, which is called salts Cult. Let's save it. That's just at u dot CPP. Remember about adding that city P here because you might have problems, problems compiling your program. Seen the cold looks if you don't add the CPP here because the default option for saving is the sea fight. No, the c++ So remember about adding that extension here. Okay, we're saving it. And now I would say something very, very important. We need toe, understand? We need to know and always remember that we knew right programs were doing it for our PC exactly. For our compiler, which will interpret things that we wrote. And they have to remember that our prissy without us is a wrist hippie that's through through I'm not lying. PC won't be able to get anything. If we make any heroes computers are doing on the debt, what we want them to do, You are sending them instructions, and they have to do them. So if you make any heroes with your writing programs, remember, that's only your fault. You know the computer. So we want to write programs. Well, we have to fill and things like a compiler. So since the day we are going to be going by this, okay, almost every program is going to be read by our compiler from the top to the bottom. So if I write here something, I, uh Let's assuming some kind of instructions. Orders for computers. All right. And we can read coat from any place we want. We can jump from one line to another line. We don't need toe read line by line, right? We don't need toe do anything. It's up to us. Would we do? But death cult would be read by the compiler from the top to the bottom line by line. Okay. And why I'm saying this. Why is it so important to understand programming? Because, as I said, area, we need to start thinking like a compiler know the humor. It would later help us avoiding Mr Okay, Let's stop doing some serious stuff. If you want to write anything out to the users of our programs or respond to the actions, went to use mostly something. Would this cold libraries? When you talk about library in programming, we are thinking about manager tools that we can use toe achieve our goals. We will explore many of the tools in the upcoming lesson, so that does a some kind of toys that we can play with so they will have us creating our programs faster. Sure thing is that also, we can create libraries, but the topic is had bit advance. There are many libraries that we can use for free. Some of them are wounded. Website. You can find many others using served in giant like, for example, Google. OK, but how to use the library? You want to use the library, we have to write hash and the worked include, which means we are adding library, then at angled rockets, less then greater than signs between angle brackets. So here we can use the name of our library. We will use I O Stream, which stands for input output stream. Well, it's noted that if you want to note something in our program well, in our source goat and we don't want it to be interpreted by compiler, we can use the Coleman signs, which at our allow us to comment our program, slash, slash And I can now writing something like I owe stream stands for input out boot three. And this thing is one like common. So everything behind. So everything behind here and everything in next line. So, for example, here deadline is again interpreted by the compiler. Okay, there is one more way off using comments slash us a risk, which is that small star here. Right? And here we can write many comments in many lines. And now, if you want to close that comment, we have to use the asterisk and then beck slash Now, as we can see, that text is not being called by our I d Okay, s so that way it let us commenting men and I insert waas. But you might be like, Hey, why do I need things like that? Well, comments are really very useful. It's good idea to come And what our code is doing. Believe me, when you start writing programs that will be over 200 lines long or even longer, you won't be able to memorize everything. You might also write programs and leave them for about wound three moons or maybe longer, because you will have, for example, holidays Or you just want toe. Need to look into your workout when you come back to your coat to upgrade it or maybe extended a bit. Believe me, without Commons writing knife. Okay, So in situations like that Commons, we have you remind what you had. Programs also remember that when you start programming with others, they won't be able to understand everything that you wrote. So it's good idea to make it easier for them because they will be your teammates. Northern names. Okay, let's go back to the library that we have just included. Let's remove that comment here. Also, eso let's break you and this is basic c++ library, which and all of us, as it say's that it stays right. Fault, um, too input, which means putting something into our program and output, which means putting something out off our program. Okay, Now, I will create something Woody's called function arc. Here we have function and what is function. Function, as the name suggests, is something that is cool. Hated the function, right so thes function. As we can see, it's called Like what? Like Maine. This function goal is to be involved, executed, always as first. Always this main, this special function that needs to be created in every program. Here we have also parent disease rockets right, which are hit here to declare parameters. But we'll talk about it later. Not now. After it, we have to curly brackets. First, they're paying one, and it is the beginning of our function and the last Caroline Rocket closing one. And it is the end, our function. Okay. And that thing between that carry markets, um, it's called the boulder off the function our program. We start invoking instructions orders from this function starting from there, opening Carla bracket, and it would finish on the closing car car of the rockets. So I write instruction in the body off our function, see out less than signs called This is Test and the single and the dead instruction is order for our PC, and it off course must be followed. Let's figure out what that the destruction is doing. As we can see here, we have got something like, See out, see out stands for Cohn Soul output. Okay. And after it, we have to angle brackets. Let's then sign As we can see, that signs are pointing toward your direction to this. See out, right, The council old output. So it means that everything after that angle brackets we be sent to the council council output. In our situation, it will be what it will be. The text inside quote signs, quote science, our resent for sequence off characters which are shortly called strings. So since now, every text will be called by us streaks. Okay, at the end off every instruction, we have to add Sam calls. And why is that so? Well, we can write programs also like that. For example, it's still mm, for example, deadly right. Ah, we can ride it another way. For example, we can do need this very moving that white characters. We can do it dead whales. So it can be almost in one line that here we have a common soul. It's not working for example, I removed it coming for a second and, as we can see, weaken almost right. Everything in one line. And if you had more than one section, it will be hard for our compiler to decide what to do, right? Okay. Mm. And that semi colons at the end off instructions allows the compiler toe interpret our programs always right. And as you have probably already noticed, white characters like space top enders are note interpreted by competitors. It means we showed right programmes. Clearly, which means like that. Just look, how do I write programs during all lessons and try to do it the same way? So your code will be easy to understand for you and other people. Our program steel won't be able to run now because that see out, I think, is insight and name space. What it's names. But what names Base is the spice. Well, here we can store functions and other things connected with programming, and we can name disperse. That's why it's called names because it's a space which has a name. Okay, nay spaces are used in order to avoid situations where, for example, to programmers are going to make to programming elements with the same names. If you want to use that, see out a lemon, you have to say from which names but space. Is that a lemon? So you see, I see out east from the STD name space, which sends for standard. Now we have toe at to Colon's in orderto use programming elements from from that space. Now our program with the combine, as you can see, is working well. However, using that STD nice place every second for each of lemon likes the out from this from that space might be a bit tiring, right? That's why we can say after including Io Stream something like using name Space Esty de Now we don't need to use that, Thank you. And our program, as you can see, is still working. Well, okay, that's all. In this lesson, all that information's here. We're total basics off C plus plus language. If you have any questions, feel free to ask on our port on the video dash courses dash online dot com website. Thank you, everyone 4. Variables: Hello, everybody. Today we're going to talk about vory booze in the C plus plus language. That's know that in comments, slash and now very rare labels. OK, let's start this topic. Not from what ISS for able, but why do we need fair Ebel's, for example? I want to send something to the council. Are that's right, see out to angle brackets for Sen Mikel's. So it means that I want to send a number four. Do they comes a lot But hey, what if I wanted to start this number somewhere Because I would like to make some operations on the number or even changed a bit. Look, right now we have the number four here, right? And after that instruction is invoked, we can't do anything with the number and more so we can do anything here. We've dead number here, so this number disappears. We don't have any re ference to the number. That's why we need variables. Very able, as the name suggests, is something that this able to very so it means that it is change able it can be changed in the time you want, So variables are some kind of containers that can store values like numbers. Imagine that these beings containers. Here are our variables. Each off them has different label name right, A, B and C. As you can see, each of the container is also a bit different. They have different shapes. It means the at containers. Variables can start different values. Different type off values. Now we have discovered a new thing. The type of a rape the type describes. What can we put into our containers? Variables. Okay, let's create variable in our program. Let's name it A. We have got only label now. Name off our container variable. We have to also describe what can we put into our container variable. So we have to declare the type of variable. Let's start from the INT, which stands for in teacher in teacher are numbers that have no fractional part and they can be negative. So now I can assign toe our variable Onley in teacher. But a sign I'm meaning. Putting something into that's for rape was right. But let's stop for a second and think about memory our PC is it only meet it. No, it is limited by our hardware because we can only a sign sops it off Integer numbers in our situation we are allowed to assign toe are variable named a numbers that range from minus two billions to about. Plus, tobe reveals Let's hit it. Okay. Equals, for example, for the equal sign allow asked a same values are variables the process off assigning value to a variable. It's called initialization initialization. Okay, I can do that process off the same. Also in one line. I could write something like that. Our common that think. Okay, but let's assume I want to a saint. Vory bull two of a rebel A something like, for example Uh huh. I can do it because thes value is greater than two billions. Okay? And it's really good idea that we can do it because we would take too much memory in our PC . We don't need the number for all the situations. Right? Okay, Now, I would say something very important when you look at any book. What is these his way to find something inside? If I give you, for example, one section of book or even on the one word and I will tell you to find this section inside that book that his 1000 pages. I'm sure it will take a very long time to complete the task. Right? What about the same situation? But now I'm giving you the number off page. You will find it bobbly almost instant. Right In programming Ward, that situation is almost the same. The section world in our program is called label or name of a rebel. Right. The page number is called address address. Okay, so by using variable address, we can get to values faster. But this is a bit advance topic, and it is connected with pointers will explain it later. Ver precisely. But now I want you to know how to get address off variable. In order to do it, we have to write something like M person 87%. And that's it. In another line, 10%. And now the name off variable. Okay, let's send the things that the council up That's a little something like that. Now si on and see out m percent a. Now let's build it on this because see, we have everything in one line. Eso well at heres something like and all l sense here for line. So ah, that think here is indicating the end off line and it's adding the enter at the end, right? So now and I did it. Ah, as you can see with having two lines for in the first line, there is for right and in the second line we have the address address off that for, so we have the dress off the variable. When we write something like a, we are declaring variable declaring means that we are informing compiler that there will be somewhere in our program something named in our situation. A. When he writes something like in a in the C plus plus language were also defining vory able defying means declaring and in addition to these were also reserving, locating, allocating space in memory. In our situation, we are locating space for the variable that this in teacher right int locates four bites off memory one by these eight bits. So we are allocating 32 off bits in PC's and memory bits, uh, zeros or one signs. So we are allocating in one second somewhere in our memorial, 32 places that can be filled with zero ones. As I said in the first lesson that sequence off zero watts can be translated toe our language or our language can be translated to the seconds right. And as I said earlier, variable values can be changed. And the time in the second lesson I was talking a lot about that compiler is reading everything from the top to the bottom, right? So if I write something like that and ah, we could be debt, I think what will our compiler or don't know? Let's start from the beginning because I compiler is doing that way. Um, So I comply a compiler east, including the Iot Stream library. It will use the STD name space, and then it will invoke the main function in the line. Ain't a equals for our compiler will be in for about existence. Variable named a. It will also locate somewhere four bytes of memory And because off in Italy's initialization that equal sign right, it will change sequence off zero and wants to re present number four in our prissy language . Right after compiler will print to the council output value. Um address off are available here Here A equals Stan, our compiler would change value of variable named a So if you change a beat, that sequence off zero and ones and but it won't change the others of variable. Of course. Right. And let's compile it. As we can see, the number has changed, but the others, it's still the same. Okay, lets start the how we should name variables. Now, that's the comment. And the first thing is that we can't have two variables that have the same name. Vory booze can't have the same name. So if I want to declare to vory boost, I have toe, um, have different names, right? That way we can Ron R program, but we can do something like that, you know, Read. Declaration off ain't right. We can do something like that. Ah, we can start the name of a rebel from the number, but we can use numbers in other place so variables can't start from the number. Let's check out. I tried to create int and now do something like, for example, that right? I'm trying to build it. I can do it, but I can do it dead weight. Is it okay? We can do spaces, but we can use underscores so we can't use spaces I can do something like and and now I will do something like prime number I can to something like that. Okay. But you can use, of course, the underscores, so I can do it. Deadweight prime number. That's all right again. Execute. I've program. When we declare variables, we should try to make themselves the scripted self descriptive means that we should be able to guess by looking at the name of a rebel. What is that variable created for? For example, we can write, um, in prime number. Right. Well, maybe I can do it even dead way in the prime number. I can do it prime. And there on, and I can do it. Also dead way I prime number the I prefix here, let us guess by just looking at the name that the type of variables is in teacher, right, Because I ain't right on this notation that one here is called I habit and Gary on notation you can typing, eating google and you can wait about other types. Okay, so let's know that Ah, our variables should be self descriptive on and we can do special characters. Key wars. Let's see what you can. For example, I can something like Ain't using right, because it's the keyword I can do that way it's not working. I can use the special character I hash. It's not work. Okay, so let's know that Ah, vary. Booth can't have special characters. Keywords can be constructed more, maybe consider acted, constructed off special characters. Key watts. Okay. And variables should be now owns. They shouldn't be objectives or other things like that. They should be just now. Okay, okay, that's all. In the next lesson will discover more types of vory booze and thank you for everyone. 5. Types of variables: Hello, everybody, that they were going to talk about more types of vory booze into C plus plus language. This is quite logical that there are more types right now. We only know how to create vary boots that construct integer numbers. But we also need to know how to store real numbers character sequence of characters Before we start. Let's remind about how to define variables. And let's talk about one problem that might happen. We we use varieties if we want to define variable, we have to write what type off beret bo and then name off all right and then cynical. We can also define in one line more than one variable. In order to do it. We should write something like that memory, but one name of very But don't name over both free and we could just continued it. Let's dig. Dolly was working. Ain't a be on sea build buildings as you can see our programs working well, we can also Assane one off that for able in the same line, For example, I think that one on and I was saying dead one okay, and that's Bill it and he's working well, but Let's see what values are stored in the Arab use right now. See out. Hey, I'm like And now let's just do that. Think to the key. I see. Okay, And now that's compliant. As you can see here, variable named A and C has good value that we assign right 40 and 20 by the UAE. Ivory will be, has it? We'd number here. If you combine the program on your computer, you might have even different number. And why is it happening? It would be called. We haven't the same any value to the variable name to be, But this might be still a bit confusing. As I said in the preface. Listen, every variable has got something like address. So let's send addresses off. Vary with the council out. So let's something like debt, you know? Let's did it. That's way. Uh, it's go buy it. Uh, sorry. Okay, as you can see, um, the address is some with numbers. Connectix connected with some letters are like the f right on the rotation is called hex of this smell coat. We don't need to understand it right now, but we should notice one thing. It off the address is different right here. I have 44 for the free and see So they differ from each other. And as I said in the previous lesson, when he defined were able So when right? Something like Ain't a right we are then locating reserving memory in the same time. It also means that we are locating address for our variable. But allocating doesn't mean clearing the value that is under the drug dress. Locating means that we just want toe reserve that space for other value. Okay, so if you're right, for example, just in being we are just a locating memory that already might have something a saint. But how is it possible still, how any programs that are running on our computer could use that space before for a special reason, for example, for to stir actually air. And when we stop using program that start, for example, the X ray earlier, the spacing more is again free. It can be then again located, but other programs like the one that we have just written, but the value is still in there. The value under the address is not being removed. That's why under variable name be. We have some random value. So to avoid complications before using an invariable we should Assane default values or just anything, right? Mm. And now we are sure what value is under the variable named B. Now we're sure that it will be zero, not some random number. Okay, on that start from other in teacher time, That's their new vertical types. Right now we can start in end that Dylan numbers from about minus two billions about plus two billions, right? But in the same time, we have toe allocate for bytes of memory. As you can probably guess, You don't need so large numbers in every situation. And if we don't need large numbers and you want to save memory, we can use, for example, something like that short in teacher and let's name it t one deaths type. Let us the same values that wrench from miners 32,768 two plus 32,707 67. And so now we can ascend smaller values, but we need only two bites off memory. So let's note that two bites and we don't need to write in. When we defined short in teachers. We can do it that way like now, or we can just remove. We can just remove the end and it's still the short in teacher. Let's a say some value to that guy, for example. Five. Um, that send it to the council Out boat. As you can see, it's working fine. Here we have five. Okay, let's study something. You know what? If I wanted to use real numbers numbers at a fractional part now when I write something like, for example, that and I comply that, as you can see, you are losing the value after the point, right, we lose that. Sikhs. We have only five on the council out the type that could store real numbers are called in programming. Floating point numbers on there are two types. Ah, to off the types float that's saying something with the guy and double, and that's because, mm, that's going by it. As you can see now, we are not losing the part after the dot and now what's the difference between float and double float locates four bytes of memory double locates eight bytes of memory, so it's just doubling the float right and to the float variable. We can Assane numbers that are up to 38 zeros, and here we can say numbers that up to 308 0 So it's a big difference right on. And in addition to these, double has got greater precision, which means that it can save more digits after the point. So it means that you can save more digits here right on. And because double very broken save more digits after the point. Which means we should use doubles when you are calculating something important where the precision is needed or willing to start over large, very large numbers. Now let's talk about saving characters. Character car thief. Full car is an m privation for character here. Okay, and that's send it to the council output. Um, that the same something first L we can't do a dead way because the compiler we tried to a sane here, the variable named a. So that guy here. If you want to sing the character A, we should use something like apple sauce like that. Now, as you can see, everything is working fine. What if I wanted to stir more than one character in the variable. You want to throw sequence of characters that are called strings. We shall do string type. So Sprink Oh, that's something like that. Ondas You can see text should be inside the quote Science for the sequence of carves. Let's send it to come council output that is working well on Let's Learn How to Combine two different strings. So I have, for example, sink Peaks. Ah ST Value, part one three. Why? But to and now drink combined strengths equals X plus. Why see out combined strings and lying? Let's see, as you can see purred one is now combined with Bert to in that very bold that is called combines things we can add, for example, space between them now like that. So to combine two strings, we should just use the plus signs right is working. Well, let's talk about bowling tight now. Bowling, um, true or falls. Well, bull is a type that can storm on the two values through or Fels eso Mm. Maybe not send it to the council output. Um, come pie. As you can see, we don't have here something like two with have one here, right, But here is through. Why, um, every number that these note zero is goingto be true in the sippers plus language. Zero is representing falls. So false is always zero. Everything every other number is to let's check it out. For example, I'll write fools. As you can see, we have zero here and there's no right something like that. As you can see, we have one here. One is representing true. One is re presenting. True on. That's the same the negative number. As you can see, it's one and now zero on the zero. Okay, so everything is working well, Like I said, Now let's talk about unsigned types of variables. Ah, when we look it, that guy here and I told you that can have values from miners 32,700 68 to 32,767 on. But there are many situations where we don't need negative numbers. Then we can remove the minus signs, remove it right and we are making them on science types because it's we've all that sign by removing negative part off in teacher were increasing Emmel off positive numbers by amount , off negative numbers. So for all such and signed short end, we could assign value the drench from do it for unsigned short Ain't zero Toe Seek 3 5535 and that number here is a sam off that numbers. Here you can check it out and let's send you to the council. That's a great first lane. See out, as you can see is working Well, let's look about, um, that we can also remove the anti Joe here. Unsigned Show these on site short in teacher. All right, it's working well. We can add unsigned toe all other diver floral double. So it's working the same. Ah, on. And let's talk about constant variables now. There might be situations where we gonna use something in our program militants, and we also want to make it unchanged able by mistake. In order to do it, we have to have before type of aware variable award coast, which is deprivation for constant. So, for example, we have string. I will name, name off gain, um, con cuero off c++, for example. And I don't want this name being changed. So I at counts here and now let's send it to council output, as you can see, is working well. And as you have noticed, I'm using upper case for the name off constant variable. You don't have to do it that way, but it's good idea, because when you're programs gets longer, you will know what it's constant varietal. Just by looking the name of Arabia, right? Its upper cased. So it's the constant for shoe. And we'll know that we can't change the value of this variable from the other part of program. Let's read out. So we'll see if I'm lying or North. Okay. Name of game. And now, Um oh, something billet. And this you can see we have over here. We can do it. So I didn't lie. Okay, that's all in this lesson. Thank you for much. 6. Downloading data from input: Hello, everybody. Today we're going to talk about how to get something from the council input. So we go on then how to get values from the users in order to do. They were going to write something like, say, in which is deprivation for council. And so it's the entrance for the data that we come from our uses. When he wanted to put something to the council output, we're writing something like, See out. And then we added to angle bracket that were pointing to the council. Put the direction right and, for example, I will send something like test the council up. But this time we are taking something chrome that plays right from the counseling. So we are going to write to angle brackets, but they will point to the right to something that can store value. So we're going to use not variable name after the two angle brackets. That's great and less creative. Arrival, for example, in a and now here, Um, I can direct something from the council input to Devorah Able named a eso. That value is going to be starting the variable named. And maybe let's change that guy here. Variable named a equals. And now that's right. Compile it. As you can see now, um, we didn't see that guy here. This is C out. We don't see anything of the council apples and ah, we have got here blinking Underscore which is waiting for us. It is waiting for us to ah, do something to give something food to our variable named a. So I will give it for example 10. And now is you conceivable Name A. Yes, he called to 10. Now a Z you can see the title that variable is in Teacher What will happen if I try to Assane another number but for example character, for example kid. And as you can see, that corrected good converted to the number But it also makes an air hero in our program. And if I a program was longer, it would stop way. We will Then I learned how to fix situations like that in other lessons. So don't war. Okay, now let's train maybe a bit And I write the program the ask for name and surname and you work on the person our program. So how to do it? Let's just create string name and surname. And now let's ask ah, user of our program. Enter your name. Seen name. And now let's ask him for the surname Enter your surname. Let's do it. The Clean way Seen summing. And now let's welcome to guide it visited our program. Welcome. Name displays and Saul name. Let's see how it works. So as you can see, a program is asking cars for our name. So I'll type my name. And now I tied my surname. And as you can see, it is greeting me. Well, come on. Our Gwadar chick. And that's working. Fine. Okay, that's all. Ended lesson and thank you for much. 7. Arithmetic and Assigment Operators: Hello, everybody, Today we're going to talk about operators first, let's start this topic from what our operators, as the name suggests, operator. It's something that can operate. So it means that it can be formed. Work on something in programming world operators are used to work on. For example, the Rebels expressions. In this lesson, we'll learn about arithmetic and assignment operators. So let's great do variables ain't a equal Stan and gained the equals five. And now let's send to the council output a plots be and let's and online in the end. And this is called addition operation. And now let's combine it and as we can see our result, ease 15. So Operator operated worked on to the rebels, and we have got now one result, right, which we consent to the output or assigned another of Arabe. Okay, we have got other operators like the mine is a burrito, which is subsection operation. We have something like multiplication operator, and it is Marty publication. No, let's look about the division operator and let's combine as you can see him. Our results are right. They are Ah, good, but a so you can see when we divide 10 by five, we have the result to which is right. But now let's change B 24 and you're probably expecting that the result will be 2.5, right then divided by four. Let's see, as you can see, our result ISS to not to point fine why it's not 2.5. Because when we divide to painted your numbers, you see that variables are in teachers, right? Our results will always the integer always the part. After the point, which is in our situation, five is being removed. Math rounding is not working here, so if you have, for example, 2.6, the result would not be equal free. But it would be a ain't too. Okay. But what if we want to have a real numbering? The result. One off are variable. Must be then double or float. It doesn't matter. Would one. So let's do it, for example, that guy Well, let's think as you can see, we have now 2.5. It's okay now. Let's, for example, that guy make it a double, and as you can see, it's working. Of course, both can be double and they do it Well, for example. Okay, let's back to the teacher. And now let's talk about model operation, which is later really very, very useful. But it might be a bit confusing Good stuff when we use model operation, which is persons signed in the C plus plus language on two numbers, for example, then model for a. The result is to know why to in our situation is called reminder and the reminder is amount left over after the division off to in teachers. OK, so when we look at this operation, we should think like that. How many times can fall be located? Start intern the Ansari stew, right? Because cool multiplication by four means a and now what amount it's left over after the division off to in teachers A this 10 minus eight, which is to right? Okay, now let's check the next example. For example, Wow, Model five Ace one. Why? How many times can five be start located in one the Ansari's zero? Because five is greater than one. Okay, so zero multiplication did by five equals what? Zero. And now what amount is left over after the division of two integers? It is one minus zero. It is just one, right? I need walks. Okay. Ah, you should training the bit. You can train it by just sending it to the council output, for example. 10 mobile for right. Let's buy it. As you can see, we have do there. Ah, a model. Be okay. It works. Fine. Trying the beat because it's kinda important to understand it later. It's one of the paraded of these Really used a lot. Okay, find now let's Doug about incrimination, decriminalization and assignment operations in crap, man station and de crap lamentation. Okay, incrimination means increasing current value by one increase by one. Right and dick lamentation means decreasing current value by one decrease by one. Operations like that are so frequent that they have special operators that let us write them faster and normally, if you want to increase current very by one so two increments something we have to write something like, for example, in C equals one. And now when we do something like seep equals C plus one and then we would send it to the council output. As you can see, we have now there too at the end, right? You can get all the things that the comments, it won't confuse us in the mold. You can see Teoh is here and how it works. Ah, Death. Think him means something like that. Take the value that is. Start invariable. See, which is one adds to eat one. And then after sun summing that right as saying the result to the variable name See? So see will be Don't know. Okay, Off course that one can be any think you like then and it works. But we are right now talking about implementation discrimination. Okay, so we've just increased and decreased values by one. We can do that being here a bit faster. Using assignment operator like that C plus equals one which is the same. It is the same as C equals C plus one is the same. Okay. And of course, the number here can be changed to another number or maybe three. And there are many more operators like that or exact for example. Ah, division equals minus equals model law equal all's multiplication walls. Um well, almost all operators have that shorter notation. Notation. Okay. And let's compliance. That saves working. You can see everything works fine and Now, finally, let's talk about incrimination using increments. Operator. Okay, well, that's coming. That I think you uh huh. And now in the equals one. And now let's or something like that see out the plastic laws and line and that, plus Blas Que is increment operator. Okay, And let's compliant, as you can see, well, steel our d he's one. But is it true? Let's send the to the council output again. Let's do it here. Well, that's building around. And now you can see the geese to another one. But why is it goes? We have just use something. What is cold, right? Post incrimination and posts means Hear that Plus signs are after the name over Able. And it also means that it will begin the expression that thing here from sending value to the output. So it scented our boat and then it will increase the value by one because of the two plus signs. Okay, so now let's talk about praying. Crimen station. So poor incrimination, The prank lamentation. It's looking like that now, As you can see, we have to to in both places, as you have probably noticed, plus signs here are now before the name of a Rabel. Which means that now where I will be first incriminated by one and then value will be sent to the up and how to remember what happens first, Just look at the notation of incrimination. If the plus signs are prefix for were able right, then incrimination is first. If the plus signs are Paul speaks, four were able, then incrimination is goingto happen after sending value to the out. Okay, Now let's talk about product lamentation and post discrimination, right? So post the experimentation on pride, incrimination, Price and they work the same way, like incrimination. But this time we are decreasing value by one. So if I do something like that and I compile it, what will happen first? Dead guy here will be Dick lamented by one first and then develop will be sent without. But let's see. So it would be zero. Right? Okay, we can see 00 body. Do something like that. Um, like that ID will send it up first one, then it will decrease its value by while. And then it will just send that one. I'm sorry. It would send just hit one. And here the value will be zero. Right? Okay. As you can see, everything is working. Fine. And that's holding that lesson. Thank you very much. 8. Relational Operators: Hello, everybody, that they were going to talk about relational operators with our relational operators? Well, as always, we will concentrate on the name relational operate. It means that this operator upright on vary boost expressions by checking what relation is between them. Right? So if I have to wear Ables, for example in a Stan in B equals five and I want to see how they are related to each other . So, for example, if they are equal, I need to use relational operators when we want to check if two variables are equal, we shall do something like debt. See out a equal sign equal sign be on a deadline to equal signs are representing equality in the C plus plus language. Remember that one equal sign is result for a saying values two variables. Remember about the difference because you might make many me six because of the came. And now I would try to comply. But as you can see, we have zero here. You know that angle brackets here, um, are also operators. And now our compiler is confused as in the mathematic To solve problems like that, we should use parentheses. So I was at parentheses here and now. Compiler will know what to do, and I would combine it. And as you can see, our result is zero light. The result off relation operation is always zero or one one is representing like in bull variable. True Zero is representing false. So we've just got informed by that zero in the council art boot That value of variable A is not equal Teoh value of arrival being right because our result was zero right. Okay, so we can use the 01 informations later by using something called the school conditional statements. But we'll talk about them later. Novel Les is right now let's talk about all relational operators. So this guy is through when both variables have the same value not Let's talk about ah, dead guy a copy Death. Um, we are using instead A said off one equal sign, exclamation mark and exclamation mark is just saying that it is no equal. Right? So it is through when both for a booze do do not do not have the same value. That's comported. You know, as you can see, it's through because 10 is not equal to be so It's true. Okay, No. Let's talk about that guy on. And it is through when? When valley off variable A is greater than the value of a Rabel. Be so in our situation. It should be true, right? As you can see, we have one here. So everything is OK? No. And this guy A So this is through when value over able b is great and then value of variable A right. So this should be zero. And as you can see, everything works Fine. Now let's wideouts the the guy. And when value A is greater then or equal. And here it is Silver, the over able baby. Okay, so, uh, it's OK. It should be too Ive that vary Boos were equal. It will be true also. Okay. No, that guy Ah so be is greater than or equal to very over able, so it should be in our situation. Fourth, we can also use exclamation mark toe change value from two to false. So from 1200 to 1 on to do it we should do something like that for example Ah, that at exclamation mark here and now I would say if that guy here. The result is zero changed. One if it's one changes to zero. So in our situation, A is not equal to obey. So that guy will be true. Okay, so that notation is the same as dead guy. Okay, that's only did Listen, thank you very much. 9. Logical Operators : Hello, everybody. Today we're going to talk about logical operators who I are the killed logical operators because they weren't like in the market logic sections. Don't worry if you don't know or do not understand it. Subjects. I would try to explain the easy way police concentrate. And if you don't understand, it's a big world. This video again because it's really important to know how the operators work. Let's grew eight multi line Commons okay, and first operator that we learn in C Plus plus is called and operator. We just called in math. Conjuction came, so it is used to call it something on and in the programming language, it is hidden behind two m percent signs that signs here. And you can think about contraction like it was a connector off two expressions and what they think by saying expression. I'm thinking about things like debts. Seven is greater than 55 is note equal 10 and men and, well, most of the things that we landing the last lesson, right, Okay. And you know that expressions ah, have results, right? As I said in private lesson, the result is zero, which is representing false or one which is representing through. And when the Connick two expressions connect right, two expressions with and operator like that, for example were saying that both expressions have to be true if we want the full sentence to be true. The sentence is that think what I have just highlighted. Ok, so this is the sentence. Andi so sentences something like toe expression connected with, for example, that conjuction here. Right? Okay. Okay. So let's no deaths. Conjunction is through on Lee. If both expressions are to okay and let's should get out. Um, see out Now I use the parentheses and our sentence. He right? And let's build our program. As you can see, the result is one. Why is seven greater than five? Yes, it's five. Note equal to 10. Yes. So here I have. From that expression one here I have from the expression one right and one and one. And is that I think here one and one is also one. Because contruction is through only if both expressions are true. Okay, Well, for example, let's change the numbers. United say the five is greater than seven. Which is of course not true. So here I have result as a result zero. And here I have, as a result one so zero and one should give us false. So it would be a zero. Right? And as you can see, everything is working. Fine. Let's make a table for that. So I have, for example, expression One expression to and the result is so 00 result is 001 result is 010 result is zero and conjunctions through only when both expressions are to okay. Mm. No, let's talk about logical or operator. Oh, and it is represented in C plus plus by two pipes, signs that signs. And in March, CD's called Disjunction. Okay, Sometimes people call it alternative, okay? And this junction is working like that. Let's make a table so a Z can see this junction is false Only when both expressions are falls in all other situations. The junction is of course to and how altering memory memorizes. I think in Ah, we want to memorize it. I would suggest thinking about this junction as alternative in real life when we are deciding we're trying to choose right decisions right and which are in programming language represented by 12 So here we have on the false expressions to choose. So the result is 000 and I have no choice. I have to choose zero, and okay, I will. The result would be zero. But in other situations, As you can see, we have always this one right decision. I I have said I have got one decision to choose 01 Okay, I'll we choose one because it's better for me. Of course, I better. Okay. Ah, that's why the final result is 111 in the places here. Because we are juicing. Always alternative decision, which is good for us. Okay, let's try it in programming version. So I would change the guy here to alternative. So as you can see if it's five greater than seven. No. So I have here. Zeal is five note equal to 10. Um, yes. So here I have one. So zero or one is what the result is one. Of course I would choose the easy. Is this alternative for me, right? Decision. Okay. Is one for shoe and let's check it beers. And Ron, as you can see, I wasn't wrong. What if I have both expression as false. As you can say, the result is zero. So everything is working. Fine. Maybe. Let's ah, you know that these junction is falls only when both expressions are fools. Okay. And now, um, it is the last operator, which is called logical negation Operator, which is represented Ain't the c plus plus language by exclamation mark? Okay. And it is just changing 0 to 1 or 1 to 0. So Ah, if I have, for example, that thing, the result will be there is Ah, we're be one. If I have something like that, the result will be zero. So, uh, here our results is right now. One if I want to you. If I use on that exclamation mark here, it should be, as you can see now. Zero. So one was changed to zero so we can understand that exclamation mark as our word. No, right. No note. It's not something. Okay, Uh, probably dystopic might be confusing for you. And you might be thinking like, how is it important for programming, right? Ah, I'm assuring you that in next lessons, you notice that this thing is really important. You can create man of very important things. Ah, way. When? By using the knowledge in this lesson. Okay, that's all. Thank you very much. 10. Bitwise Operators: head over about it. They were going to talk about bid wise operators Before we start. I like to mention that this topic is noted for most of the programmers, so don't worry if you don't understand it. However, it's good idea toward You didn't know about existence of something like that. Okay, what are bid y separate items? But why separators are created toe work on bits. I remind that bid is the smallest. Information can be starting our computer, and it is represented by listen all that zero on once right and the 01 can be connected. For example, eight signs of connected bids East gold bite, for example, sequence something like that. And if you want to operate on the zero and one science, we have to use bid wise operators. Look every number IHS starting computer by using that zero. And Wildstein's computer notation is surprisingly verse similar to our notation, which is called decimal notation Loves reminded. For example, Number 120 seeks December is really created, or something like that one multiplied by 10 rice to the part off to plus two multiplied by 10 raised to the power of one plus six Multiply by 10 rice to the power off zero. And as you can see, they think here is equal to 100 dead. Think here is equal toe 20 dead. Think here is equal toe six Because then, rice, that the part of zero is one writes the one multiplied by six is 16. Okay. And you might be now, like Why are saying, um it's because if you want to change computer notation, which is called Binariang notation, we must do the same thing. We need to understand the changes. Ah, to understand Pete wise operators, for example let's strange something like 1010 This thing is something like one multiplied by something plus zero multiplied by something plus one multiplied by something plus zero multiplied by something. As you can see, I am writing What? Just the numbers he right on. And if you look at both, I was writing also that number issue as against Okay. And now we need to right what we are You think he 10? Why 10? Because here is a decimal. Ah, decimal numbers. Eso You are right. We are counting to 10 right, 01234567899 And that there are 10 numbers already. We have 10 fingers, right? And that's why here is 10. In computer, we have only two numbers. 01 So here we will multiply by two well deployed by term with black by her multiplied by still multiplied by two. And now, as you can see, I was rising to the power off work. Look. Ah, here is the position Number one Here's the position Number two Here is the position number free. So as you can see, dead numbers are decreasing to 10 Free to one. So this is the number off position minus one free minus one is still tu minus one is one while mine is 10 OK, so here is how it should be. Two writes the power off. 012 free. Okay. So to the part. Off free zero. Multiply by two to the power off to while multiplied by to race to the power off. 10 multiplied by two writes the power off zero. And now that think here is, um, decimal number. So ah, one multiplied by two to the race. The borrow free is it Applause that think here is going to be for before but for multiplied by zero is just years zero plus ah to multiply by one. So it's still plus zero. So 1010 is really in our world decimal notation 10 Okay, you should also notice now that when you see zero in by now a notation you can pass it because anything multiplied by zero is just zero. So why do so many things can just remove it right on Now it's a bit shorter and again you should also notice that anything multiplied by one is still the same numbers. So we should focus only on which place is the number and raise two to the power off position minus one. So we should jaws do something like that. And now it's very short, right? And let's use the thing that we have just on learned about. And for example, I have 101100 Ah, and you should thin glass. I like dead now. Here I have zero. So I don't need to think about that situation because anything multiplied by zero a zero but nor marry here is hidden number one if zero was one right. And now again, number zeros already. Just pass it. But I remember that it was one. There will be number two in the similar notation. Okay, Now I have feel one. Um And now I know that I should race to To the power off position. Minus one. So what position is it? 12 free free miners want. It's too so two to the power to raise the power off to. So I have four, right? And I memorized it. Summer. I'm just writing it here. Right. Ah. And now, plus two to the power off free. Because because I have got here one. Now I have zero. So I know that in here would be to raise to the power of For here is to raise it The power of five plus two right to the part of far. So is 14 plus a plus on 32. So it is 44 in Windows seven. We can use something like buying our calculator and not one right here. 44. As you can see, we have got your 10 1100 So I was right. 44 is in our computer, said s 101100 But as you can see, also before that one, our man in minimum and his ears okay, the okay, Now we can learn about the breed wise operators before we start, I would like to mention that I'm assuming that you understand lesson about relational operators. Very well. Okay, let's start from making multiplying comment and that start from bit wise and operated, which is 1%. It works like relational operator. And but remember, this time we are operating on bits. Note on the results off expressions. Okay, we have got also bid wise or which is one pipe, and it works like a traditional operator. Or but this time again, we're operating on bits. Note on the reasons off expressions we have got. Also bid wise operator, not which is Tilda. And it works like relational operator *** *** negation, which is exclamation mark there. But this time again, remember that we're operating on bits. Note on the reason off expressions and there are free more operators here this time beat wise exclusive for which is a current exclusive or ah, because ah, it looks like that right? Said privation for exclusive for. And this thing is also called exclusive disjunction. Exclusive means here that we cannot have more than one alternative to choose. So table for sole sore is 00 which gives our zero because they don't have the right alternative to choose. Right? Because of only 00 What? To choose you zero and one. Ah, well, give us one. Because we can choose the right alternative here. For example, that guy on 10 which gives us one, because we can choose the right right alternative here to, for example, dead guy and 11 which gives us zero. Because we cannot juice more than one alternative in exclusive. And, um, there can be only one right alternative at once, so it must be exclusive. Okay, that's so is the It's a bit different from that guy here. Okay, we have got also something world is called bead wise. Left shift. Ah, operator, which is to angle brackets pointing to the left. They are used as the name suggests to move bits to the left. But we'll explain it more clearly. Later. We have got also bid wise right shift operation. Ah, which is to angle brackets pointing to the right, as you can see. And they are also used, as the name suggests, to move bits of the right and also will explain it more clearly. Clearly lighter. Ok, now it's time to do some exercises. For example, See out and 10 and ah, and to and want to see what will be the out. Okay, that's or something like that. Look, normally, 000 he's just zero, right? If I want to change the things to turn, let's do something like that. Um, here. Normally is he didn't one here in Ramallah, is he didn't to hear? No, Molly's hidden for here. Romalis hidden a So eight plus two will give us 10. So I changed the gate. One has got the one and this thing is done, right? No. Ah, I think about that too. Here. So it will be 0010 And now we have got here. 10 in that smell. Don't hear too. In decimal notation. When I changed it from buying and they shook off course. Okay. And now we have just use something here what it's called and operator and the upper and operator Bid wise and operator. It's working organization operator. As I said so, Ah, when conjunction is true, only when both are humans are too. So 00 And this thing is one because we have got here through through and zero. So, um, what is what is going to be here? It should be too. As you can see, the result is too. Okay, Now let's try the R B twice, Operator. So ah, operator or is working like what it is supposed owner when both arguments are for so here is through falls through false. So the result is, as you can see then it's working Well, okay, now let's dry the alter native Oh ah, exclusive or I wanted to say sorry. And now how it works. We can see here. So here is one. Here is zero. Here is also zero. So and the result this world zero plus 00 plus eight. As you can see, it is a cool. Now let's check the negation. The note Be wise. Operator, for example, has 10 and something like that. And no, once you're one's yours should change 20101 And you might be thinking that the results IHS . What? Mm One plus for its five. But the result is Miles 11. What? As you have notice, probably when I was running that calculator here. Look how many's heroes we have here. So here is so many zeros and that many zeros are changed too. One, right, Also. And in programming. If you want to achieve the minus number, the first guy must be one. The first number here is indicating that the number will be, as you can see. Negative on now we are decreasing. Right? Okay, well, maybe I should have stayed increasing because, um, when you're negative sides working different way Ah, well, never mind. Now you can see why we have got here. The a negative result. Okay, Now let's talk about see out and that shifting guys, the guys here, right? So for example, I would something like that, then shifted one time to the left side. And what the hell was that? Look, for example, I have the guy here, right? And I'm saying, hey, moved to the left side. So, um, the's guy here will be moved to that place on the guy would be zero but the guy that was here is moving here. So 10 and one. So right now What happened? Ah, we increased that number for shoot. Right? But how By how much did they increase the number? Ah, we are all all the time. Ah, doing something like raising number to the power off tourism through the part of 01 of the power off one. It's still go to the power off to is for for a 16 right? So 16 plus four is 20. So the result will be 20 in decimal notation and divided Something like that, I will have one more time. Ah, that bids shift it to the left side. And we would have four to here because we would multiply it by again to So this being means that we are multiplying by two rice to the power off the think here. So this being means that we are multiplying. Ah, 10 by two raised to the power off to this time to do. Um that's right. Maybe free. Okay. To the power off free. And so Ah, 10 multiplied by two to the rights of the power of free is Walt 10 multiplied by eight. So I should have 80 here. Let's see if I'm writing. I'm not buying. And this you can see everything is working. Fine. Okay. Eso if I'm doing it another way. So that way that we're dividing 10 by to raise by something. So let's divide by two writes of the power of one. So I am dividing by 2 10 So the results should be five this time. We are moving it another way. So this thing will be changed. The world 0101 So it will be, Ah, one plus for five. Right. Let's check it out. Um, Sorrow. Of course. We should change it to dedicate to the right. Um and that would works fine. Okay, It's five. Everything is okay. That's on the lesson. Thank you very much. 11. Contidtional Statements: Hello, everybody. Today we're going to talk about conditional statements. Instructions Conditional instructions are used to condition. Check if something happened. Conditionally section let us execute. Perform some block off instructions on Lee if some requirements are met. Okay, So if the condition is met, which means condition is still which also means that it is not equal to zero sum block of code will be executed. Otherwise it killed with the omitted escaped in programming language. It looks like that, for example, has right following coat a beam. And now let's ask our user for the for able a Now let's ask for were able been No, let's take it from the I am booked and now I want to execute some coat only A for example. Value of are able a is great and then very you over able be We don't know what values with bay starting did variables because that values will be assigned by user alive Program Right . So that's why it would be nice if we called, for example, check this situation. Okay, so I will use combed issuing a statement which looks like that eighth parentis is and inside parenthesis I will write condition and condition is just anything that can be its final result. Zero another lumber. So, for example, and expression, so ever write A is greater than the and after it, I will write an instruction that will be executed own if the condition is met. So, for example, see out a is greater than be so we are sure that we can tell our user that a is greater than be because that condition must be met in order to run the instruction here. So now I can come by the guy and I enter a for example, that's then and under be as seven. And as you can see, that instruction is now here on our out boot. So 10 is greater than be Okay, So So everything. It was okay. But, um what when I run the game and now I will like, for example, for and now I will die. For example, 25 as you can see, that its construction was omitted. Who escaped, right, Because A is not greater than being well, wasn't great. And then be now will test a few more things and that finger slow us a bit. So let's just Koeman this. Mm, That's come on. The Sphinx here on and let's do something like that. Ive seven is greater than four. See out something. Okay. And now let's see out here. This what I want to tell you Now, look, what if I wanted to execute more than one line off coat Only if that guy here if that expression if the condition is met. Now, as you can see, both off the dissection, goat execute and aides. Okay, But what if I do something like that for is for is greater than seven Onley. That guy will be executed, right? It might be a bit confusing when I ride the dead way. Still, only that guy will be executed best. But what if I want to execute that guy own? When this condition is met? I need to use something like brackets. Briquettes. I used to girl many instructions. So as you can see, we have got here. Brackets are pending one and closing one. And that brackets are usedto group that instructions que that brackets here opening and closing one, our heat. The group that instruction here because of that break, it's that to instructions. Here are treated like the one instruction. That's why now, when I built this program, As you can see, both instruction weren't shown. Okay, now Ah, as the city rear end anything and the being right, that is not equal to their zero. It's true. So condition abo is surely no a cool the zero. As you can see these things, that instruction got executed. Okay, We can use also not on Lee Relational operators. But we can use the logical operators so I can do something like that. If, for example, seven ace lower than for Oh, zero is lower than 10. Show that showed it. Thank you. For example. And tell me, um, about the extraction, We would be wrong. Executed? Yes, because it's zero lower than 10. Yes, it's lower Dunton and this is alternate. It is these junction so way. We don't need to think about that guy Even even if you this fall's Ah, the result off that operation will be one in a way, right? If you don't know the send it, please repeat the subject of all the logical operators. Okay. As you can see, everything is working Fine. But now let's maybe make it a bit more confusing now. I will add, for example, here conjunction. And I would say and then is equal toe nine that think, as a result will give us zero. That thing is a result will give us what conduction is through on Lee A. Both expressions are to or one right. So as you can see, um, the result a final result is zero. And now when we build it, we cannot see that guy here. Okay, there are some exercises. Now I want to tell you about something very important. Ah, let's come. And they think you now. And let's back to that guy here. Well, assign values by our says, for example like that. And what would happen Lumps What would happen if I want, for example, do something? Oh, when the condition is not met, then I can do something like that else at the huge else and say the condition a is greater than be surely wasn't met, right. And now Ace 100 greater than 10 off course is greater than then. So these destruction is executed. But when I do, for example, that thing as you can see the condition A is great and then be surely wasn't met. But we can do other things. For example, I can do something like that else. If a is lower than being see out a is lower than bay And now I should change is like a condition A is greater than be surely wasn't meant And the condition a rather than B surely wasn't meat I met that in section is executed only if all off the conditions where met So right now, as you can see, minus four is lower than ah smaller than and that the section was executed. But if I want to execute that guy, it must be the death condition cannot be met and that condition cannot be met. So when will it happen? When the two variables are equal. Right? So that needs actually is executed Only all of the conditions we're aren't met. Maybe I should change. Do you think dating section will be executed on leave? All of the conditions weren't but okay. So as you have probably noticed, we don't need to use that all Steve or else think we can use Essman as if here as we want to check many other things right And that instruction after else will be executed on when all of the convictions are in bed on. And we should also know that we can nest so we can have men and conditional statements. When we use rockets, you can have nested conditional instructions, for example, that way now I come for example, check if a is lower than for example, 10 a is I'm sort of smaller. It's smaller than then. Now when we build it as you can see, that variables are called But I can do, for example, something like death. And now ah, we will execute that guy here 10 is smaller than 20. But this thing wasn't executive because a is equal toe then it is not smaller than 10. Now, when I do something like that, as you can see, everything is working fine so we can nest our conditional statements. Okay, So seen today we can decide what we want. Toe execute and the volunteers lesson. Thank you very much. 12. Switch: Hello, everybody. Today we're going to talk about Switch Switch is used to, as the name suggests, to switch between cases due to the value off vory able. So let's create variable. That's name it X and let's ST very little Air Able 50. And now let's create a conditional statement switch, which looks like that switch to parenthesis and now inside parentheses, we complied. Variable. Which value will the switch between cases that we will soon create? So let's type you X and now Ah, let's open body off switch by using carefully brackets banging King Cole's England And now we can create cases that might happen, for example, Case zero. So, for example, this is a place for the instructions that will be executed when switched value is equal to zero. Okay, No, let's make another case example. Case 25. This is the place when it's 25. No case 15 15. And now I will type default here, not case it's time. Andi, This is a place for the instructions that will be executed. Um, that will be executed. Went very off, switched variable. It's not equal to any case, So debt instructions here will be executed in our situation when Variable X is not a co 2025 or 50. Okay, and now let's combine it. Our exist 50 now. So what will be executive? That's being right, for sure. And, as you can see, ah, instructions after cases zero and 25. So that guy Ah, that guy wasn't executed, but Case 50 was executed. So it's good bought. Mm. What's wrong here? That's weird instructions after default. Also good executed. So that guy here got executed. Why? Because switch works like death. Oh, he right. Have a rebel X. Let's switch it. Be queen Cases is variable X equal toe zero. No. So let's keep that guy here and let's check NICS next case. He's very political to 25. No, it's not. So let's keep that guy and let's go to the next and it's very equal to 50. Yes, it's so let's execute every instruction to the closing curly bracket. So we do execute that guy and they do. They execute every think the low until admits with the care LeBrock it. But it will also stop the execution. Eighth, our compiler meat something. What is killed? Break instruction Well, this break instruction it looks like that. No, As you can see, only debt instruction here got execute as we want. Um, what will happen when I assigned to the eggs of are able, for example zero. As you can see, that guy, that guy and that guy go executed and that think sometimes is useful. Sometimes we want something like that because, for example, that instructions are good for all of that, um, values. But in our situation is not good. And most of the situation is not good. And then we should eight at something like break you every time. And now, as you can see, everything works fine when we take something. What is not in that case example for Onley default. Only section after default on got executed. Right? So everything works fine. Now I like to also add that we can use Onley in teacher and character Variable types him to the switch for the switch. Why? Um well, let's think about if we could use, for example, the diable type. I told you the double has been something of a precision. So, for example, I have to vory double like debt and debt one. And now I will do something like that. And here I would do something like that. End. Probably. Deborah Able is still equal to Del Variable, but in reality it's not true. But well, that's how it works. There is precision, and we're losing precision after some digits. That's why it will be hard to compare double. Ah, double digits, right? We can use you characters. And but why? Well, look, we have got something like s key table. In reality, every character is not a character. It is number, number, a saint to character, as you can see. For example, here a is same to 97 but is a saint to 90 A. This is the same to 100. So when I do something like character weeks and I was saying, Value 100 here and now I'll do something like, for example, that he think that instruction should be executed. Let's see, um, a day And you have seen him, right? So that instruction would be executed that shake it out. As you can see, that in section could executed Well, because they is really want others. Okay, But when I did, for example, here a so 9th 7 as against the honor default option Goat executed. Well, instructions after the default executed. Right. Okay. And what about when I do something like that? That guy should be executed, right? And we can't use string. Here's strings cannot be used in switch statement because it is a bit connected with pointers. I don't want to get into details right now. I believe me, we can do strength so we can use Onley in teacher and character. Because characters are really in teachers. It is our s saint of characters. And ah, that's how it works. Okay, that's all. Thank you very much. 13. Conditional Operator: Hello, everybody. Today we're going to talk about comes assuring Operator, Imagine situation like that We have two variables in a and that was the same to the variable value 10 and be 20. And now imagine they do. I want to have string Which article message and that message will have value that will depend on values of the variables. For example, I want to say here, Hey, a is greater than be so I have to change the label now to start right? And that thing is to now I can for example, Sandy today out right. And everything is right now. Fine. But of course that the rebels who can come here not from us but they can come here, for example, from our ah user of our program, right? And then example that might change to 10. And now the thing is not true. So we could change. Ah, try something like that. If I is greater than be, then ascend to a message is greater than be otherwise through something like that. But we could also try to use because it's good idea here something goddess called conditional operators. It looks like that lads to eating the comment. And first we are Listen, making condition and then after question Mark, we are going to write. Something would will happen. Would will be a saint to the guy, for example, Here. Ah, If that condition is through so instruction that we will be executed if condition is too and after the skull, Um they condition is not true, right? So when I do something like that, for example, if a is greater than B, then please as sane too my sitch, the thing that is here so a is greater than be Els A is greater or lower o r equals p right eso Now, as you consider you know when we build it, a is lower or it is equal. Toby, when I do something like that, as you can see now everything gets working. Find one, and that the labels, of course, can come from our users. And that's one of the user for the variables. But for I mean for that operator conditional operator. But we can also something like that. For example, when seven is greater than four then please, I want to have your seven. If not then please. I want tohave here for and I want to at toe death, I think here, for example, 10 right plasticine and now seventies off course, grated and forth. And then I will have to your seven from that think and seven plus 10 is 17. But of course, it is more useful when we do something like that. So, for example, I want to create ah, a program that will add to the higher number 10. So I'm here checking which one is higher. Which one is bigger, right? And the one that is bigger. Well, we'll be using that operation. So now it's 60 right? 50 plus, then when I do something like that, So it would be 20 east. Ah, now, um, greater than this number. So my bid it you can see 20 plus then is