Home | Contact Us | Site Map | Search     

Johns Hopkins University Logo

Center for Talented Youth

En Español   

New Here? | MyCTY Login | Apply | Alumni

Male Student Outdoors on Laptop
Students play a game after class
Home > Summer Programs > Employment
CTY Summer Employment

Math and Computer Science

Listed below are the math and computer science courses offered in 2008, and at which site and session each course is offered. If you are unfamiliar with our site codes, please see the site key below. The course title links will take you to the appropriate catalog course description and links to sample syllabi for the course.

If you would like to read about science, writing, or humanities courses, select the appropriate discipline in the following drop down menu.


Math and Computer Science Course Offerings

view site key

Session 1: June 26 - July 19, 2008
Session 2: July 19 - August 9, 2008

* = day site (no room or board provided)
** = international site (dates vary)

Grade

Code

Math Courses

Sites and Sessions

2-3

MPSE

Math Problem Solving

ALE-2* LAJ-1* MTA-1* SAN-1&2* STP-1* WIN-1&2*

3-4

GEOM

Geometry and Spatial Sense

ALE-2* LAJ-1* MTA-1* SAN-1&2* STP-1&2* WIN-1&2*

4-5

NUMR

Numbers: Zero to Infinity

ALE-2* LAJ-1* SAN-1&2* STP-2* WIN-1&2*

5-6

INDE

Inductive and Deductive Reasoning

ALE-2* BTH-1&2 CAL-1&2 CHS-1&2 LAJ-1* PAL-1&2 SAN-1&2* SHD-1&2 STP-1&2*

5-6

HMAT

Great Discoveries in Mathematics

PAL-1&2 SHD-2

5-6

DACH

Data and Chance

CAL-1 CHS-1&2 PAL-1&2 SHD-1&2 STP-1* WIN-1&2*

5-6

MATS

Individually Paced Math Sequence

ALE-2* BTH-1&2 CAL-1&2 PAL-1&2 SAN-1* SHD-1

7+

MATH

Individually Paced Math Sequence

JHU-1&2 LAN-1&2 SAR-1&2

7+

GEOA

Geometry and Its Applications

BTH-1&2 BRI-1&2 CAL-1&2 EST-1&2 SCZ-1&2

7+

DMAT

Discrete Math

EST-1 SCZ-1

7+

CHAF

Chaos and Fractals

EST-2 SCZ-2

7+

MODL
MATX
MMOL

Mathematical Modeling

BRI-1 EST-1&2 SAR-1&2 SCZ-1&2 SPN-2**
7+MONYThe Mathematics of MoneyBTH-1&2 BRI-2 CAL-1&2 MEX-1** SCZ-1&2

7+

GAME

Probability and Game Theory

CAR-1&2 LAN-1&2 LOS-1&2 SAR-1&2

7+

REAS

Mathematical Logic

JHU-1&2 LAN-1&2 LOS-2

7+

CODE

Cryptology

CAR-1&2 LAN-1&2 LOS-1&2 LOU-1&2

7+

THEO

Number Theory

LAN-1&2

9+

ADGA

Advanced Game Theory

CHI-1**

9+

GAMTApplied Mathematics: Game TheoryTEC-1**

10+

CRYP

Advanced Cryptology

PRN-1

Grade

Code

Computer Science Courses

Sites and Sessions

5-6

IROB

Introduction to Robotics

CHS-1&2 LOU-1&2 PAL-1&2 SAN-1&2* STP-1&2*

7+

CMPS

Foundations of Programming

BTH-1&2 BRI-1&2 CAL-1&2 EST-1&2

7+

FCPS

Fundamentals of Computer Science

LAN-1&2 LOS-1&2 LOU-1&2 SAR-1&2

7+

TCOM

Theory of Computation

LAN-1

7+

DATA

Data Structures and Algorithms

LAN-1
9+CSCIFundamentals of Computer ScienceTEC-1**

  


Site Key

CodeSiteCodeSiteCodeSite
ALEAlexandria, VA*LANLancaster, PASARSaratoga Springs, NY
BRIBristol, RILAJLa Jolla, CA*

SCZ

