Current location - Training Enrollment Network - Mathematics courses - What is the relationship between programming and mathematics?
What is the relationship between programming and mathematics?
What is the relationship between programming and mathematics? Hello, I am a junior majoring in computer science. Let me talk about the relationship between mathematics in my impression:

First, programming embodies a person's logical thinking. Since it involves logic, it must have something to do with mathematics. But the depth of the relationship with mathematics depends on the aspects you are involved in.

Second, the programming must learn mathematics:

1. The most basic knowledge of sum operation: the concept of binary (directly applied to Huffman tree, Havermann coding, etc. ), the concept of remainder (used in cyclic connection and random number), basic plane geometry (used for drawing windows, curves, custom buttons and other graphics), and some very basic mathematical knowledge are absolutely not beyond the scope of junior high school.

2. Mathematical knowledge in computer: The main course is called discrete mathematics, which is about the related knowledge of logical algebra. In fact, the importance of this course will not be directly reflected in real programming. For beginners, it is enough to know what is right and wrong and what is setting. Discrete mathematics also involves some concepts of graphs and trees, which I will put into the data structure first.

3. As I said before, programming is directly related to your needs, and some programming fields are inseparable from mathematical knowledge:

1) Do the bottom layer: For example, if you want to design a set of your own windows fonts, it will inevitably involve font smoothing, which involves a difficult mathematical knowledge: interpolation. All this knowledge is explained by numerical analysis. Without the foundation of advanced mathematics, the possibility of learning this course is almost zero. . . This course mainly talks about how to use computers to solve problems in advanced mathematics, such as Taylor interpolation, Lagrange interpolation, and solving general equations or differential equations. Anyway, I forgot that it is very difficult knowledge. And a lot of programming at the bottom is based on these.

2) Graphics: CG technology is in full swing in the game, which makes many junior and senior high school students fascinated by graphics for a long time, but they don't know that the knowledge of computer graphics is based on many college mathematics courses. Especially the study of graphic theory, it is impossible to understand without the foundation of linear algebra. The knowledge of polar coordinates in advanced mathematics involves three-dimensional views. Many algorithms, such as beam -Baskey algorithm, require very high plane geometric analysis! If you want to engage in game design and animated films (this is a script writing program, otherwise the picture can't be so good), I advise you to go to college for further study.

3) Algorithm: Learning algorithm is better than mathematics, but better than intelligence. . . Such as divide-and-conquer method, dynamic programming algorithm, backtracking method, etc. There is a high demand for the preliminary analysis of the problem, especially the listing of recursive equations, which I think is a test of intelligence. Some knowledge, such as graphic algorithm, application of tree, sorting and query, involves another course of computer major: data structure, which is one of the core courses of computer major and the biggest difference between professional and non-professional. This course has low requirements for mathematics, but high requirements for thinking. There are also problems like computational geometry, which are purely mathematical problems. . .

4) engage in cryptography: I don't engage in this field, and I haven't studied it, but I heard that it is extremely demanding on mathematics! Because I am good at math, I have always been recommended to do this, but I flinch at the thought of facing numbers. . .

The above is the branch of computer related to mathematics that I know. Every aspect is enough for a lifetime, and you can learn well, and your future and money are great!

Third, so many aspects are related to mathematics, can't you learn programming? There are still some aspects that have relatively low requirements for mathematics. I say relatively low because no matter which aspect will involve some basic mathematical algorithms. Generally speaking, the higher the level, the lower the requirements for mathematics. For example, MFC, network programming and system programming are packaged, but overall planning and design are more critical for a system, that is to say, early demand analysis, logical structure design and physical structure design are more important than coding, and of course the salary is higher. . .

Finally, I want to give you some advice on learning programming:

1) As you are still young, I hope you don't put too much energy into it, because of the education and physical problems in China. . . I think you know. Although I have heard that a child becomes a millionaire after playing a game, it seems that he is the only one after so many years. Don't doubt your own strength, but don't fantasize that you have this luck. . .

2) Programming pays attention to logical thinking. You are a junior high school student, and you don't know whether your brain is mature (by no means that your intelligence is low, you should know that your brain develops in stages), so you should focus on the language foundation, and the requirements for mathematics are not very high.

