Skip to main content

CPT 200: Fundamentals of Programming Languages

    During my quest to obtain a Bachelor of Information Technology from Ashford University, my fourth class was CPT 200: Fundamentals of Programming Languages.  For that class, the programming language that is taught is Python 3.
    On the first week of class, we were asked to create code that would ask a user to input several pieces of information about any specific employee.  We were to use the variables: employeeName, employeeSSN, employeePhone, employeeEmail, and employeeSalary.  After the data was inputted, it needed to be printed on the screen.  Below was what I turned in for Functionality 1:


    During the second week of class, we were to read two chapters: Chapter 3: Types and Chapter 4: Branching.  These chapters introduced us to the different types of variables that can be used within Python as well as how to use branching in your scripts.
For the second functionality, we were instructed to adjust our code to allow for 5 different employees to be input into the system.  For this functionality, I decided to go above and beyond and instead ask the user how many employees they wanted to enter.  Below is the code that I submitted for week 2:
     On week 3, we followed the same pattern and were assigned two more chapters: Chapter 5: Loops and Chapter 6: Functions.  I was excited to get to this point in the book because I already had a basic understanding of functions from previous programming courses.  Once I was able to learn and grasp the Python syntax for functions, I started to program in a flurry.  I added lots of different functions to my script so that I was able to create menus and make my program modular.
    For the assigned functionality during week 3, we were instructed to add two more functions: 'Add Employee" and "View All Employees."  We were also asked to code a global variable that would create a counter to track the number of employees in the system.  That seemed like a very inefficient way to track the number of employees, and so I used the global variable to instead allow the use of my menuSelection variable within the different functions, as well as in the body of the main code.  I decided to track the number of employees by measuring the length of the dictionary where the information was being stored.  Because we learned about functions this week, my code became too complex to take screenshots.  I will include further functionalities code as their own posts.
    Week 4 allowed us to learn Chapter 7: Strings and Chapter 8: Lists and Dictionaries.  These two chapters explained more about the different methods that strings and dictionaries can use, as well as different methods to format strings.  It allowed me to start understanding how to make my script more visually appealing.
    During week 4 we were assigned two new functionalities to be added to our Employee Management System.  The new functions were: Search Employee by SSN and Edit Employee Information; we were also instructed to further refine our "View All Employees" function.  After learning about functions, my code became too large picture with a screenshot.
    On week 5 we read Chapter 9: Exceptions and Chapter 10: Files.  I was really looking forward to chapter 10 because I wanted to experiment with the different methods to use while reading and writing to files.  The book first covered using a text file to store information.  Because I already have a little experience, I knew that I was going to be able to use a CSV file to store my data.  Chapter 10 discussed how to import the CSV library and some of the basic functionality of using CSVs with Python.  Chapter 9 explained some of the different Exceptions that can be thrown while using the try-except blocks.  It also described how to use the exceptions to run additional lines of code for alerting users of an error or attempting a different process when data is found missing.  We were also instructed to combine all of the functionalities from previous assignments into one complete script.  After some troubleshooting, I was able to turn in a beautiful project that was not a 100% complete program but still more than I thought I would turn in at the beginning of the class.









Comments

Popular posts from this blog

CPT 307: Starting to understand algorithm selection

As it turns out, there is a specific science to selecting the best algorithm to apply to data within a program.  When I first started my Data Structures & Algorithms class, I was excited to learn about different algorithms, and how to efficiently store and sort data using advanced data structures.  What I learned was that there are a great many different algorithms to both search and sort information stored in arrays.  Some websites, such as geeksforgeeks.org, have entire lists of different algorithms each with differing complexities, and each tailored for a specific use.  The computer science community describes algorithm efficiency using two different measures of complexity.  Time complexity is a function relating the number of actions (n) that will be performed on an array (a[]).  There are many different kinds of actions that an algorithm can perform on an array of data.  Time can mean the number of memory accesses performed, the number of co...

CPT 307: Java Newbie to Newbie

     For our first assignment in CPT 307: Data Structures & Algorithms, we were tasked with installing the Java Development Kit (JDK) and the NetBeans IDE.  Installing the JDK was straightforward and painless.  It was as simple as downloading the installer and following the installation wizard.  NetBeans was a slightly different story.  There were several different packages to download; I chose the package with the most language support.  In hindsight, I probably should have downloaded only the package supporting Java, saving the other packages for when I actually use the other tools.  After completing the NetBeans install, I kept getting an error about “GlassFish” whenever I tried creating a new project.  I attempted to search the forums for a fix but found the NetBeans forums to be extremely confusing, and I could not find a solution to the issue.  So I decided to search the internet for a different IDE to work with.  Wh...