Abstract

This paper describes a programming system used in the teaching of two Computer Science courses at The Pennsylvania State University (7). The courses are; an upper level undergraduate-beginning graduate level course in graph theory, and a graduate level course in the theory of graphs and networks. As can be ascertained from the description of these courses they are not primarily what would normally be called programming courses. However, since they are computer science courses they do stress the computational aspects of graph and network theory and analysis. Past experiences have indicated that if a computational problem of any reasonable complexity is assigned in class the majority of the students focus an inordinate amount of their energies to the programming problems, and consequently fail to grasp the significant features of the theoretical problems involved. In addition, since graph and network theory encompasses not only computer science, but engineering and physical, and to a lesser extent, the social sciences, many of these students would be unduly burdened by writing many rather complex programs. On the other hand, teaching the computational aspects of graph theory without doing some programming is equally ludicrous. Thus, a default type solution of assigning two or three problems from a narrow set of problems was rapidly becoming an undesirable solution to this dilema. It was at this point that the concept of a dynamically growing programming system, as described in this paper, began to formulate itself.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call