Assigment Programming 1
Assigment Programming 1
Group - L3-IT-1001
Unit Name – Programming
Student Name – Muhammadamin Rahimjonov
Date – 21.11.2020
First Question
Web designers, programmers, and software developers need to be able to think
about tasks and problems the way computers might think about them, so
"computational thinking" is a necessary skill for them. This gives us the system tools
we need to solve our clients ' complex tasks and problems.
Computational thinking helps programmers break down a task into elements, see
patterns in the data, identify and focus on the most important elements of the task,
and at the same time discard non-essential elements that can get bogged down. As a
tool for careful planning, it allows you to avoid costly mistakes that occur as a result
of haste, when you need to consider the problem from different angles.
The term computational thinking may sound intimidating, but we use it every
moment of our lives, such as when you move to another city, house, or fix your
things. We break down all our problems into small parts to make it easier to solve.
For our purposes, as a programmer, we use computers to solve various problems,
so we need computational thinking to understand complex problems and break them
down into smaller elements that we can work with. Then we develop ideas for how
to solve these small problems, and finally link these solutions into a series of small
steps that can be understood and processed by the computer.
The four cornerstones of computational thinking
1. Decomposition
2. Abstraction
3. Pattern recognition
4. Algorithms
These are key techniques that will help you approach complex problems from a
computational thinking. Let’s describe them why we need them.
1. Decomposition
This is splitting complex tasks into smaller and simpler tasks. These subtasks are solved one
by one until the entire problem is solved. If you don't break them down the task will be too
difficult to solve.
2. Pattern recognition
After decomposing a complex problem into small subtasks, the next step is to find
similarities between them. If we find similarity between the subtasks then solving the
general problem will be more effective.
3. Abstraction
Abstracting refers to focusing on the main thing and ignoring minor details. To find a
solution, we must ignore the non-essential elements in order to focus first on what we
need to do. When abstracting, we should focus on General characteristics that are similar
for each element, rather than on particular details.
4. Algorithms
We have divided the task into smaller subtasks that we can work with. You found
similarities between the elements. We have focused on the main thing and discarded the
unimportant details. Now we need to develop step-by-step instructions for each small sub-
task, or rules to follow. These simple steps or rules are used to program the computer to
solve a complex problem in the best possible way. So we also call them as abstractions.
This is, in fact, a fifth of the entire process. You use computational thinking to arrive at
this result. A solution is an algorithm that can be used to program a computer. You can't
wait to move on to programming, but before you do, you should evaluate the solution.
Without evaluation, any flaws in the algorithm may be missed, and the program may not
work correctly, or not in the best way.
Second Question
Software applications we often call them applications were developed to meet
certain needs, solve various problems, and perform certain tasks. There are several
devices that you can use them with such as computers mobile phones and tablets.
We also use them in Gaming, Entertainment, Productivity, Information storage and
management, Repetitive or in dangerous tasks and in social media.
Lets speak about them first gaming
We play videogames that can be used to engage, teach or help recuperate after injury but if
one thing has good sides actualy it have bad sides too. For example may be problems in
possible social segregation, medical problems affects actual exercise, mental prosperity as
an unwinding apparatus, possible dependence.
Using for Entertainment
Applications that assist clients with unwinding what's more, appreciate different types of
media, for example music, video or books through downloading, streaming or both.
Productivity
Applications, for example, accounting pages, information bases, word processors and
introduction programming that help laborers complete undertakings more proficiently,
ordinarily when working in managerial jobs.
Programming dialect develops are the building squares utilized to form a program.
We will utilize them in numerous distinctive ways and apply various techniques to
fathom the problems we are given. One thing we may find exceptionally early on is
that numerous constructs and strategies are common over a number of dialects,
which implies that our knowledge can be effectively exchanged between languages.
Code tests from a number of distinctive prevalent programming dialects have been
used to assist you compare and contrast their builds and procedures. Be that as it
may, the larger code tests in this unit have been composed in Microsoft C#, which
may be a exceptionally popular language inside the program improvement industry.
As our aptitudes advance, we should find it moderately basically to change over
these code tests to another target language.
The conception of command words is at the center of most programming languages.
These saved words cannot be utilized by a software engineer to title things see
Identifiers. Instep, they are utilized to command a particular activity, such as ‘open a
file’, ‘clear the screen’ or ‘put content on the screen’. The amount and reason of saved
words can shift significantly between diverse programming dialects but, as we ended up
more experienced as a designer, we are going begin to recognize repeating concepts.
An identifier might be a developer inviting title which addresses a sum set aside in the
PC's Smash. Various kinds of identifier are used in programs, yet a couple of the most
well-known sorts are variable and constant. For instance, when an individual logs into a
program, their name and secret word would ordinarily be put away as factors, as these
subtleties would be distinctive for every client. In any case, a program figuring the cost
of another TV in a shop's electronic till would need to guarantee that the current pace of
any business charge is added to the cost. Deals charges shift in nations around the globe,
yet the manner in which they are overseen in a program is the equivalent. This worth
would not change for each deal, so it very well may be set as a steady. To make a
constant or a variable, you should give the programming language with two things which
are name and data type.
Practically all programming dialects uphold the idea of data types. An information
type is used to characterize what sort of significant worth a variable or steady can store,
what activities can be performed upon it and its conduct inside the program. Most
programming dialects offer a wide range of information types for the software engineer
to utilize. Here I wrote common data types : character, string, integer or int, real and
boolen or bool.
A few dialects are supposed to be specifically while others are feebly composed. This has
a major effect to the convention of the programming language. Specifically programming
dialects require data and data types to be reliable at the point when they are utilized.
For instance, in Java, if a "variable" has been proclaimed an integer, it should just be
utilized to store integer variables, in any case mistakes may happen. This is on the grounds
that Java is a firmly composed language. Notwithstanding, C is inexactly composed: it will
verifiably change over the data to the right data type that the "variable" expects without
the developer expecting to add any explicit code to do as such. This is an advantageous
component, however it can prompt unforeseen outcomes.
Statements are the center part of many programming dialects. They characterize the
essential activities that can be performed and regularly join various language builds. There
are two types of statement those are output and input.
This is an data structure which is utilized to store an assortment of characters with one
character negligibly requiring one byte of RAM. Strings might be 'fixed length' for instance,
as it were containing ten characters. On the other hand, they can utilize an uncommon
terminator character to stamp their end. This may imply that a string requires an extra
character to be included, however it permits them to have adaptable lengths. Every
individual character in a string can be gotten to by utilizing its positional list. The principal
position list is consistently 0.
Customarily, array is a static information structure, which implies that it has a fixed size.
Be that as it may, present day programming dialects are commonly more adaptable and
permit an array to be resized. Normally an array can just store one sort of data like
character, integer and bool. A two-dimensional array is like a one-dimensional array, yet it
can store different columns of data.
A record or structure is a comparative idea to a array. In any case, it contrasts since it can
store a blend of data types inside its structure. For instance, it very well may be utilized to
store subtleties.
In spite of the fact that strings are essentially an assortment of characters, they may at
present should be prepared. This errand is normally referred to by software engineers as
string dealing with. Developers frequently need to play out specific procedure on strings
and most elevated level dialects have master library capacities to help.
I wanted to write more but I think this is enough because this is a question I
think it's a bit complicated and it takes a lot of time and pages I think it may be
like book.
Fifth Question
In registering, logic is the arrangement of standards underneath the various
components of a program or on the other hand framework that permits the program
or framework to work. Effective program plan profits by the use of basic rationale.
This is a higher priority than the capacity to think in a specific programming language.
Having the option to think legitimately will help us to deal with information
effectively, structure complex conditions which empower us to test information
suitably and assemble amazing calculations to tackle even the most perplexing issues.
The standards of rationale utilized in figuring incorporate mathematical logic,
iterations, propositional logic and the use of sets. These ideas help software
engineers to comprehend issues all the more completely and assemble the rationale
that is consolidated into their projects.
Mathematical logic can be applied to assist engineers with comprehension and precisely
depict the essential realities in an issue and their connections to each other. For example,
inference is the cycle used to arrive at an obvious end result from premise which are
thought or known to be valid. This can be found in the accompanying model:
Milk come from cows. True. (premise)
Milk come from animal. False (inference)
Iteration happens when a computational strategy is applied to the consequence of a
past application.
Propositional rationale depends on the basic idea that a sentence can be considered to
be either obvious or bogus, however not both valid and bogus. For example
o snow is cold
o jungle is dry
More unpredictable recommendations can be made utilizing connectives. There are five
fundamental connectives. Every one has a word and image structure
I wrote a lot incase of describing program because I cant download Microsoft Visual
Studio