Santa Cruz, CA
BTHBethlehem, PALOSLos Angeles, CASFUSan Francisco, CA
CALThousand Oaks, CALOULoudonville, NYSHDSouth Hadley, MA
CARCarlisle, PAMEXPuebla, Mexico**SPNMadrid, Spain**
CHINanjing, China**MTAPasadena, CA*STPBrooklandville, MD*
CHSChestertown, MDPALPalo Alto, CATECMonterrey, Mexico**
ESTEaston, PAPBDBaltimore, MDWINLos Angeles, CA*
JHUBaltimore, MDPRNPrinceton, NJ
KNEKaneohe, HISANSandy Spring, MD*


* = day site (no room or board provided)
** = international site

back to list of math and computer science courses


Math

Math Problem Solving

If a classmate sent you the cryptic message L ORYH PDWK (Caesar Cipher, n=3), what response would you send back?

The art of problem solving in mathematics is far more complex than simply translating a word problem into numbers and symbols and applying an established method to generate an answer. It is about what to do to solve a problem when you don’t know what to do and finding a path to a solution when there is no clear place to begin.

In this course, students learn general strategies for solving problems that involve a range of mathematical concepts. Challenging problems lead students to practice approaches such as drawing diagrams and graphing, making lists, estimating, eliminating unreasonable possibilities, identifying patterns, guessing and checking, and using variables.

Working individually and in pairs or small groups, students learn to ask precise and thought-provoking questions, to match appropriate strategies to particular problems, and to explain their thought processes. The instructor incorporates demonstrations, activities, games, and explorations that nurture students as critical thinkers and creative problem solvers, strengthening their mathematical reasoning abilities and preparing them for future study in discrete math and probability, cryptology, and other growing fields of mathematics.

If you replied to your classmate with VR GR L, then this course may be for you.

Sample text: Materials compiled by the instructor.


back to list of math and computer science courses


Geometry and Spatial Sense

Spatial understanding is necessary for interpreting, understanding, and appreciating our inherently geometric world. Many tasks a person performs—whether rearranging furniture in a room, solving a jigsaw puzzle, or laying out a garden—require good spatial sense and knowledge of how different shapes fit together. This course emphasizes spatial awareness and geometric vocabulary building, developing the students’ ability to be a part of an intellectual mathematics community within the classroom.

Through interactive investigation and discussion, students discover mathematical relationships such as congruence, symmetry, and reflection. They learn geometric formulas to calculate area, surface area, perimeter, circumference, and volume and are asked to explain their findings using geometric terminology. Students explore the geometric properties of regular polygons and create their own polyhedra using paper-folding techniques.  Tessellations, similarity, measurement, polygons, polyhedra, and curved shapes are investigated through two- and three-dimensional physical models and drawings. Students also construct classic geometric figures using a straight edge and a compass and are introduced to the basic elements of geometry. Through explorations and demonstrations students leave this course with greater spatial sense as well as a solid understanding of foundational geometric concepts.

Sample text: Materials compiled by the instructor.

back to list of math and computer science courses


Numbers: Zero to Infinity

What does a subatomic particle measured in femtometers have in common with a galaxy measured in light years? Both are a part of the unique human effort to quantify the world around us. In this course, students explore numbers, from the very small to the unimaginably large, and learn how numeric representations help to explain natural phenomena such as time, distance, and temperature.

Moving beyond traditional arithmetic, this course centers on hands-on activities that develop understanding of the scope and scale of numbers. Students consider such questions as: if your dog were the size of a dinosaur, how much dog food would you need? They develop approximation and computational strategies for learning scientific notation, and determine whether answers to problems are reasonable. In examining the diversity of measurement systems, students learn the origins of some familiar and unfamiliar methods of measurement and invent their own units of measurement. Additionally, students use dimensional analysis to investigate conversions between different scales or systems of measurement. They apply concepts of ratio and proportion by constructing and analyzing scale models of our solar system, the human body, and other objects in our natural world.

Note: For many aspects of this course, students will be asked to work without a calculator. Calculators will be used only when extensive computations are needed.

Sample texts: Materials compiled by the instructor; a supplemental text such as Gulliver’s Travels, Swift.


back to list of math and computer science courses


Inductive and Deductive Reasoning

Reasoning, logic, and critical thinking skills are the building blocks of intellectual inquiry. This course focuses on developing these skills through problem solving, puzzles, and exposure to a wide range of topics in mathematics. Students learn to distinguish between inductive and deductive reasoning and examine the roles played by each in mathematics.

