1
00:00:01,420 --> 00:00:04,860
Hi everyone welcome to the first lesson in the upcoming videos.

2
00:00:04,870 --> 00:00:07,550
I will teach you programming in C++ language.

3
00:00:07,630 --> 00:00:12,000
I will try my best to cover all that topic from beginner to the expert level.

4
00:00:12,010 --> 00:00:17,860
After finishing this course you will become proficient in C++ and being proficient in C++ never was

5
00:00:18,000 --> 00:00:19,350
out-of-state and demand.

6
00:00:19,360 --> 00:00:22,830
So let us get started in today's class.

7
00:00:22,840 --> 00:00:24,880
We will be learning some basics of programming.

8
00:00:24,880 --> 00:00:28,810
So first of all we should answer what does a computer do.

9
00:00:28,810 --> 00:00:33,540
So you give input to the computer and the computer will generate the corresponding output.

10
00:00:33,850 --> 00:00:37,740
So have you ever talked about how computer will understand our instructions.

11
00:00:37,900 --> 00:00:41,520
We human can communicate to each other because we speak the same language.

12
00:00:41,530 --> 00:00:44,620
For example English but there's a problem with the computer.

13
00:00:44,680 --> 00:00:48,090
It is an electronic machine and it doesn't understand English.

14
00:00:48,100 --> 00:00:55,690
It only understand binary and binary is basically 0 and 1 0 means you can see my switches off and one

15
00:00:55,690 --> 00:00:58,100
means I can see my switches on.

16
00:00:58,150 --> 00:01:05,560
In other words what begins a zero means false and one means through so if you want to communicate directly

17
00:01:05,560 --> 00:01:07,760
to a computer you need to talk in binary.

18
00:01:07,780 --> 00:01:12,870
So first of all let us discuss what is binary so binary is actually an ambush system.

19
00:01:12,880 --> 00:01:14,350
We have many in my system.

20
00:01:14,410 --> 00:01:17,470
So let us talk about number systems.

21
00:01:17,470 --> 00:01:20,560
So now let us talk about number systems.

22
00:01:20,710 --> 00:01:26,680
So number system can be categorized into two types rated number system and unweighted number system.

23
00:01:27,040 --> 00:01:33,280
So the examples of could number system are basically the decimal number system by the number system

24
00:01:33,760 --> 00:01:36,760
octane number system and hexadecimal number system.

25
00:01:36,850 --> 00:01:38,150
There can be many mode.

26
00:01:38,260 --> 00:01:42,340
The example of unweighted number system is basically telling them what system.

27
00:01:42,340 --> 00:01:46,590
So let us discuss first and rigid number system what this and region number system.

28
00:01:46,660 --> 00:01:52,480
So in and we didn't in my system each digit will have the same read each digit has been assigned the

29
00:01:52,480 --> 00:01:53,140
same read.

30
00:01:53,170 --> 00:01:54,310
Consider this example.

31
00:01:54,310 --> 00:01:59,320
So this digit is assigned a very tough one this digit has also a very tough one.

32
00:01:59,350 --> 00:02:01,980
And this is also has been assigned a very tough one.

33
00:02:01,990 --> 00:02:03,100
Now let us talk about.

34
00:02:03,100 --> 00:02:05,940
We did it in my system saying we did it in my system.

35
00:02:05,950 --> 00:02:10,270
Each digit has been assigned some weight and weights will be different for different in my system.

36
00:02:10,300 --> 00:02:12,790
So let us talk about decimal in my system.

37
00:02:12,820 --> 00:02:18,930
We use decimal and the system in our day to day life in this decimal in my system 2 to 5 is not close

38
00:02:18,940 --> 00:02:20,200
to 225.

39
00:02:20,200 --> 00:02:21,590
They are different.

40
00:02:21,590 --> 00:02:22,980
Older digital same.

41
00:02:22,990 --> 00:02:24,540
We have to then we have three.

42
00:02:24,550 --> 00:02:25,670
Then we have five.

43
00:02:25,690 --> 00:02:28,810
Similarly we have two three and five digits are same.

44
00:02:28,840 --> 00:02:30,280
But the values are different.

45
00:02:30,280 --> 00:02:31,740
The views are different here.

46
00:02:31,780 --> 00:02:36,070
Digit 5 has a very tough one digit 3 has a rate of 10.

47
00:02:36,190 --> 00:02:39,480
And digital basically has a vote of hundred and here.

48
00:02:39,490 --> 00:02:46,630
District 5 has a rate of one digit 2 has a vote of 10 and digital digitally basically has a vote of

49
00:02:46,630 --> 00:02:47,020
hundred.

50
00:02:47,110 --> 00:02:52,600
So basically if you will do like this what will do digit multiply makes corresponding with it and we

51
00:02:52,600 --> 00:03:00,290
will add similarly we will multiply digit with its corresponding weight so three will be multiplied

52
00:03:00,290 --> 00:03:06,320
by hundred two times hundred then two times ten and five times one and these two values are different

53
00:03:07,280 --> 00:03:08,960
these two values will be different.

54
00:03:08,990 --> 00:03:11,120
So we struggled in my system here.

55
00:03:11,120 --> 00:03:14,450
We will learn more about my system deeply in our future classes.

56
00:03:14,510 --> 00:03:19,580
So I was telling you that if you want to communicate directly to a computer you need to talk in binary

57
00:03:19,640 --> 00:03:22,910
but it is impossible for us to talk or write in binary.

58
00:03:22,940 --> 00:03:28,290
So we use programming languages alongside with the food charts and algorithms for solving a problem.

59
00:03:28,310 --> 00:03:31,200
So let us take the help of our diagram.

60
00:03:31,300 --> 00:03:33,460
So this is a beautiful diagram.

61
00:03:33,580 --> 00:03:34,840
So what do we have here.

62
00:03:34,990 --> 00:03:36,130
So I have a problem.

63
00:03:36,130 --> 00:03:39,830
So what we will do so this problem will be passed through an algorithm.

64
00:03:39,850 --> 00:03:45,530
Okay so what is any one of them algorithm is basically a procedure for solving a problem.

65
00:03:45,550 --> 00:03:49,710
So we have many steps to solve the problem step one then we will perform step two.

66
00:03:49,720 --> 00:03:54,470
And similarly there will be many more steps then what we do we will take the help of flowchart.

67
00:03:54,490 --> 00:04:01,090
So what is flowchart flowchart is basically a pictorial representation or you can see the magnetic representation

68
00:04:01,090 --> 00:04:06,010
off and you go to them pictorial or magnetic representation off and then go out of them.

69
00:04:06,550 --> 00:04:07,880
So include chart.

70
00:04:07,900 --> 00:04:10,670
We will be having many shapes like oval shape.

71
00:04:10,690 --> 00:04:12,160
We can have below ground shape.

72
00:04:12,160 --> 00:04:13,540
We can have rectangle shape.

73
00:04:13,540 --> 00:04:19,510
We can have diamond shape and so on and then we will be having our programming languages so be it stands

74
00:04:19,510 --> 00:04:20,980
for programming languages.

75
00:04:20,980 --> 00:04:22,900
So we have many programming languages.

76
00:04:22,900 --> 00:04:26,340
For example we can have C++ which will start in discos.

77
00:04:26,350 --> 00:04:27,870
It can be Java.

78
00:04:27,940 --> 00:04:29,890
It can be python and many more.

79
00:04:30,070 --> 00:04:31,890
So we have many programming languages.

80
00:04:31,930 --> 00:04:34,000
And finally we will get our solution.

81
00:04:34,000 --> 00:04:38,920
Now let us discuss what is a programming language before discussing what is programming language.

82
00:04:38,920 --> 00:04:40,630
Why do we need programming language.

83
00:04:40,630 --> 00:04:43,480
Let us try to understand what is the need of a programming language.

84
00:04:43,540 --> 00:04:48,000
So the answer is very simple computer only understand binary and we cannot talk in binary.

85
00:04:48,040 --> 00:04:50,370
So we need the help of a programming language.

86
00:04:50,380 --> 00:04:55,030
So programming language is a language with the help of which we can communicate to a computer.

87
00:04:55,030 --> 00:05:00,610
In this course we are learning C++ programming language so like any other language in general programming

88
00:05:00,610 --> 00:05:08,080
language will also have some words some symbols some rules in programming language the rules of grammar

89
00:05:08,410 --> 00:05:15,380
the grammatical rules are called syntax so I'm going to beating myself like any other language in general

90
00:05:15,380 --> 00:05:21,590
programming language will also have words symbols and rules of grammar so the rules of grammar has basically

91
00:05:21,590 --> 00:05:24,560
a name which is called syntax simple.

92
00:05:24,590 --> 00:05:27,660
No let us talk about different types of programming language.

93
00:05:27,710 --> 00:05:30,570
So there are basically two types of programming language.

94
00:05:30,710 --> 00:05:36,560
We have high level language and we have low level language and now let us try to understand the difference

95
00:05:36,560 --> 00:05:37,160
between them.

96
00:05:37,160 --> 00:05:43,670
So basically the high level language these languages are basically close to humans and low level language

97
00:05:43,760 --> 00:05:45,590
are basically close to machines.

98
00:05:45,590 --> 00:05:47,840
We can easily read and understand.

99
00:05:47,870 --> 00:05:52,790
We can easily read and write high level language but for the low level language it is impossible or

100
00:05:52,790 --> 00:05:56,810
you can say it is very difficult for us to read and write low level language.

101
00:05:56,840 --> 00:06:02,070
The examples of high level language can be C++ it can be Java.

102
00:06:02,120 --> 00:06:03,250
It can be Python.

103
00:06:03,320 --> 00:06:10,430
It can be too sharp and so on the example of low level language is basically assembly language.

104
00:06:10,430 --> 00:06:19,080
So let us understand it more clearly so we have our C++ language oriented Java or you can say bye to

105
00:06:19,100 --> 00:06:19,710
language.

106
00:06:19,770 --> 00:06:25,200
Then we have our assembly language then we have machine code which we will understand later where this

107
00:06:25,200 --> 00:06:25,820
machine code.

108
00:06:25,830 --> 00:06:31,100
And finally we are we are having something like IBM IBM and might be us.

109
00:06:31,110 --> 00:06:35,230
So this is generally a flu so.

110
00:06:35,260 --> 00:06:39,420
Now let us talk about how the high level instructions will be executed.

111
00:06:39,420 --> 00:06:42,270
We have high level instructions or what we can say.

112
00:06:42,300 --> 00:06:43,890
We can say human instructions.

113
00:06:43,890 --> 00:06:50,010
So these human instructions will pass through a magical box and this magical box will contain two things

114
00:06:50,070 --> 00:06:51,510
compiler and linker.

115
00:06:52,110 --> 00:06:56,070
So this magical boxes is containing two things compiler and linker.

116
00:06:56,160 --> 00:07:03,180
And finally our output will basically be a machine called machine code is basically zero once 0 1 0

117
00:07:03,180 --> 00:07:05,270
1 0 1 1 and so on.

118
00:07:05,280 --> 00:07:07,940
So machine code is basically zeros and ones.

119
00:07:07,950 --> 00:07:12,440
Now let us try to understand what is a compiler and what is a linker.

120
00:07:12,450 --> 00:07:18,810
So the purpose of compiler is basically it will read it will analyze it will translate our code we will

121
00:07:18,810 --> 00:07:22,690
write the code in C++ language in this course.

122
00:07:22,770 --> 00:07:28,910
So it will read analyze and translate our code to an objectified dot all will be the extension.

123
00:07:28,920 --> 00:07:31,930
And what is the purpose of Linker so Linker what will do.

124
00:07:31,950 --> 00:07:38,430
It will combine one or more object file which is generated by the compiler along with some other files

125
00:07:38,550 --> 00:07:42,360
along with some library files to make an executable file.

126
00:07:42,540 --> 00:07:45,090
Dot e x e will be the extension.

127
00:07:45,180 --> 00:07:48,300
So let us take the help of our diagram to understand it better.

128
00:07:48,300 --> 00:07:50,670
So we have this beautiful diagram with us.

129
00:07:50,670 --> 00:07:51,900
Now what do we have here.

130
00:07:51,930 --> 00:07:55,020
So we have source code so we can have many source codes.

131
00:07:55,140 --> 00:07:56,280
So this source code.

132
00:07:56,400 --> 00:07:58,890
What it will do so it will pass through a compiler.

133
00:07:58,920 --> 00:08:00,890
So I have compiler here.

134
00:08:00,930 --> 00:08:02,690
Similarly I have compiler here.

135
00:08:02,700 --> 00:08:05,380
And similarly we have compiler here.

136
00:08:05,520 --> 00:08:11,080
So this source code will pass through a compiler and the output will basically be an object code.

137
00:08:11,130 --> 00:08:13,050
So this will be the output object code.

138
00:08:13,050 --> 00:08:16,410
Dot e dot or is our extension dot or.

139
00:08:16,560 --> 00:08:21,200
And similarly dot or then here we will be having our library file.

140
00:08:21,240 --> 00:08:26,120
So we have library file or you can say library equal there is no need to worry for the local library

141
00:08:26,120 --> 00:08:26,430
code.

