联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-23:00
  • 微信:codinghelp

您当前位置:首页 >> Python编程Python编程

日期:2021-04-13 10:20

? 2021, Monash University

FIT9136 Assignment 1

Semester 1 2021

Teaching Associate, Faculty of IT

? 2021, Monash University

? 2021, Monash University

Table of Contents

1. Key Information 3

1.1. Learning outcomes 3

1.2. Do and Do NOT 3

1.3. Marking Criteria 3

1.4. Submission details 4

2. Getting help 5

2.1. English language skills 5

2.2. Study skills 5

2.3. Things are tough right now 5

2.4. Things in the unit don’t make sense 5

2.5. I don’t know what I need 5

3. Key tasks (100 marks) 6

3.1. Password Generator (10 marks) 6

3.2. Uncommon Statistics (22 marks) 6

3.3. Batch Statistics (30 Marks) 7

3.4. Returning Home (38 marks) 7

? 2021, Monash University

1. Key Information

Format: Individual

Due date: 5pm 12th April

2021

Weight: 5% of unit mark

1.1. Learning outcomes

1. design, construct, test and document Python programs;

2. demonstrate how basic data types/structures function;

3. evaluate different algorithms and analyse their complexity;

4. translate problems into algorithms with appropriate implementations by investigating

different strategies for the algorithm development

1.2. Do and Do NOT

Do Do NOT

● Maintain academic integrity1

● Get support early from this unit and

other services in the university

(please check Section 2)

● Apply for special consideration for

extensions2

● Leave your assignment in draft mode

● Submit late (10% daily penalty

applies)3

● Submission is not accepted after 7

days of the due date, unless you have

special consideration.

● Import any libraries

1.3. Marking Criteria

Your work will be marked on

Functionality Correctly working program 60%

Code

Architecture

Algorithms, data types, control structures and use

of libraries

10%

Code Style Variable names, readability, clear logic 10%

Documentation Program comments, clarity and connection to

code

20%

1 https://www.monash.edu/rlo/research-writing-assignments/referencing-and-academicintegrity/academic-integrity

2 https://www.monash.edu/exams/changes/special-consideration

3 eg: original mark was 70/100, submitting 2 days late results in 50/100 (20 marks off). This

includes weekends

? 2021, Monash University

1.4. Submission details

Submit to “Assignment 1 Submission” on moodle:

● A1_studentID.zip4

● Make a different .py file for each question and name it as question_name.py.5

Containing each of the four (4) tasks covered in Section 3. Key tasks (100 marks)


4 studentID is your student ID. E.g. if your Id was 12345678, you would submit

“A1_12345678.zip” 5 Question_name is a question name of the task. E,g, for the first question “Password”, you

would name it as “password.py”.

? 2021, Monash University

2. Getting help

2.1. English language skills

if you don’t feel confident with your English.

● Talk to English Connect: https://www.monash.edu/english-connect

2.2. Study skills

If you feel like you just don’t have enough time to do everything you need to, maybe you just

need a new approach

● Talk to a learning skills advisor: https://www.monash.edu/library/skills/contacts

2.3. Things are tough right now

Everyone needs to talk to someone at some point in their life, no judgement here.

● Talk to a counsellor: https://www.monash.edu/health/counselling/appointments

(friendly, approachable, confidential, free)

2.4. Things in the unit don’t make sense

Even if you’re not quite sure what to ask about, if you’re not sure you won’t be alone, it’s

always better to ask.

● Ask in Ed: https://lms.monash.edu/course/view.php?id=103443&section=3

● Attend a consultation:

https://lms.monash.edu/course/view.php?id=103443&section=2

2.5. I don’t know what I need

Everyone at Monash University is here to help you. If things are tough now they won’t

magically get better by themselves. Even if you don’t exactly know, come and talk with us

and we’ll figure it out. We can either help you ourselves or at least point you in the right

direction.

? 2021, Monash University

3. Key tasks (100 marks)

This assignment is broken into four parts. Each part is attempting to assess a particular

aspect of programming. Read each section carefully and attempt to solve them using the

techniques we have explored during the unit (Week 1 - 5). You cannot use any external

libraries to answer any part of this assignment.

3.1. Password Generator (10 marks)

Write a function with the signature password(). This function asks the user to input their

name, their Date of Birth (formatted as DD/MM/YYYY), and their country of origin. The

function will then generate a password and print it to the screen.

The password generated will be made in the following manner:

{LastYear}{FirstThreeLettersofName}{Day}{LastTwoLetterofCountry}{Month}

The last two letter of the country needs to be in upper case, and the first three letters must

be lower case.

If the inputs would be Gavin Kroeger, 17/06/1991, Australia. The output password would be

91gav17IA06

Your function shouldn't accept any arguments, it should ask for input during its execution.

You need to include at least 2 validations for this program.

3.2. Uncommon Statistics (22 marks)

Write a function with the signature uncommon(numbers) where the numbers is a list of

numbers (e.g. [2,1,4,0,3]). Each number will only be an integer between -1 and 11 (not

inclusive). Please calculate the following.

● Total: The sum of all the items in the list. (Hint: You cannot use sum() to answer this

question)

● Integer Count: A count of each of the numbers in the list. This should be in the form

of a list that has the counts for each number between -1 and 11. Each index should

represent a number. (use the range of numbers between -1 and 11 as the base to

count the frequency of the numbers in the numbers list. Hint: You cannot use count()

to answer this question)

● Largest Item: The element that is the largest in the list. (Hint: You cannot use max()

to answer this question)

● Range: The difference between the smallest element and the largest element.

For example, if numbers were [1,1,1,2,3,2,1,4,5,6] its statistics would be:

● Total: 26

● Integer Count: [0,4,2,1,1,1,1,0,0,0,0]

● Largest Item: 6

● Range: 5

? 2021, Monash University

The function will return the above statistics as a list in the order of [total, integer count,

largest item, range]. Using our example, the function would be called as

uncommon([1,1,1,2,3,2,1,4,5,6]) and would return [26,[0,4,2,1,1,1,1,0,0,0,0],6,5]

You need to include at least 1 validation for this program.

3.3. Batch Statistics (30 Marks)

Write a function called batch_statistics(filename) where filename is the name of a file in the

directory of your Python script. Each line in the file is a set of numbers that you must pass

to the function written in section 3.2. The output of running uncommon(numbers) should be

written to a file called "filename-output.txt" where filename is the input to this function.

Examples of input and output can be found on Moodle.

If you are unable to finish section 3.2, you can attempt to finish this question as though your

attempt at 3.2 works as intended.

3.4. Returning Home (38 marks)

Write a function called home(path) where path is a string that contains directions to move.

The function validates that a given path returns the traveller to where they started, i.e. home.

It should return True if the path is a valid journey, and False if it is not. Your input path will

use ‘N’ for North, ‘S’ for South, ‘E’ for East, and ‘W’ for West. Each movement will be space

separated. E.g. if your path is to go North, then go East, the path would be “N E”.

Note: the empty path of “” is an invalid path. Technically, you do end your journey where you

started, but because you don't go anywhere, it isn't really a journey.

Please use the examples below to test your program.

● “E W” True

● “E S” False

● “N E S W” True

● “N N N E S S S” False

You need to include at least 1 validation.


版权所有:留学生编程辅导网 2020 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp