ITECH1400 Fundamentals of Programming
Assignment 1 – Palindromes and Anagrams
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%
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).
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.
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 words only if they are in our list of words.
For solution, connect with online professionals.