Hi I am a senior at high school. The school is making us create a product to present and I want to create a Java computer program for my product and present that. I want to make something cool and something that'll make you go "wow". I've narrowed my category to business applications or fun applications. The idea I have right now is of making a picture to ASCII art and getting a picture of each of my teachers and doing a before and after thing, since our teachers are our judges. I thought that'd be cool and funny. Another idea I have is to make a teacher management program where teachers can input grades and notes for students. I'd use flat file storage rather than database since I don't know any database.

I have like 2-3 months for the day of my presentation. What do you guys think I should make?

Also I've read the mega project list and couldn't find anything I'd like to present there.

Once I coded a C#/ASP.NET citation generator. You can code it in any language however. Involved a database where the citations would be stored (you may be able to get away with flat files if you tweak). Had a lot of fields involved many of which could be null, so the class implementation needs to take that into account. Authors and Editors have their own tables who'se foreign key is the Book Table's refId (reference id). Book also has a foreign key to the Reference table which holds PaperID as the primary key. This way each seperate paper has a way of differentiating themselves from another. The book class had a compare to method which would compare one book to another first matching title, then year, then author as per APA format. Book's tostring method was used to print the books for the references page. This needs to take into account the presence of no editors, no authors, or any other missing variables, so it is a little involved. There needs to be a datatype for every field in the database. There also has to be a char sequence for assignment in seperate code for when there is a sequence of authors in the references page which are all the same author. In such a case there needs to be code that assigns to the books the sequence number a, b, c, etc when these authors are back to back and their work needs differentiating. These books are sorted after being retrieved from the database on the print page and the sequences are assigned after the references are sorted. Authors and editors are also comparable, with each inheriting from a person class. Assigning the sequence number is actually the hardest part, due to the fact that you need to iterate through the list, and take into account the previous book in relation to the current book, and the next book in relation to the current book, and you need to account for walking off the end of the array, and you also need to iterate the letter (sequence) as you go. Am letting you see the devilish code that I had to write remember, is in C# so it will be different for you. If anyone see's a better way of doing it, am all ears. The exception handling is actually how this works in this example. The way I coded this I actually needed a compareLname, and CompareTo.

//set the sequence variable
            int ch = Convert.ToInt32('a');
            int start1 = 0;
            int start2 = 0;
            for (int i = 0; i < books.Count; i++) {
                Book previousBook;
                Book ctBook;
                Book nextBook;
                start1 = start2;

                //compare current to next
                try {
                    ctBook = books[i];
                    nextBook = books[i + 1];
                    if (ctBook.CompareLname(nextBook) == 0) {
                        ch += i - start1;
                        ctBook.sequence = Convert.ToChar(ch);
                    }
                    else {
                        start2 = i + 1;
                        ch = Convert.ToInt32('a');
                    }
                }
                catch (ArgumentOutOfRangeException) { }

                //compare current to previous
                try {
                    previousBook = books[i - 1];
                    ctBook = books[i];
                    if (ctBook.CompareLname(previousBook) == 0) {
                        ch += i - start1;
                        ctBook.sequence = Convert.ToChar(ch);
                    }
                }
                catch (ArgumentOutOfRangeException) { }
            }
Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.