What is the next term of the sequence 1, 5, 12, 22, 35? How do these numbers relate to triangular and square numbers? Students’ introduction to inductive reasoning begins with a search for patterns in data and creating recursive and explicit formulas to describe those patterns. Students master material by considering puzzles, logic problems, algebraic and geometric concepts, patterns, and real-world questions that can be answered using induction.

As they move on to topics in deductive reasoning, students learn to use a system of logic to draw conclusions from statements that are accepted as true. Students encounter a variety of classic problem types as they explore symbolic logic, truth tables, axiomatic systems, matrix logic, syllogisms, Venn diagrams, knights and knaves problems, and Euler circuits. Emphasis is placed on the importance of proving conclusions using sound arguments and developing the ability to recognize fallacious reasoning.

Sample texts: Materials compiled by the instructor; a supplemental text such as The Number Devil, Enzensberger.

back to list of math and computer science courses


Great Discoveries in Mathematics
(This course was formerly known as Problems, Strategies and Solutions: History of Mathematics)

From ancient to modern times, mathematics has been fundamental to the development of science, engineering, and philosophy. In this math course, students consider the questions and problems that have fascinated humans across cultures since the beginning of recorded history.

Throughout the course, students explore number systems and mathematical concepts first considered by early cultures, including the Egyptians, Greeks, Mayans, and Babylonians. They work through problems discovered in ancient texts, such as the Rhind Papyrus, the Plimpton 322 tablet, and the Rosetta Stone. Additionally, they consider their newfound conceptual knowledge in its historical context. For example, students do hands-on measurements and solve problems using the transcendental number pi. Along with this mathematical work, they look at the social and historical importance of pi, from its approximated value of three in the Bible, to its computer-calculated value up to a billion digits.

By examining the historical development of major mathematical ideas, students leave the course with a greater awareness of a wide range of topics within mathematics, including number theory, algebra, and geometry. They acquire a solid background in mathematical concepts they will encounter in more advanced course work.

Sample text: Materials compiled by the instructor.

back to list of math and computer science courses


Data and Chance

Behind only one of three doors is a fabulous prize. After you choose door #1, the host, who knows where the prize is hidden, reveals door #2 has nothing behind it. She then offers you the opportunity to change your selection. Should you switch to door #3? This classic example of conditional probability, in which you determine the chance of something happening given that something else already has happened, is not as simple as it seems.

In this course, students develop a greater understanding of data and chance, two areas of mathematics that easily transfer from the classroom to the real world. Students conduct experiments and generate data which they display in graphs, charts, and tables in order to compare the effects of particular variables. For example, students might analyze data to examine how various design characteristics of a paper airplane, such as weight or length, affect the distance it will travel. In addition, students consider other data sources, including newspapers and journals, and identify examples of incorrectly gathered or misrepresented data that have been used to mislead consumers or influence voters.

Students also explore probability, the study of chance, to learn how to use numerical data to predict future events. Students examine permutations and combinations; develop strategies for calculating the number of possible outcomes for various events; calculate probabilities of independent, dependent, and compound events; and learn to distinguish between theoretical and experimental probability.

By the way, the answer to the question is that you should switch.

Sample text: Materials compiled by the instructor.


back to list of math and computer science courses


Individually Paced Math Sequence

www.cty.jhu.edu/summer/mathsequence.html

Individually Paced Math Sequence includes courses in Arithmetic, Pre-algebra, Algebra I, Geometry, Algebra II, and pre-calculus topics including Functions, Trigonometry, Discrete Math, and Analytic Geometry. It is designed for students with the interest and ability to accelerate their study of mathematics.

Inspired by research conducted by Johns Hopkins University’s Study of Mathematically Precocious Youth (SMPY), this course is designed for students with strong independent learning skills, high self-motivation, and high mathematical ability. Math Sequence allows students to work independently at a pace commensurate with their individual abilities.

At the beginning of the session, instructors assess the knowledge base of each student with diagnostic testing. The results of this testing, together with information provided by students and their schools, determine the appropriate starting point for each student in CTY’s curriculum and allow students to focus their attention on unfamiliar material.

For most of the day, students work on their own, solving problems from their textbooks. The instructor and assistant monitor each student’s progress carefully and offer support and individualized instruction as needed. Students must demonstrate a mastery of the concepts and skills within each subject area before moving on to the next topic.

For more information, visit the Math Sequence Web Page

Sample texts: Algebra, Smith; Geometry, Jurgensen; Algebra and Trigonometry, Smith; Advanced Mathematics, Brown; Precalculus with Trigonometry, Foerster.

back to list of math and computer science courses


Geometry and its Applications

The word “geometry” means “earth measurement.” It is the branch of mathematics most strongly connected to the physical world. Therefore, it has many applications to problems encountered in everyday life by every culture, past and present. Long before Pythagoras introduced his famous theorem, ancient Egyptians used geometry to form right angles to resurvey the Nile River Valley after the annual floods. Today, NASA scientists use the same formulas and theorems to determine the proper angles and arcs for the orbital paths of modern telecommunications satellites.

In this course, designed as an introduction to geometry, students learn about geometric figures, properties, constructions, and proofs, with an emphasis on their wide applicability to human activity. Concepts are studied in depth through practice exercises and problem-solving activities. Students are exposed to many examples in which geometry is used in recreation, practical tasks, science, and the arts. While this course covers conceptual material, the focus is on applying geometry to solve problems and on discovering the importance of mathematics in a wide range of disciplines and situations.

Note: This course is recommended as preparation for students who plan to take Geometry at school. Students should not use this course to replace a geometry course at their schools. Students are exposed to geometric properties and concepts, but due to the focus on applications they do not cover the breadth of material found in a year-long geometry course.

Sample text: Discovering Geometry: An Inductive Approach, Serra.

back to list of math and computer science courses


Discrete Math

Can any given map be colored with just four different colors such that no two regions sharing a common edge are the same color? Mathematicians took more than 100 years to demonstrate this is possible and thus prove the Four-Color Theorem. Such questions are the domain of discrete math, a field that examines objects that have values characterized by natural numbers. This course focuses on two core areas within discrete math: combinatorics and graph theory.

Students begin by building a foundation in set theory, induction, and proof construction. They then explore combinatorics, examining the number of possible configurations of different sets of objects. Even when the conditions specified for a configuration are relatively simple, counting the possibilities often requires great ingenuity. Combinatorics lays the groundwork for investigations in diverse areas of higher mathematics, including probability, optimization, and number theory.

Students discover natural applications for enumeration techniques when they delve into graph theory, a subject rich in abstract concepts, such as counting and coloring theorems, and in applications, such as traffic networks, models for molecules, and link structures for websites. Unlike familiar graphs of equations, graph theory focuses on objects and the connections between them.

Students leave the course with an enriched mathematical vocabulary, a familiarity with a flourishing branch of mathematics, and an ability to understand and create original mathematical arguments.

Sample text: Materials compiled by the instructor.

back to list of math and computer science courses


Chaos and Fractals

sample syllabus

Can order be revealed in chaos? Can a small action in one part of the world lead to catastrophic consequences in another? For mathematicians the quest to structure the unpredictable dates back to the 1890s and the renowned French mathematician Henri Poincaré. Chaos theory today is an important area of study with applications in meteorology, astronomy, and the arts.

