Southern New Hampshire University

CS-113: Introduction to Programming

A study guide to SNHU's introduction to computational thinking and programming, taken with its required lab, CS-113L.

Updated October 2026 · 5 min read

CS-113 introduces Southern New Hampshire University students to computational thinking and programming, with a required lab that turns concepts into practice.

SNHU's catalog describes the course as introducing computational thinking and computer programming in a modern language.

Students learn variables, data types, expressions, conditional and iterative control structures, functions and parameters, arrays or vectors, simple input and output, and file input and output. They apply these to many small real problems, building skills in problem solving, testing and debugging.

The course carries 3 credits, and students must take the 1-credit lab, CS-113L, at the same time. Keeping the lecture and lab in step is a common challenge.

Course at a Glance

ItemDetails
UniversitySouthern New Hampshire University (SNHU)
Course codeCS-113
LevelUndergraduate, 3 credits
CorequisiteCS-113L Introduction to Programming Lab (1 credit)
Leads toListed as a prerequisite option for CS-331
Typical workLab exercises, small application programs, testing and debugging tasks

What CS-113 Covers

TopicIn plain language
Computational thinkingBreaking problems down, spotting patterns, designing steps
Expressions and data typesCalculations and the kinds of values a program handles
Control structuresConditions and loops
Functions and parametersReusable blocks of code with inputs and outputs
Arrays and vectorsCollections of values
Input and outputReading from the keyboard and from files, writing results

Key Concepts Explained

Computational Thinking

Computational thinking has four parts that appear throughout the course: decomposition (breaking a problem into parts), pattern recognition, abstraction (ignoring irrelevant detail) and algorithm design (writing the steps).

Example: "Find the busiest hour in a day's sales log" decomposes into: read each line, extract the hour, count sales per hour, then find the hour with the highest count. Each part becomes a small function.

File Input and Output

Reading data from a file instead of the keyboard is a step many students find tricky. The pattern is the same in most languages: open the file, check it opened, read in a loop until the end, then close it.

Example (Python-style):

count = 0
with open("data.txt") as f:
    for line in f:
        count += 1
print(count, "lines")

A missing or misnamed file is the most common cause of errors here, so test with a tiny file first.

Testing and Debugging

SNHU names testing and debugging as core skills. Testing means choosing inputs deliberately: a normal case, a boundary case and an invalid case. Debugging means narrowing down where actual and expected behavior first differ.

Example test plan for a function that returns the largest value in a list: [3, 9, 2] should give 9; [5] should give 5; [-4, -1, -7] should give -1 (a function that starts its maximum at 0 fails this case); an empty list should be handled with a clear message.

Getting the Most from CS-113L

Because the lab is taken concurrently, lab tasks usually practice what the lecture has just introduced. A few habits help:

Typical Assignments and How to Approach Them

Assignment typeWhat it testsHow to approach it
Lab exercisesApplying one conceptFollow the spec exactly and test each step
Small applicationsCombining conceptsDecompose into functions before coding
Debugging tasksFinding errorsReproduce the bug, then narrow it down

Designing Programs with Functions

As programs grow, putting everything in one long block makes them hard to test. CS-113's focus on functions and parameters is really about design: each function should do one job, take what it needs as parameters and return a result instead of printing it.

Example: a grade report program split into read_scores(filename), average(scores), letter_grade(avg) and write_report(name, avg, grade). Each can be tested on its own: letter_grade(85) should return "B" whatever the rest of the program does.

Functions that return values rather than print them are easier to reuse, because the caller decides what to do with the result. This habit pays off in later courses, where larger projects depend on well-separated parts.

Where Students Get Stuck

Study Tips for CS-113

How We Help with CS-113

Send the assignment or lab instructions, starter files, your code and any feedback. A programming tutor can explain concepts, help you debug or prepare a commented custom solution to study.

GradeEssays is independent of Southern New Hampshire University. Our work is tutoring and reference help; you write and submit your own code under SNHU's academic integrity policy.

Make Sense of Your CS-113 Work

Share the prompt, files and feedback. A programmer prepares a commented custom solution you can learn from.

Start My CS-113 Help

Free revisions · Full refund if late · Written from scratch for your order

Frequently Asked Questions

Do I need to take CS-113L with CS-113?

Yes. SNHU's catalog requires concurrent enrollment in CS-113L, the 1-credit Introduction to Programming Lab.

How is CS-113 different from CS-110?

Both introduce programming. CS-113's description adds computational thinking, file input and output, and testing and debugging, with a required lab.

Which language does CS-113 use?

SNHU describes "a modern programming language" without naming one; your course materials will confirm it.

How many credits is CS-113?

3 credits, plus 1 credit for the CS-113L lab.

What is computational thinking?

A problem-solving approach based on decomposition, pattern recognition, abstraction and algorithm design.

Can you complete my CS-113 labs for me to submit?

No. We offer tutoring, explanations and custom solutions for study; you submit your own work.