Development and documentation of computer programs in undergraduate computer science programs

Author(s):  
Linda L. Deneen ◽  
Keith R. Pierce
Author(s):  
Rahime Yilmaz ◽  
Anil Sezgin ◽  
Sefer Kurnaz ◽  
Yunus Ziya Arslan

A program is composed of commands, which runs within a computer or an electronic circuit. Programming is a mathematical methodology to write a program and to encode the algorithm into a notation. It can be classified into two groups such as system and application programming. System programming is a branch of the general programming that is composed of low level instructions which are used to operate and handle computer hardware. Application programming is considered as the improved version of the computer programs which can perform specific tasks. One of the application programming types is the object-oriented programming (OOP) which is about how information is represented in human mind. OOP is useful to provide easy modeling in design and developing real entities. This approach is aimed to model the entities and the relationships existing between them. OOP enables to define the required classes to create the objects and to apply modifications on them. The inherent properties of OOP are modularity, extensibility and reusability. This chapter provides a substantial survey of OOP.


2010 ◽  
Vol 46 ◽  
Author(s):  
Scott Hazelhurst

The level of detail and precision that appears in the experimental methodology section computer science papers is usually much less than in natural science disciplines. This is partially justified by different nature of experiments. The experimental evidence presented here shows that the time taken by the same algorithm varies so significantly on different CPUs that without knowing the exact model of CPU, it is difficult to compare the results. This is placed in context by analysing a cross-section of experimental results reported in the literature. The reporting of experimental results is sometimes insufficient to allow experiments to be replicated, and in some case is insufficient to support the claims made for the algorithms. New standards for reporting on algorithms results are suggested.


2021 ◽  
Vol 11 (1) ◽  
pp. 346-363
Author(s):  
Al Cuoco ◽  
Paul Goldenberg

How you think about a phenomenon certainly influences how you create a program to model it. The main point of this essay is that the influence goes both ways: creating programs influences how you think. The programs we are talking about are not just the ones we write for a computer. Programs can be implemented on a computer or with physical devices or in your mind. The implementation can bring your ideas to life. Often, though, the implementation and the ideas develop in tandem, each acting as a mirror on the other. We describe an example of how programming and mathematics come together to inform and shape our interpretation of a classical result in mathematics: Euclid's algorithm that finds the greatest common divisor of two integers.


Author(s):  
John W. Coffey

Computer software pervades our lives today. Nevertheless, software is one of the few products for which producers generally provide no express or implied warranties, a truly striking fact since peoples' lives depend in such fundamental ways on these products. This article addresses why such an unintuitive (and undesirable) situation might exist. It will catalog a range of computer science proof techniques and their historical antecedents, the purposes they serve, and several foundational concerns that elude proof techniques of any kind. Along the way, the concept of intractability and its role in computing will be explored as it pertains to algorithmic complexity and to proofs of the meanings of computer programs.


Author(s):  
Светлана Мамаджанова ◽  
Икбол Джураев

Аннотация: В данной статье рассмотрены проблемы учащихся возникающие при выполнении домашнего задания по информатике. Проведен сравнительный анализ ряда компьютерных программ и мобильных приложений, которые могут с успехом использоваться учащимися при выполнение домашнего задания в домашних условиях. Аннотация: Ушбу мақолада ўқувчиларнинг информатика фанидан уй вазифаларини бажариш жароёнида келиб чиқадиган муаммолари кўриб чиқилган. Уй вазифасини уй шароитида бажаришда ўқувчилар томонидан муваффақиятли ишлатилиши мумкин бўлган бир қатор компьютер ва мобил иловаларнинг қиёсий таҳлили келтирилган. Abstract: This article discusses the problems of students arising from homework in computer science. A comparative analysis of number of computer programs and mobile applications that can be successfully used by students when doing homework at home is carried out.


2013 ◽  
Vol 28 (22n23) ◽  
pp. 1340021 ◽  
Author(s):  
SÉRGIO ALMEIDA

High Performance Computing (HPC) has become an essential tool in every researcher's arsenal. Most research problems nowadays can be simulated, clarified or experimentally tested by using computational simulations. Researchers struggle with computational problems when they should be focusing on their research problems. Since most researchers have little-to-no knowledge in low-level computer science, they tend to look at computer programs as extensions of their minds and bodies instead of completely autonomous systems. Since computers do not work the same way as humans, the result is usually Low Performance Computing where HPC would be expected.


1998 ◽  
Vol 4 (3) ◽  
pp. 237-257 ◽  
Author(s):  
Moshe Sipper

The study of artificial self-replicating structures or machines has been taking place now for almost half a century. My goal in this article is to present an overview of research carried out in the domain of self-replication over the past 50 years, starting from von Neumann's work in the late 1940s and continuing to the most recent research efforts. I shall concentrate on computational models, that is, ones that have been studied from a computer science point of view, be it theoretical or experimental. The systems are divided into four major classes, according to the model on which they are based: cellular automata, computer programs, strings (or strands), or an altogether different approach. With the advent of new materials, such as synthetic molecules and nanomachines, it is quite possible that we shall see this somewhat theoretical domain of study producing practical, real-world applications.


Author(s):  
Rahime Yilmaz ◽  
Anil Sezgin ◽  
Sefer Kurnaz ◽  
Yunus Ziya Arslan

A program is composed of commands that run within a computer or an electronic circuit. Programming is a mathematical methodology to write a program and to encode the algorithm into a notation. It can be classified into two groups such as system and application programming. System programming is a branch of the general programming that is composed of low-level instructions which are used to operate and handle computer hardware. Application programming is considered as the improved version of the computer programs that can perform specific tasks. One of the application programming types is the object-oriented programming (OOP) which is about how information is represented in human mind. OOP is useful to provide easy modeling in design and developing real entities. This approach is aimed to model the entities and the relationships existing between them. OOP enables to define the required classes to create the objects and to apply modifications on them. The inherent properties of OOP are modularity, extensibility, and reusability. This chapter provides a substantial survey of OOP.


2020 ◽  
pp. 126-136
Author(s):  
Marcel Danesi

Mathematics has formed a partnership with computer science, since at least the 1940s. Devising algorithms and turning them into computer programs is akin to deconstructing a problem, a proof, or a theory into its key components. In other words, a computer can be used to attack the problem of decidability, discussed in the previous chapter, on the basis of the validity (or not) of some algorithm. This chapter deals with this key notion, completing the chain of ideas described in this book that started with Pythagoras. Although not named in this way, the concept of algorithms goes back to Euclid and his Fundamental Theorem of Arithmetic. Computers are adept at solving all kinds of problems that involve pattern and structure. They do so by computing all possibilities for a problem, rather than providing a theoretical explanation for the solution. The latter is left up to the programmer—in this case, the mathematician.


Sign in / Sign up

Export Citation Format

Share Document