3) Please choose a language to practice. Programming pays attention to practice. There is no practice, only theory shows that you have not studied, so you must practice more. As for languages, I suggest learning C or C++. As for what C and C++ are and how to learn them, this is another difficult topic. . . Be careful not to learn VC++(MFC), or you will accomplish nothing!

4) Programming is boring, so be patient. Don't flinch when you see a problem. Throw away the book when you see a concept you can't understand. If not, please read more basic knowledge. Probably the language foundation is not in place.

That's all. I hope my answer will help you. You can keep asking questions. If you encounter any problems in the programming process, you can also call me. You are very welcome!

What is the relationship between BCB and COM programming? BCB is Borland's integrated development environment, which also supports programming.

Because borland has implemented its own interface, if you want to change the automatically generated code in it, you may need deeper skills. It was declared during the build. If the file is changed, you can automatically recreate it. Actually, any language will do.

What is the relationship between programming and database? It's true.

This database is used to store customer's business data. In software development, the business data in the database is needed when writing the customer's business process.

In addition, the database itself provides transaction, security and other processing mechanisms to solve the concurrency and security of data access. So you don't have to write this part of the code, which greatly reduces your programming.

Vc++ can cooperate with almost all major databases, such as Oracel and SQL Server.

The relationship between mathematics and programming. Programming needs logical thinking ability most, but logical thinking is always associated with mathematics. Mathematics exercises people the most and needs logical thinking ability the most.

What is the relationship between programming and database? A database is like a data warehouse. It provides space and methods for data storage. Programming calls the database to realize the use of the database.

How to treat the relationship between mathematics and programming Mathematics is a highly instrumental science, and it is also highly abstract compared with other sciences. At first, computer scientists were inseparable from mathematics. Mathematicians thought computers were dispensable to them, but now they are inseparable from each other. Computers have also raised the status of mathematicians in people's minds. Most mathematicians began to realize the importance of computers, and more and more entered the computer field to play a role. However, with the rapid development of artificial intelligence, global positioning system (GPS) and the leap-forward improvement of computer operation efficiency, the advantages of computers are more and more deeply in the field of thinking, so computers apply advanced mathematical theories to practice and solve many practical problems very effectively. For example, the famous four-color problem is proved by computer. There are many practical branches of mathematics in the process of solving problems, such as analytic geometry, wavelet analysis, discrete mathematics, bionic calculation, finite element method in numerical calculation and so on. It lets people know that computer programming combines mathematical knowledge and mathematical ideas.

Software programming is based on mathematical model, so mathematics is the main foundation of computer science, and applied mathematics, represented by discrete mathematics, is the main tool to describe the theory, method and technology of the subject. In software programming, not only many theories are described by mathematics, but also many technologies are described by mathematics. As far as the programming of various computer applications is concerned, the corresponding calculation method of any program that can be executed on an electronic digital computer with stored programs must first be constructive, the data representation must be discrete, and the calculation operation must be carried out by logical or algebraic methods, all of which should be embodied in the algorithms and programs. In addition, so far, the theoretical basis of the correctness of the algorithm, the semantics of the program and its correctness is still mathematical logic or further model theory. True process semantics is semantics in the sense of model theory. Therefore, the strict realization of software programming ideas and the high consistency between subject theory and realization technology are the fundamental reasons for the close relationship between computer science and technology and mathematics. From the perspective of discipline characteristics and discipline methodology, the main basic idea of software programming is mathematical thinking, especially discrete mathematics represented by algebra and logic in mathematics, while programming technology and electronic technology are only the product or a technical expression of computer science and technology.

(A) the development of mathematics in the computer field

Now all forms of software are inevitably related to mathematics, and they complement each other. For example, the application of logic in disciplines has developed from early mathematical logic to today's program model theory; The application of mathematics in the discipline has developed from the early abstract algebra to today's graphics and engineering problems. The application of geometry has developed from the early two-dimensional plane computer drawing to today's three-dimensional animation software system, and fractal theory and technology have appeared in the combination with complex analysis; In the development of games and graphics software, coordinate transformation and matrix operation in linear algebra are widely cited. Wavelet theory and algebraic coding theory are introduced into data compression and recovery and information security.

