W01 Project: Clever Stories
Overview
In this assignment, you will demonstrate your knowledge of programming by creating a program on your own and learning to troubleshoot problems.
AI-assisted Software Development
Artificial Intelligence (AI) is a powerful tool that helps experienced software engineers work faster and do more. Because of this, companies need fewer low-skill developers, since skilled ones with AI can do the same work more easily.
With this in mind, it is critical that you become a high-skilled developer that knows how to solve problems and use AI as a tool. To develop these skills, you need to practice writing lots of code on your own and working through problems. In future courses, once you have mastered the fundamentals from this course, you will learn to use AI to generate all or part of your programs.
On the other hand, if you use AI to generate the programs in this course, you will not develop the skills you need and you will not be prepared to get a job in the current market.
Do not use AI to generate the code for your programs in this course.
Using AI to generate your programs is a violation of the course AI policy and may result in receiving a 0 on the assignment, failing the course, or being removed from the program.
If you use AI to generate your code for you, you will not learn how to program, which will prevent you from being able to be successful in later courses and in your career.
If you need help on the assignment or have questions about AI use, please ask your instructor.
Acceptable use of AI in CSE 110
While you should not use AI to generate code, it can be a powerful tutor to help you learn and understand the concepts. Experienced software engineers use AI all the time to help them learn to do things they haven't done before.
You are strongly encouraged to ask AI questions about the topics and the problems you are facing. Then, once you understand the concept better, set the tool aside and write the code yourself.
The following defines the acceptable use of AI in CSE 110:
- ✅ Use AI as a learning assistant. Converse with it like a tutor who is helping you understand a concept, but not giving you the answer.
- ❌ Do not use AI to generate any code that you use in your projects. You should type every word of these projects yourself.
- ❌ Do not use AI to give you the answers to quiz questions. You may ask AI about the concepts of the quiz, but you should not directly ask AI the question of the quiz.
- ✅ Use AI for suggestions and feedback. After you finish a program, ask about things you could do to make it even better.
W01 Project: Overview
Mad Libs are a type of funny story, where a person is asked for words without knowing their context. The words are then placed into a story in a pre-determined format, often resulting in funny statements.
For example, consider prompts for:
-
Plural noun
-
Verb
-
Adjective
-
Noun
And a story, such as:
When it comes to [plural-noun], you would never want to [verb], especially if you encountered a [adjective] [noun].
A person, may respond to the prompts with the following:
-
Plural noun: ducks
-
Verb: jump
-
Adjective: cold
-
Noun: taco
Then the story would read:
When it comes to ducks, you would never want to jump, especially if you encountered a cold taco.
Instructions
For this assignment, you will implement a program that asks the user for a series of words and then displays the story with the user's words inserted into the appropriate places.
The program should begin by asking the user for each of the words. It should then, fill those words into the appropriate places in the story.
To begin, please use the following story:
The other day, I was really in trouble. It all started when I saw a very
[adjective]
[animal] [verb] down the hallway. "[exclamation]!" I yelled. But all
I could think to do was to [verb] over and over. Miraculously,
that caused it to stop, but not before
it tried to [verb]
right in front of my family.
Make sure to match the punctuation and spacing of the original story exactly (for example, you should not put your words on their own line, they should fit naturally into the story).
Also, make it so that the "exclamation" word is automatically capitalized, because it starts a new sentence.
Sample Output
Here is an example of how your program might work:
Please enter the following:
adjective: happy
animal: zebra
verb: sneeze
exclamation: hooray
verb: read
verb: drive
Your story is:
The other day, I was really in trouble. It all started when I saw a very
happy zebra sneeze down the hallway. "Hooray!" I yelled. But all
I could think to do was to read over and over. Miraculously,
that caused it to stop, but not before it tried to drive
right in front of my family.
Another example, where the user typed different values might look like this:
Please enter the following:
adjective: tired
animal: snail
verb: yell
exclamation: oh no
verb: sing
verb: skip
Your story is:
The other day, I was really in trouble. It all started when I saw a very
tired snail yell down the hallway. "Oh no!" I yelled. But all
I could think to do was to sing over and over. Miraculously,
that caused it to stop, but not before it tried to skip
right in front of my family.
Showing Creativity and Exceeding Requirements
As stated in the course syllabus, for each of the projects this semester, you'll be provided with the core requirements, or minimum standard expectations. If you complete those requirements, you are eligible for a 93% on the assignment. However, to be eligible for a 100% on the assignment, you will need to do something to show creativity and exceed these core requirements.
For this assignment, here are some ideas of how you might show creativity in addition to the core requirements:
- Consider adding more to the story, including several more words that will be filled in.
- If you have previous experience with topics that we will see later in the semester, consider a sentence that has an "a" or "an" in front of your word, and let the program fill in the right one.
- You can also do anything else you can think of. Remember, the goal here is to experiment with different ideas and to have fun.
Once you have added something extra to the program, you need to add a comment explaining your addition so the
grader knows to look for it. Please add a comment at the beginning of the file describing your addition in 1-2
sentences. A comment is a line of code that begins with the pound # character.
Important: In order to receive credit for showing creativity, you must include a comment (a
line that begins with # ) on line 1 of the program that describes in 1-2 sentences what you have
added.
Submission
When you have finished your program:
- Return to Canvas to submit your code.
Make sure to submit a .py file.
When you created your Python program, you should have created it as a .py file. This lets your
computer know that it is a program that can be run. Similarly, when you upload your program to Canvas to submit
it for grading you must upload the .py file. (For example: project1.py,
prove01.py, or stories.py)
If you submit a picture of your program, such as a .jpg or .png file, or submit it in
a text format such as a .txt or .docx file, then the grading team will not be able to
grade it. Please make sure to submit a .py file.
Up Next
Other Links:
- Return to: Week Overview | Course Home