Design and implement simple software solutions

Assignment Help Computer Engineering
Reference no: EM132358687

Fundamentals of Programming Assignment - Sonnets and Doublets

Overview - In this assignment you will have the opportunity to test your Python skills in exploring and manipulating text. Throughout the assignment you are expected to apply the principles of problem solving that we have already discussed in this course.

Learning Outcomes Assessed - The following course learning outcomes are assessed by completing this assessment:

Knowledge:

  • Identify and use the correct syntax of a common programming language.
  • Recall and use typical programming constructs to design and implement simple software solutions.
  • Explain the importance of programming style concepts (documentation, mnemonic names, indentation).

Skills:

  • Utilise pseudocode and/or algorithms as a major program design technique.
  • Write and implement a solution algorithm using basic programming constructs.
  • Describe program functionality based on analysis of given program code.

Application of knowledge and skills:

  • Develop self-reliance and judgement in adapting algorithms to diverse contexts.
  • Design and write program solutions to identified problems using accepted design constructs.

Assessment Details -

Part 1 Sonnets - Background

Sonnets are poems which have the following form (Shakespeare's sonnet 116):

Let me not to the marriage of true minds (A)

Admit impediments, love is not love (B)

Which alters when it alteration finds, (A)

Or bends with the remover to remove. (B)

O no, it is an ever fixèd mark (C)

That looks on tempests and is never shaken; (D)

It is the star to every wand'ring bark, (C)

Whose worth's unknown although his height be taken. (D)

Love's not time's fool, though rosy lips and cheeks (E)

Within his bending sickle's compass come, (F)

Love alters not with his brief hours and weeks, (E)

But bears it out even to the edge of doom: (F)

If this be error and upon me proved, (G)

I never writ, nor no man ever loved. (G)

There are 3 quatrains (group of 4 lines) and a couplet (2 lines) making a total of 14 lines. The rhyming pattern is shown with the letters at the end of each line.

Each line is in iambic pentameter (weak-strong). A standard line of iambic pentameter is five iambic feet in a row:

da DUM da DUM da DUM da DUM da DUM

but SOFT | what LIGHT | through YON | der WIN | dow BREAKS

Shakespeare has written some 154 sonnets together with many plays - doubt (Craig & Kinney, 2009; Holmes & Kardos, 2003; James & Rubinstein, 2006; Jarmusch et al., 2013; Rubbo et al., 2008) exists as to whether, the person known to be called Shakespeare, was the actual author of all the work presented under this name.

There is a considerable prize still to be claimed by anyone who can prove or disprove this.

Your Task - explore possible authorship

Even though we have just become familiar with Python, there are three very simple tests that we can apply to authorship - and we have the means, with lists and strings in Python, to implement them:

1. Count the occurrences of each letter in the text.

2. Print the number of one-letter, two-letter, three-letter words and so on.

3. Print the number of occurrences of each different word in the text.

The first pass might be to see if there is consistency across all the sonnets.

Use the text from the sonnets and apply these three metrics. (We shall leave the actual plan and algorithm up to you - discuss it with your lecturer/tutor if you wish)

Three possible authors who might have written under Shakespeare's name are: Francis Bacon, Ben Jonson and Christopher Marlowe. Their works are readily available online.

Part 2: Doublets

Doublets (or word ladders) are often found in magazines and newspapers together with cryptic crosswords and other puzzles.

The idea is very simple: you might be given two words - often they are antonyms - and your task is to create a ladder of words with these two words at the top and bottom of the ladder.

The aim is to make the number of words joining HEAD and TAIL as few as possible.

In this assignment you are given a file of some 5700 words together with the pairs of words below (to use as a start and end); you are asked to use your Python skills to find the fewest words that will link them.

Use the following pairs of words:

i. FLOUR-BREAD

ii. CHAOS-PEACE

iii. TEARS-SMILE

iv. WITCH-FAIRY

v. BLACK-WHITE

vi. SLEEP-DREAM

vii. RIVER-SHORE

Then, choose 3 different pairs of words from the file and use these as well.

Attachment:- Programming Assignment File.rar

Reference no: EM132358687

Questions Cloud

Fraud detection is the detection of fraud : Fraud Detection is the detection of fraud. With the technological innovations, fraudulent activities have become a common place.
Consider this hypothetical situation : Consider this hypothetical situation. What steps might have been taken to detect David's alleged industrial espionage?
Each student will identify trend in information systems : Each student will identify a trend in Information Systems and Technology supported by three pieces of research to support why you think it is a trend.
Write and implement a solution algorithm : Programming Assignment - Sonnets and Doublets. Write and implement a solution algorithm using basic programming constructs
Design and implement simple software solutions : Federation University - ITECH1400 Fundamentals of Programming Assignment - Sonnets and Doublets. Design and implement simple software solutions
Describe the health policy development process : Describe the health policy development process and the roles that various stakeholders have in that process associated with the article
Responsible for the security of information in organization : Who is ultimately responsible for the security of information in an organization? What are the disadvantages of using a VPN instead of a leased line?
Investigators use digital forensic methods to solve crimes : Law enforcement professionals and investigators use digital forensic methods to solve crimes every day. explains how investigators may have used these technique
Guidelines for user interface design : Identify a business information system that you are familiar with. examples of how it follows three specific guidelines for user interface design described.

Reviews

Write a Review

Computer Engineering Questions & Answers

  Write a program that draws a rainbow

Write a program that draws a simple fence with vertical, equally spaced slats backed by two horizontal support boards. Behind the fence show a simple house.

  Questionhome wireless network and securitymethodology-

questionhome wireless network and securitymethodology- review topics covered in lecture hours from textbook reference

  Make sure you correct the error before closing the program

If you haven't received an index error in one of your programs yet, try to make one happen. Make sure you correct the error before closing the program.

  Explain quality management planning

Suppose the VoIP project sponsor wants you to present the project to the board of directors. Particularly, the sponsor would like you to discuss the quality.

  Which approach seems to be more successful

A system development project may be approached in one of two ways: as a single. Which approach seems to be more successful? Why do you suppose that this is true?

  Write a program that accepts any number of homework scores

Write a program that accepts any number of homework scores ranging in value from 0 through 10. Prompt the user for a new score if they enter a value.

  What is the purpose of the accept field in an http request

Describe the purposes of the five most commonly used HTTP methods. What is the purpose of the Accept field in an HTTP request?

  How do you calculate the extended price for the item

How do you calculate the extended price for the item (quantity to buy times unit price)? How do you print it to the screen?

  Calculates and print the area of the rectangle

Write a Program called Rectangle which prompts for and reads two integer values that represent the sides of a rectangle.

  Describe five ethical situations that managers might face

Describe five ethical situations or dilemmas that project managers might face in their role within an organization.

  Demonstrate ability to integrate and apply information

Demonstrate ability to integrate and apply information from various topics. Build an understanding of current and emerging topics in Information Security.

  Use a random number generator to roll two standard dice

For this assignment you will create a program that will use a random number generator to roll two standard dice. Once rolled you will add the two values together and keep a count of the resultant values.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd