## DEV Community π©βπ»π¨βπ» is a community of 963,673 amazing developers

We're a place where coders share, stay up-to-date and grow their careers.

Liudmyla

Posted on

# Codecademy. Project #1: Software Development Concepts

Hi! I started studying a new profession for myself in the field of IT. I decided to start with a course "Introduction on IT" on the website "Codecademy". In order to receive a course completion certificate, I have to complete Software Development Concepts project.
The main task is a creation design a pattern searching algorithm. For example, we use this algorithm to search for a word in a specific body of text, like a dictionary or Π° website.The implementation of the project is divided into several steps. I suggest you take a closer look.

## Step 1. Plan and write the algorithm

Task: "Take two string values called text and pattern. Search through the value of text to check if the value pattern can be found within text. Notify the user if pattern was found in text or not."
Solution: I will write down the algorithm and all actions related to it in a notebook:

1. Create a string variable named "text" and input the value of the text that we plan to search through
2. Create a string variable named "pattern" and input the value of the pattern that we are looking for in the text
3. Create a "match_count" variable and set it to 0
4. Decision: Have we finished searching the text value?
• If no, continue to step 5
• If yes, continue to step 7
5. Iterate to the next word in the "text" variable
6. Compare value of "text" to the value of "pattern". Decision: are they equal?
• If yes, go to step 7
• If no, go back to step 5
7. If match count is equal to the length of the pattern: pattern found! otherwise: pattern not found!

## Step 2. Draw a flowchart

Task: "Match each step from the previous task to an appropriate shape and then connect all these shapes together to create a flowchart."
Solution: I am attaching my flowchart.

## Step 3.Test the Chart

1. text = "ERROR: Invalid function arguments"; pattern = "ERROR"
2. text = "ERROR: Out of memory"; pattern = "network"
3. text = "ERROR: The file is write-protected"; pattern = "protected" Solution: I will conduct an analysis inputs to make sure it works as expected.

## Step 4. Produce the Pseudocode

Task: "Using the finely-tuned flowchart as a guide, get more technical by creating the pseudocode that corresponds to the previous steps and flowchart."
Solution: I am creating a pseudocode that looks as shown below.

define text
define pattern
create a match_count variable and set it to 0
if the entire text hasn't been searched:
iterate to the next character of the text
if the entire pattern hasn't been searched:
if this character from the pattern is equal to the character from text:
increment the match_count variable
if match_count is equal to the length of the pattern:
pattern found!
otherwise: