ITECH1400 Fundamentals of Programming – Assignment 1 – Palindromes and AnagramsOverviewIn this assignment you will be given a plain file containing a large list of English words from which you must select ones that have particular characteristics.Timelines and Expectations

ITECH1400 Fundamentals of Programming – Assignment 1 – Palindromes and Anagrams

Overview

In this assignment you will be given a plain file containing a large list of English words from which you must select ones that have particular characteristics.

Timelines and Expectations

Percentage Value of Task: 20%

Minimum time expectation: 20 hours

Learning Outcomes Assessed

The following course learning outcomes are assessed by completing this assessment:

Knowledge:

K1. Identify and use the correct syntax of a common programming language.

K2. Recall and use typical programming constructs to design and implement simple software solutions.

K4. Explain the importance of programming style concepts (documentation, mnemonic names, indentation).

Skills:

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

Application of knowledge and skills:

A1. Develop self-reliance and judgement in adapting algorithms to diverse contexts.

A2. Design and write program solutions to identified problems using accepted design constructs.

Assessment Details

Searching a file for palindromes and anagrams. Given a word list file, English.txt, containing some four hundred thousand words, you are required to search this file to find all possible palindromes and anagrams.

Part 1: Palindromes – words that read the same either way e.g. radar, civic, level, anna

These words can be read from left to right or from right to left with exactly the same result.

Part 2: Anagrams – words made from the letters of another word e.g. cineasts « acnestis

In this case the word cineast means a person who loves cinema or films so cineasts are people who love films; the word acnestis means a part of the body that you cannot scratch – for example – between your shoulder blades.

One word is made from ALL of the letters of the other word – this is important in this assignment.

These are just examples – we are not so much interested in the definitions of the words1 only if they are in our list of words.

Submission

You must supply your program source code files and your documentation as a single zip file named as follows:

<YOUR-NAME>_<YOUR-STUDENT-ID>.zip

e.g. Aravind_ADIGA_30331237

You may supply your word processed documentation in either Microsoft Word or LibreOffice/OpenOffice formats only – no proprietary Mac specific formats, please.

Assignments will be marked on the basis of fulfilment of the requirements and the quality of the work.

In addition to the marking criteria, marks may be deducted for failure to comply with the assignment requirements, including (but not limited to):

  • Incomplete implementation(s), and
  • Incomplete submissions (e.g. missing files), and
  • Poor spelling and grammar.

You might be asked to demonstrate and explain your work.

Submit your assignment (all program source files plus your word processed document) to the Assignment 1 Upload location on Moodle before the deadline of Friday of week 7 at 5 pm.

Marking Criteria/Rubric

Palindromes Item Mark
  Algorithm in pseudo-code 10
  Implementation of algorithm in code 10
  Demonstration that code works correctly using representative samples  

15

  Correct Output and Discussion 10
Anagrams Algorithm in pseudo-code 10
  Implementation of algorithm in code 10
  Demonstration that code works correctly using representative samples  

15

  Correct Output and Discussion 10
Report   10
  TOTAL 100
  FINAL MARK /20
WeCreativez WhatsApp Support
Our customer support team is here to answer your questions. Ask us anything!
👋 Hi, how can I help?
Scroll to Top