DATA 2100 Major Homework
Python Programming
100 points
Purpose
In this assignment, students will apply their (Python) programming skills to develop a data entry application that validates entries against a database and then records valid entries to the same database. Specific programming skills will include data input and output, variables, Python lists and indexes, loops, and if-statements.
Background
DustBunny Vacuums, a company we’ve heard from before, needs you to code an application for them that facilitates data entry when collecting data from customers. This application should prompt the user for data from multiple customers, verify that the customers are not already in the database, then record the new records into the database. Students will begin the assignment by importing the DustBunny Vacuums (for this assignment) dataset - MIS Major Programming HW Dataset.xlsx.
Assignment
For this assignment, you will submit two documents: (1) your Python program (this is the .py file that you create in the IDE) and (2) the check-off sheet included below, with those items checked that you were able to successfully complete.
The program you submit MUST RUN. Comment out any parts of your program that do not run prior to submitting (please be sure to include, but comment out, these parts so that we can get some idea as to the effort you went through). Also, the program must effectively execute all of the items that you’ve checked off on your checklist.
The full program, with everything checked off below, will ask the user to input a number of customer-related data points. These will include:
Customer First Name
Customer Last Name
State of Residence
Household Income
Marital Status
Number of Children
Pet Ownership Status (whether they own a pet or not)
After inputting each record, the program should ensure that the customer entered is a new customer by ensuring that there is not already someone in the database with the same first name and last name who is from the same state (this is the assumption we will make for this dataset to verify the customer is new). If the new record passes this validation test (i.e., if it’s a new record), then the record should be recorded into the database. If the new record fails the validation test, the user should be informed, and the record should not be written to the database.
After each record has been validated and included into the database (or not), the program should ask the user whether they would like to enter another record (and, if so, allow them to do so). At the end of the program, when the user is done entering records, the program should (a) output the values for all records that were inputted that session and (b) report how many total valid and invalid entries were made during the session (this should be two separate values — (1) total of valid entries and (2) total of invalid entries).
Check off all parts of the program that were successfully completed and submit this checklist via Canvas.
1.__ Includes the student’s name as part of a comment on the first line of the program (5 points)
2.__ Each major section of code is usefully commented to explain what’s happening. (10 points)
3.___ The MIS Major Programming HW Dataset.xlsx has been successfully imported into Microsoft Access through the instruction sheet in Module 4. The database is properly named DustBunny and the table is named CustomerInfo. (7 points)
4.__ Import the database driver module into your program. (2 points)
5.__ Connect to the Microsoft Access database within your program. (4 points)
6.The program asks the user to input (and facilitates input of) the following:
a.__ Customer first name (3 points)
b.__ Customer last name (3 points)
c.__ Customer marital status (Married or Single) (4 points)
d.__ State of Residence (use two-character postal code) (4 points)
e.__ Household Income (HHI) (4 points)
f.__ Number of children (4 points)
g.__ Pet Ownership Status (Y or N) (4 points)
7.The program should validate that each of the following are true and, if not, request the user to re-input:
a.__ First name and last name are not null (3 points)
b.__ Marital Status is married, single, or null (3 points)
c.__ The state entered consists of two characters and is not null (3 points)
d.__ Household income is a positive integer (3 points)
e.__ Number of children is a non-negative integer (3 points)
f.__ Pet Ownership Status is Y, N, or null (3 points)
8.__ Verifies against database data that the customer is not already in the database (if there’s already a user in the database with the same first and last name and state of residence, we’ll assume that’s a duplicate). (5 points)
9.__ Writes the new record to the database’s customer table (if the record is not a duplicate). Note that this customer table’s primary key, CustID, is set up in SQL Server as an auto-incrementing primary key. (4 points)
10.__ After completing entry of a record (i.e., after entering ALL of the information for one customer), user should be prompted to find out if they want to add another record. (5 points)
11.__ If the user wants to add 代寫DATA 2100 Major Python Programming another record, enables the record to be entered (and then validated and recorded to the database). (5 points)
12.__ Counts, separately, the number of valid and invalid records entered by the user, then outputs this number to the user once the user is done entering records. (5 points)
13.__ Thanks the user for the input and tells them, forcefully, to have a pretty good day. (4 points)
Bonus Points:
14.__ At the time when the user enters a customer’s state, verify that the state entered is valid according to the database (i.e., that it’s a state abbreviation that exists in the appropriate table). If it’s not, prompt the user to enter valid data. This should happen at the time the user enters the state data. (2 points)
15.__ Before throwing out a “duplicate record” (i.e., before not writing it to the database), inform the user that the record that was entered appears to be a duplicate record and ask whether the user would prefer to throw the record out or write it to the database despite the apparent duplication. (2 points)
16.__ When the user is done entering records, outputs (to the screen) each of the records that were entered during that session only (i.e., not all the records in the database table, just the ones that were entered during that session). (2 points)
DATA 2100 Major Python Programming
相關文章
- CF 2100-2400 data structures 亂做Struct
- mod_rele_dev_by_major: Unheld driver: major numberdev
- Python Socket ProgrammingPython
- JDK版本 - Major VersionJDK
- Major Database Release Number (22)Database
- python network programming tutorialPython
- The last major melee archetype includes the sneakyAST
- A summery after switching my major
- Programming Computer Vision with Python Test 1Python
- Data_StackExchange_PythonPython
- Programming Computer Vision with Python (學習筆記四)Python筆記
- Unsupported major.minor version 51.0 錯誤解決方案
- The Go Programming LanguageGo
- Lubuntu Setup for ProgrammingUbuntu
- Extreme Programming (轉)REM
- the java programming languageJava
- idea 2100年啟用碼Idea
- Xamarin中Unsupported major.minor version 52.0問題解決
- Minor GC、Major GC以及Full GC的介紹及對比GC
- "reactive programming"的概念React
- oracle pl/sql programmingOracleSQL
- CS 551 Systems Programming
- Programming languages Domain summaryAI
- data.ai:《Black Clover M》以2100萬下載量榮登2023年11月全球熱門遊戲榜首AI遊戲
- Getting going quickly with Python, MongoDB and Spatial dataUIPythonMongoDB
- List分頁(SQL引數化2100個 )SQL
- AIC2100人工智慧程式編寫AI人工智慧
- CF 口胡筆記 2100Ct輯筆記
- 核心動畫(Core Animation Programming)動畫
- Rust:Programming Rust:所有權Rust
- csharp excel interop programmingCSharpExcel
- Extreme Programming (XP)實踐REM
- 關於Unsupported major.minor version 52.0報錯問題解決方案
- hadoop 程式碼編譯 mvn報錯 Unsupported major.minor version 51.0Hadoop編譯
- 比特幣為什麼只有2100萬個比特幣
- 資料分析公司ClearStory獲2100萬美元融資
- 死磕The Swift Programming Language——學Swift
- golang programming language study methods websocketGolangWeb
- 開始學習Functional ProgrammingFunction