Projects

Mini Project 1: Text Mining

Project description

Given any file of text, for example:


"The Faculty of Science offers GenNEXT undergraduate honours degree:  Bachelor of Science.

The GenNEXT BSc degree provides a range of pathways, giving you more flexibility in your choice of career in science. This degree has been designed to prepare you for a competitive world, where adaptability and innovation are essential for successful scientific, economic and social development. This degree will develop a broad knowledge across the chosen subject areas, while ensuring the transfer of sufficient skills to prepare you for professional practice or further study. To foster an understanding of international standards, you will be encouraged to complete part of your degree in another country, or to gain work experience in a relevant context.
The BSc GenNEXT undergraduate degree programme will allow students to choose from variety of major disciplines (Applied Physics, Biological Science, Chemistry, Computer Science, Geology and Mathematics), enhanced by electives that will provide critical, analytical, theoretical and practical perspectives on the major discipline."

You are asked to write code to:

1. Find a number of word that is imported by a method called wordCount (String str). For example, we use the method to find a word "GenNEXT" in the text: wordCount ("GenNEXT"), we get 3 results.

2. Tell the reader how to find a word by indicating the position of the words in the text (e.g., word number or sentence number). You are recommended to write a method called wordPlace(String str) which will return the position of the word in text, e.g., word number, sentence number, line on the page, etc. 
It is better if you can highlight the searching words by changing its color or font. The method should include a function of finding forward and backward.  You are recommended to write method called wordForBack (String str, int forback).

3. Replace a word by another word for whole text. You are recommended to write a method called wordReplace(String str, String rep ). For example, you can call the method: wordReplace("GenNEXT", "Next Generation Program"). 

4. (optional) Encrypt some words in the text by special characters and decrypt them when needed.  For example, "GenNEXT" can be encoded by "€#%&!§$", so you must use your program to decode it. You are recommended to find an encryption algorithm on Internet and re-write it. 


Notice: You are recommended to write the code yourselves, instead using library
Project requirement:
- The project must be done in group (project plan, fairly distributed workload).
- A report (min 3 pages, max 10 pages) must be submitted by Tuesday 1.PM November. 1 to Trung's office (C2 located in the Department of Chemistry)
- Source code and a readme file in .txt format that provides a guide to readers of how to compile and test the code must be submitted together with the report.
- A presentation will be held on Wednesday, November 2. Each group is given 25 minutes to present their projects and 10 minutes for questions by other groups.








Mini Project 1: Calendar Calculator


Project Description:
We consider a Calendar Calculator that can display and calculate the following:
1. The calendar must display 12 months of the year 2011 in tables in which each table displays a month. Each table must show the month number, the week number and weekdate.
2. The Calendar calculator must calculate the total number of days when two dates are given. For example, to calculate how many days we have to wait to (passes from) your birthday.



Project requirement:
- The project must be done in group (project plan, fairly distributed workload).
- A report (min 3 pages, max 10 pages) must be submitted by 10.AM September. 26.
- Source code and a readme file in .txt format that provides a guide to readers of how to compile and test the code must be submitted together with the report.
- A presentation will be held on Wednesday, September 28. Each group is given 25 minutes to present their projects and 10 minutes for questions by other groups.

Hints for code:
int date1 = 5; int month1 = 4
int date2 = 8; int month2= 11;
if (toDate)
   System.out.println(“It take” + totalDate + “to my birdday”);
else
   System.out.println(“It passes” + totalDate + “from my birdday”);

Hints for project presentation:
The report is about the technical aspects including introduction, project objective, methodology, implementation and evaluation.
Source code should include a lot of comments.
Presentation material should be powerpoint. A group should discuss together to make a presentation plan.