In this course, students investigate the mathematical foundations of chaotic dynamical systems and fractals. They begin by exploring the fundamental process of iteration in functions. Next they examine more advanced concepts including bifurcations, strange attractors, and sensitive dependence related to the "butterfly effect" (which suggests that the flap of a butterfly's wings in Brazil could theoretically cause a chain of events leading to a tornado appearing in Texas). Finally, students explore the underpinnings of fractal images, pictures which exhibit some degree of self-similarity at any scale. Applications of iteration then lead students to the discovery of fractals such as the important Cantor Set or the Mandelbrot Set.

Through these topics students gain a more formal understanding of the basic principles of chaos theory, an area of math often studied only by advanced undergraduate and graduate students.

Sample text: New course

back to list of math and computer science courses


Mathematical Modeling

Mathematics is more than just numbers and symbols on a page. It can be used to determine whether a meteor will impact Earth, predict the spread of an infectious disease, or analyze a remarkably close presidential election. Applications of mathematics are indispensable in the modern world. In this course, students learn how to create mathematical models to represent and solve problems across a broad range of disciplines, including political science, economics, biology, and physics.

Students investigate voting systems by constructing mathematical models of how groups make decisions and how elections are decided. They consider how goods, property, and even political power can be fairly divided and apportioned. Students learn how to use Euler and Hamilton circuits to find the optimal solutions in a variety of real-world situations, such as determining the most efficient way to schedule airline travel. In investigations of growth and symmetry, students develop linear and exponential growth models and explore fractals and the Fibonacci numbers. Students leave this course with the ability to use the seemingly abstract language of mathematics to make the world in which we live a better place.

Note: A graphing calculator, such as a TI-83, is recommended.

Sample text: Excursions in Modern Mathematics, Arnold and Tannenbaum.


back to list of math and computer science courses


Mathematics of Money

New course for 2008!

From managing one’s personal investments to examining the profitability of a multibillion-dollar global corporation, the mathematics of money is at the heart of successful financial endeavors. Why are round-trip fares from Orlando to Kansas City higher than those from Kansas City to Orlando? How do interest rate adjustments made by the Federal Reserve affect the real estate market? How does one calculate the price-earnings ratio of a stock and use that to help predict that stock’s future performance? Mathematics is an indispensable part of the answer to each of these questions.

This course provides students with a rigorous, mathematical grounding in central concepts of business and finance. Students investigate the mathematics of buying and selling, and apply these principles to real world situations. They gain fluency with the concepts of simple and compound interest and learn how these affect the present and future value of loans, mortgages, and interest bearing accounts. Students also explore stocks and bonds and acquire a firmer understanding of national and international financial markets. In their examination of these topics, students manipulate and solve algebraic expressions, as well as learn to apply a range of mathematical concepts including direct and indirect variation and arithmetic and exponential growth. Through simulations, projects, and classroom investigations, this course not only provides students with the foundation required to be more secure in their own personal financial management, but also starts them on the road to becoming the leading financiers and entrepreneurs of the twenty-first century.

Sample texts: New course.

back to list of math and computer science courses


Probability and Game Theory

The study of probability and game theory is an excellent way for students to apply math to real-world situations. Unlike mathematical modeling, which is a broad field, game theory is a very specific branch of mathematics focusing on the application of probability to competitive behavior. Students investigate a variety of topics including voting patterns, coalition building, and bargaining.

In this class, students use mathematical modeling as an important foundation from which they can pursue further investigations. The models of game theory are abstract representations of real-life situations. For example, the theory of Nash Equilibrium has been used to study political competition, and the Prisoner’s Dilemma has been used to analyze the social networks of different populations. The mathematics covered in this course includes concepts of probability and linear algebra. Class exercises involve individual and group work as well as possible class tournaments.

Sample texts: Game Theory and Strategy, Straffin; Thinking Strategically, Dixit.


back to list of math and computer science courses


Mathematical Logic

Reasoning and logic form the backbone of almost every academic discipline. From philosophical argumentation to the scientific method, clear reasoning and consistent logic are the building blocks of serious inquiry. This course introduces students to the basics of mathematical logic and formal proof.

Students acquire a foundation in formal logic, the basis of rigorous mathematical proof. They gain an understanding of the major elements of mathematical logic: validity, soundness, formal proof, and counterexample. As they explore the tools of reasoning, they develop strong problem-solving skills and learn to think analytically. This course emphasizes how to organize knowledge and present solutions to problems in a simple, coherent, and systematic manner. Students analyze the structure of proofs and solve a range of meta-mathematical problems. By the end of the course, students are able to translate statements and arguments and to write their own proofs with increased elegance and assurance.

Sample texts: Logic: Techniques of Formal Reasoning, Kalish et al.; Formal Logic: Its Scope and Limits, Jeffrey.

back to list of math and computer science courses


Cryptology

Information is power. Even before the first written word, the need to safeguard information created an ongoing evolutionary battle between codemakers and codebreakers.

Cryptology is the study of secret writing such as codes and ciphers. In this math course, students begin their journey with an exploration of many early techniques for creating secret writing, such as cipher wheels, the Caesar shift, monoalphabetic substitution, and the Vigenère cipher. They move on to learn about modern techniques including RSA public key cryptography. Delving deeper into modern techniques, students explore how data transmitted by computer can be secured with digital encryption. Discussions about the vulnerabilities of each encryption system enable students to attack and decrypt messages using techniques such as frequency analysis and cribbing. Students apply what they learn to encrypt and decrypt their own secret writing.

Though the course’s central focus is on the mathematics of cryptology, the historical context of cryptography and cryptographic devices is provided to further develop understanding of this branch of mathematics. For example, students examine the design and fallibility of the Enigma Machine, one of the most important cryptographic devices in history.

Sample text: The Code Book, Singh.

Field trip budget (Carlisle and Lancaster only):
$780 — $1170 per 3-week session (depending on enrollment)
Students visit the National Security Agency's National Cryptologic Museum.

back to list of math and computer science courses


Number Theory

Called “the queen of mathematics” by Karl Friedrich Gauss, number theory is the study of the counting numbers, the most basic of all number systems. Despite the simplicity of the counting numbers, many accessible problems in number theory remain unsolved. For example, the Goldbach Conjecture formulated in 1742 posits that every even integer larger than 2 is the sum of two prime numbers.

In this course, students are introduced to the major ideas of elementary number theory and the historical framework in which these concepts were developed. While strengthening their ability to analyze and construct formal proofs, students explore topics including the Euclidean Algorithm and continued fractions, Diophantine equations, Fibonacci numbers and the golden ratio, modular arithmetic, Fermat’s Little Theorem, RSA public key cryptography, and Fermat’s Two Square Theorem. Students leave the course with an appreciation of the elegance of theoretical mathematics.

Sample text: Materials compiled by the instructor.


back to list of math and computer science courses


Advanced Game Theory

sample syllabus

Thomas J. Watson, the founder of IBM, once said, “Business is a game—the greatest game in the world if you know how to play it.” In today’s global economy and the international political arena, the study of games and strategy continues to be a vital part of the education of historians, economists, and politicians. In this course, students learn how to use principles of probability, statistics, and combinatorics to make strategic decisions based on another party’s actions and reactions. With these tools, students investigate the applications of game theory, learning not only how different strategies helped to define historical events, but also how they are applied today in the fields of economics and politics.

back to list of math and computer science courses


Applied Mathematics: Game Theory

New course for 2008!

Thomas J. Watson, the founder of IBM, once said, “Business is a game—the greatest game in the world if you know how to play it.” In today’s global economy and the international political arena, the study of games and strategy continues to be a vital part of the education of historians, economists, and politicians. In this course, students learn how to use principles of probability, statistics, and combinatorics to make strategic decisions based on another party’s actions and reactions.

back to list of math and computer science courses


Advanced Cryptology

In today's environment, data transmission and data security play an increasingly critical role in the global marketplace and national security. This course focuses on code making and code breaking, as well as the mathematical basis of cryptology.

Beginning with historic ciphers such as the Caesar Shift or the Hill Cipher, students explore the use of modular arithmetic and linear algebra in encyrpting and decrypting techniques. They next analyze additional encryption schemes such as affine and permutation ciphers, the Vigenére cipher, as well as more advanced block and stream ciphers. While learning to identify the strengths and vulnerabilities of these systems, students write their own codes and practice cracking them using statistical and other methods.

Students end the course by examining the capabilities and limitations of modern systems, delving deeper into how current techniques such as the Data Encryption Standard (DES) and error correcting codes are applied to the Internet, electronic locks, and banking. They leave the course with an understanding of the complexity of topics ranging from securely transmitting personal information during online business transactions to decoding secret communiqués that threaten our collective welfare.

Sample texts: Materials compiled by the instructor.

back to list of math and computer science courses


Computer Science

Introduction to Robotics

In the field of robotics, computer science and engineering come together to create machines that can perform a variety of tasks from manufacturing contact lenses to exploring Mars.

Using LEGO® robotics equipment, students construct, program, and test their robots in an object-oriented programming environment. They develop familiarity with foundational concepts in this computer science course. They explore topics such as algorithms, sequential control flow, and Boolean operators. Students also survey basic principles of mechanical engineering, such as simple machines and locomotion, and basic principles of electrical engineering, such as circuits and sensor feedback.

For their culminating project, students design, build, and program robots that work together to complete a shared task. Each robot is autonomous, but adjusts to feedback from the environment and other robots in the system. The project demonstrates the basic computer science and engineering principles that underlie everything from the space shuttle to the average home toaster: each is an interconnected system that functions through the exchange of information between sensors and subsystems. Working together to build the system, students gain a foundation in computer programming and engineering that will be increasingly important in the highly technical twenty-first century.

Sample text: Materials compiled by the instructor.

Lab Budget:
$1200 — $1400 per 3-week session (depending on enrollment)
(This budget is slightly higher than other courses due to material and equipment costs).


back to list of math and computer science courses


Foundations of Programming

Students in this course gain insight into the methods of computer programming and have an opportunity to study the algorithmic aspects of computer science. They learn the theoretical constructs common to all languages by studying the syntax and basic commands of a particular programming language. Building on this knowledge, students move on to study additional concepts of programming, including arrays, testing, and debugging. Students are given a variety of challenging problems which teach them to start with a concept and work through the steps of writing a program: defining the problem and its desired solution, outlining an approach, encoding the algorithm, and debugging the code.

Through a combination of individual and group work, students complete supplemental problems, lab exercises, and various programming projects in order to reinforce concepts learned in class. By the end of the course, students are able to develop more complex programs and are familiar with some of the standards of software development practiced in the professional world. Students leave with an understanding of how to apply the techniques learned to other programming languages.

Sample text: An introductory computer programming text.

Lab Budget:
$780 — $975 per 3-week session (depending on enrollment)

back to list of math and computer science courses


Fundamentals of Computer Science

This course introduces students to three major areas of computer science: theory and algorithms, hardware systems, and software systems. The theoretical component of the course covers the study of algorithms, Boolean algebra, binary mathematics, and the theory of computation. While studying hardware systems, students learn about the physical components of computers, digital logic, and computer architecture. In software systems, students are introduced to elements of programming languages, compilers, and computer graphics. The course also introduces operating systems, a key link between hardware and software, and computer networks.

This course helps prepare students for AP Computer Science and gives them a good indication of what they might see as a computer science major in college. While learning a particular programming language is not a goal of the course, students apply and illustrate the concepts they are learning through work on programming projects.

Sample text: An Invitation to Computer Science, Schneider and Gersting.

Lab Budget:
$780 — $975 per 3-week session (depending on enrollment)


back to list of math and computer science courses


Theory of Computation

In this theoretical mathematics and computer science course, students move beyond basic computer literacy and programming techniques as they delve into the rich mathematical foundation of computer science. They investigate the efficiency of various computational methods and explore what is possible and impossible in the digital world.

Students examine proof techniques such as mathematical induction and Cantor diagonalization as they consider a range of areas in mathematics including topics in combinatorics and different sizes of infinity. They explore the manipulation of symbols in formal languages, including those with context-free grammars such as the propositional calculus. Students work with various theoretical frameworks, like Turing machines and automata theory, to investigate issues of decidability (which problems can be solved by computer programs) as well as computability and complexity (how long a particular program would run and what resources would be required). The course culminates with an examination of the P vs. NP Millennium Prize Problem, one of the most important open questions in computer science: Are there problems for which a potential answer could be quickly verified, but where actually computing the answer would take impossibly long? The Clay Mathematics Institute has offered a $1,000,000 prize for a solution.

Note: Students infrequently use programming in this course. While programming may be used to illustrate principles or introduce new concepts, it is not the focus of the course.

Sample text: Materials compiled by the instructor.

back to list of math and computer science courses


Data Structures and Algorithms

In order for a computer to find a solution to a particular problem, it is necessary to formalize the problem in terms of a mathematical model, find a suitable algorithm to solve the problem in that model, and then implement the algorithm in a particular programming language. In this class, students learn how to design, analyze, and implement these algorithms.

Students begin by studying data structures such as arrays, lists, stacks, queues, trees, and sets in order to learn different ways of organizing data. Students then analyze many sorting, searching, and graphing algorithms to determine their run-time efficiency. By examining these fundamental algorithms, students learn how design decisions can affect the efficiency of an algorithm. A series of programming assignments helps students learn how to put these abstract ideas into practice. By the end of this course, students acquire the conceptual tools necessary to model and analyze computational problems.

Note: Programming experience is required for this course.

Sample text: Data Structures and Algorithm Analysis, Weiss.


back to list of math and computer science courses

Employment

©The Johns Hopkins University. Baltimore, Maryland. All rights reserved.
CTY is accredited for grades 5 through 12 by the Commission on Secondary Schools of the Middle States Association of Colleges and Schools.

Center for Talented Youth -- A world leader in gifted education
5801 Smith Ave #400 McAuley Hall, Baltimore, Maryland 21209
Phone: 410 735-4100 / 410 735-6200 / Email: ctyinfo@jhu.edu

Privacy Statement

Divider

Get Adobe Reader

Best viewed at
1024 x 768 or higher resolution.