(B) the thinking mode of software programming

The mentality of software programming determines a person's programming level. In the process of programming, the mathematical thinking is clear and the program written is refreshing. Combined with teaching, through investigation and analysis, it is known that more than 85% students write programs according to grammar when programming, which is completely out of the thinking of software programming. This mentality makes their programs quite bad and illogical.

The reason for this kind of thinking in software programming is that they usually do not pay enough attention to the cultivation of mathematical thinking. Many computer majors think: What's the use of learning advanced mathematics? What's the use of learning linear algebra? What's the use of learning discrete mathematics? So they seldom go to these classes, so, so, they stay in the dormitory all day, playing games, installing software and watching C language. I only know that probability problems and matrix knowledge have supplemented other courses, but I haven't learned much. But when they see; & gt Sometimes, they feel that the content is quite difficult for them to understand, and then they vaguely feel the role of mathematical thinking. Before that, they not only ignored the advanced mathematics in universities, but also forgot a lot about elementary mathematics in junior high schools. When they are thinking in a highly abstract way, they really feel that their thinking is already slow. The reason why students majoring in computer science find the course Data Structure difficult is because they have not exercised enough mathematical thinking! In fact, there are many such examples in life: for a college student who just graduated from writing application software, when using the matrix of linear algebra in programming, I am afraid that it is good to learn linear algebra well in college; When using dynamic link series and trees in the program, I am afraid I will think "how meaningful it is to spend some time learning data structures in college"; When studying data structure, I am afraid I will also think, "Why do you skip so many classes when studying discrete mathematics?" Otherwise, it is easy to learn discrete mathematics. " . Therefore, mathematical thinking is not enough, software programming will have a lot of doubts, obviously a little timid, and the written program is not sound enough and lacks logic.

(C) the integration of software programming and mathematical thinking

Many professionals think that math and software programming skills are like Tai Chi and boxing. Strong software programming ability is like punching fast and heavy, which can directly give people a heavy blow. If you are good at math, you are like master Chi of Artest. On the surface, you don't have much strength, but your inner energy is stronger. But the younger a good boxer is, the better. Tai Chi masters are all experienced. Therefore, mathematics is the necessary ability to achieve a master. Although many students seem to feel useless, they will realize its power after reaching a certain level.

What is the relationship between agile development and extreme programming? The word "agile" refers to an idea of software development. Many methods can be classified as agile, such as XP, Scrum, lean development and so on. Each method has its own specific ideas, communities and leaders. Of course, if a community wants to claim to be an agile person, it must follow some of the same principles. Each community also borrows ideas and technologies from other communities. There are also many people coming and going between different communities, so they spread different ideas everywhere. All these make agile society a complex dynamic ecosystem.

The relationship between linear mathematics and discrete mathematics and programming requires the use of these two courses in data structure, mainly in the underlying development or game making of C language or C++. Only 5% programmers in this world can use these courses, and others can't use them at all, such as desktop programming (VB, DELPHI, C++) or website backstage (. NET,J2EE)。 Simply put, if you don't do basic development or game development,

What is the relationship between automation major and programming? First of all, one thing:

Automation major is a good major, with related work, and C and C are also used.

++,assembly programming, VB, etc. There is also a lot of fun.

Your major has nothing to do with your favorite WINDOWS programming, but you have to understand that only 20~30% of what you learned in college can be used in your future work. So in college, you only learned the basics, some programming methods and ideas, so it's not very important to study that major. It's important that you have clear hobbies and plans for your future work.

So what you have to do now is to study hard at specialized courses and keep learning by yourself along your hobbies.

What is the relationship between Java programming and tank t 1 level? T 1 and t2 are objects of type Tank.

Level is a variable in the tank class, and each tank object has a level.

It can be understood that in a game, each tank has a level, and t 1 and t2 are the names of tanks.

Upstairs is wrong. Level is a variable in Tank, not a method in t 1