Memo program
Budget: $30 – $250 CAD
I need a program which stores and retrieves memos. The memos are kept in memory of the program and are only stored as long as the program is running.
Decompose the program into functions which are called as required from the main program function. The main program function should be named main().
The program must do the following:
Present a command menu: An input with an appropriate prompt which allows your user to choose between adding, editing, reading or deleting one or more memos, and quitting the program. Return to the command menu after every operation.
Add a new memo: accept a string of any length and store it along with the date and time it was written. The data for date and time aren't native data types so you will need to import a module to make use of them.
Read an existing memo: Accept an index number between 0 and the current number of memos and then print out that memo with its date and time. Allow the user to choose all memos, if they want, and then print out all memos.
Edit an existing memo: Accept an index number between 0 and the current number of memos. Print out that memo. Let the user enter a new note. Confirm that they wish to change the note, then either return to the command menu (if they do not confirm the operation) or keep the existing date and time but store the new note in place of the old one. Print out the changed memo.
Delete an existing memo: Accept an index number between 0 and the current number of memos. Print out the memo and then get confirmation that this is the correct memo to remove. If the user does not confirm the operation, return to the command menu. Otherwise, remove the specified memo. Allow the user to choose all memos, if they want, and when they confirm the operation, delete all memos.
Allow the user to quit the program from the command menu.
Software required: Idle shell for python and the program must be ran in the provided REPL
Decompose the program into functions which are called as required from the main program function. The main program function should be named main().
The program must do the following:
Present a command menu: An input with an appropriate prompt which allows your user to choose between adding, editing, reading or deleting one or more memos, and quitting the program. Return to the command menu after every operation.
Add a new memo: accept a string of any length and store it along with the date and time it was written. The data for date and time aren't native data types so you will need to import a module to make use of them.
Read an existing memo: Accept an index number between 0 and the current number of memos and then print out that memo with its date and time. Allow the user to choose all memos, if they want, and then print out all memos.
Edit an existing memo: Accept an index number between 0 and the current number of memos. Print out that memo. Let the user enter a new note. Confirm that they wish to change the note, then either return to the command menu (if they do not confirm the operation) or keep the existing date and time but store the new note in place of the old one. Print out the changed memo.
Delete an existing memo: Accept an index number between 0 and the current number of memos. Print out the memo and then get confirmation that this is the correct memo to remove. If the user does not confirm the operation, return to the command menu. Otherwise, remove the specified memo. Allow the user to choose all memos, if they want, and when they confirm the operation, delete all memos.
Allow the user to quit the program from the command menu.
Software required: Idle shell for python and the program must be ran in the provided REPL