142
00:08:26,460 --> 00:08:29,190
We will see all these things in detail in our future lessons.

143
00:08:29,190 --> 00:08:30,750
Now what is the purpose of linker.

144
00:08:31,020 --> 00:08:33,270
So here is our link at present.

145
00:08:33,270 --> 00:08:34,470
So what Linker will do.

146
00:08:34,500 --> 00:08:42,490
So Linker will combine one or more object called along with the library file to make an executable file.

147
00:08:42,540 --> 00:08:44,420
Dot e XY will be the extension.

148
00:08:44,430 --> 00:08:47,850
So let me demonstrate to you with the help of an example during the standard better

149
00:08:50,510 --> 00:08:52,250
just focus on my screen.

150
00:08:52,250 --> 00:08:53,810
So I have this file here.

151
00:08:53,870 --> 00:08:55,250
Demo da CPB.

152
00:08:55,400 --> 00:08:57,840
CPB means C++ file.

153
00:08:58,010 --> 00:09:03,910
No let us open this file I have written some code here and there is no need for you to understand what

154
00:09:03,910 --> 00:09:05,920
is the meaning of this code.

155
00:09:05,930 --> 00:09:08,860
Now this button is basically compiler Britain.

156
00:09:08,920 --> 00:09:17,980
Now let us build and run our program so Hallowell is the output for this program no let us close our

157
00:09:17,980 --> 00:09:18,440
output.

158
00:09:18,820 --> 00:09:21,550
And now let us see our next drop screen again.

159
00:09:21,640 --> 00:09:28,600
So see these two files nematode all and Democrat XY so these two files were not present earlier but

160
00:09:28,600 --> 00:09:29,920
they are present now.

161
00:09:29,920 --> 00:09:31,980
So what is the meaning of these two files.

162
00:09:31,990 --> 00:09:39,040
So basically this dot all file this file is basically generated by the compiler and what is the purpose

163
00:09:39,040 --> 00:09:39,570
of linker.

164
00:09:39,610 --> 00:09:46,290
So Linker will combine this object code with some library code to make this dot e XY file.

165
00:09:46,480 --> 00:09:53,980
Now let us come back to our class no let us discuss the last topic for today's class and the last topic

166
00:09:54,040 --> 00:09:56,030
is basically variables.

167
00:09:56,030 --> 00:10:01,300
Now let us try to understand what is the meaning of a variables so variables are basically simply cells

168
00:10:01,300 --> 00:10:05,100
in a memory variable story information audio data.

169
00:10:05,170 --> 00:10:06,700
So let us consider this example.

170
00:10:06,700 --> 00:10:10,510
So I have written here and even come up to.

171
00:10:10,750 --> 00:10:13,450
So P1 and b to other two variables.

172
00:10:13,450 --> 00:10:18,710
So let's say the name of this cell is basically Beaven and the name of this cell in the memory lets

173
00:10:18,730 --> 00:10:25,830
say its name is basically P2 so be when and b to are variables because they are cells in the memory.

174
00:10:25,900 --> 00:10:30,620
For example if I write even a close hundred then what will happen.

175
00:10:30,670 --> 00:10:39,310
So I will store hundred in memory location even and what will happen if I do P2 equals P1 so the meaning

176
00:10:39,310 --> 00:10:44,010
of this line is very simple copy the content of P1 and to be true.

177
00:10:44,110 --> 00:10:47,780
So what will happen P2 will also store hundred just like P1.

178
00:10:47,800 --> 00:10:54,850
So basically B1 and B2 they are variables while there are variables because they have cells in the memory.

179
00:10:54,850 --> 00:11:01,920
Okay so now let us discuss what is the meaning of integer so in the mean basically integer it stands

180
00:11:01,920 --> 00:11:05,780
for integer so the meaning of descent is basically very simple.

181
00:11:05,940 --> 00:11:12,930
This entry is B1 and B2 they will store only integer there is stored only integer you can see B one

182
00:11:12,930 --> 00:11:19,470
variable is storing an integer hundred is an integer similarly B2 variable is also storing an integer

183
00:11:19,740 --> 00:11:22,190
so that is the significance of writing in period.

184
00:11:22,200 --> 00:11:27,950
So I think this is enough for introduction to programming and next class we will learn about flowchart

185
00:11:28,110 --> 00:11:29,290
in detail.

186
00:11:29,460 --> 00:11:31,490
Can't wait to see you in the next one.

187
00:11:31,500 --> 00:11:31,880
Bye bye.
