16 Commits

Author SHA1 Message Date
386a40fc70 Merge pull request 'week-2' (#2) from week-2 into master
Reviewed-on: https://kitsunehosting.net/gitea/Kenwood/SNHU-IT-140/pulls/2
2021-02-02 20:57:09 -05:00
97bc27ebd1 Merge pull request 'week-3' (#4) from week-3 into master
Reviewed-on: https://kitsunehosting.net/gitea/Kenwood/SNHU-IT-140/pulls/4
2021-01-24 03:02:55 -05:00
Joe S
ab881dd578 Final fix to exact change 2021-01-23 19:36:45 -05:00
Joe S
d27d5025fb Boring exact change solution 2021-01-23 18:47:51 -05:00
Joe S
cb99c6af49 Adjust the default logging level 2021-01-23 17:04:13 -05:00
Joe S
f5ef14dee8 Submit 3.11 lab 2021-01-23 16:56:48 -05:00
Joe S
247b241041 Auto gen all the range values for the 3.11 lab 2021-01-23 16:30:33 -05:00
Joe S
1b92f1d3f6 Create 3.11 lab 2021-01-23 15:51:03 -05:00
Joe S
89b8c97671 Make a better tweet decoder 2021-01-23 15:32:23 -05:00
Joe S
6d9c78c801 Complete the 2-3 Assignment 2021-01-20 00:20:26 -05:00
Joe S
e08e312789 Fix grade calculation 2021-01-20 00:06:27 -05:00
Joe S
a79e01ee28 Create creating_passwords.py 2021-01-16 23:22:49 -05:00
Joe S
2f215aa45b Create count_characters.py 2021-01-16 23:07:56 -05:00
Joe S
970aa86bcb Refactor name_format 2021-01-16 22:57:33 -05:00
Joe S
9b128a8a96 Create name_format.py 2021-01-16 22:56:07 -05:00
Joe S
e494261948 Create grade_calculation.py 2021-01-16 22:56:04 -05:00
17 changed files with 251 additions and 0 deletions

3
2/2-3/.idea/.gitignore generated vendored Normal file
View File

@@ -0,0 +1,3 @@
# Default ignored files
/shelf/
/workspace.xml

11
2/2-3/.idea/2-3.iml generated Normal file
View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="PYTHON_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
<component name="TestRunnerService">
<option name="PROJECT_TEST_RUNNER" value="pytest" />
</component>
</module>

View File

@@ -0,0 +1,6 @@
<component name="InspectionProjectProfileManager">
<settings>
<option name="USE_PROJECT_PROFILE" value="false" />
<version value="1.0" />
</settings>
</component>

4
2/2-3/.idea/misc.xml generated Normal file
View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.7" project-jdk-type="Python SDK" />
</project>

8
2/2-3/.idea/modules.xml generated Normal file
View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/2-3.iml" filepath="$PROJECT_DIR$/.idea/2-3.iml" />
</modules>
</component>
</project>

6
2/2-3/.idea/vcs.xml generated Normal file
View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/../.." vcs="Git" />
</component>
</project>

Binary file not shown.

Binary file not shown.

20
2/2-3/main.py Normal file
View File

@@ -0,0 +1,20 @@
import datetime
def prompt_user():
name = input('What is your name? ')
try:
age = int(input('How old are you? '))
except ValueError:
return 'Age must be a number.'
return 'Hello {0}! You were born in {1}.'.format(name, get_year() - age)
def get_year():
now = datetime.datetime.now()
return now.year
if __name__ == '__main__':
print(prompt_user())

View File

@@ -0,0 +1,20 @@
def output_format_one(first, middle, last):
_format = "{0}, {1}.".format(last, first[0])
return _format
def output_format_two(first, middle, last):
_format = "{0}, {1}.{2}.".format(last, first[0], middle[0])
return _format
if __name__ == '__main__':
name = input("Input your name: ")
name = name.split(' ')
if len(name) == 2:
name = output_format_one(name[0], None, name[1])
elif len(name) == 3:
name = output_format_two(name[0], name[1], name[2])
print(name)

View File

@@ -0,0 +1,15 @@
if __name__ == '__main__':
_input = input()
character, phrase = [_input.split(' ', 1)[i] for i in range(2)]
frequency = phrase.count(character)
frequency_nocase = phrase.upper().count(character.upper())
if frequency != 0:
print(frequency)
#elif frequency_nocase > 0: # Lol im stupid~
# print("{0} is diferent than {1}.".format(character, character.upper()))
if frequency == 0 & frequency_nocase == 0:
print(frequency)

View File

@@ -0,0 +1,16 @@
if __name__ == '__main__':
favorite_color = input('Enter favorite color:\n')
pets_name = input('Enter pet\'s name:\n')
favorite_number = input('Enter a number:\n')
print('You entered: {0} {1} {2}\n'.format(favorite_color, pets_name, favorite_number))
first_password = '{0}_{1}'.format(favorite_color, pets_name)
second_password = '{0}{1}{0}'.format(favorite_number, favorite_color)
print('First password: {0}'.format(first_password))
print('Second password: {0}\n'.format(second_password))
print('Number of characters in {0}: {1}'.format(first_password, len(first_password)))
print('Number of characters in {0}: {1}'.format(second_password, len(second_password)))

View File

@@ -0,0 +1,20 @@
def collect_grades():
grades = []
print('Enter a score on an exam. If the weight is different than x/100 specify using (grade)/(weight).')
while True:
_input = input('''Enter a score on an exam. ( 93 OR 93/100)\n(Press enter to stop):\n''')
if len(_input) == 0:
break
grades.append(_input)
return grades
if __name__ == '__main__':
print(collect_grades())
exam1_grade = float(input('Enter score on Exam 1 (out of 100):\n'))
exam2_grade = float(input('Enter score on Exam 2 (out of 100):\n'))
exam3_grade = float(input('Enter score on Exam 3 (out of 100):\n'))
overall_grade = (exam1_grade + exam2_grade + exam3_grade) / 3
print('Your overall grade is:', overall_grade)

View File

@@ -0,0 +1,13 @@
tweet = input('Enter abbreviation from tweet:\n')
tweet_dict = {
'LOL': 'LOL = laughing out loud',
'BFN': 'BFN = bye for now',
'FTW': 'FTW = for the win',
'IRL': 'IRL = in real life'
}
try:
print(tweet_dict[tweet.upper()])
except KeyError:
print("Sorry, don't know that one")

View File

@@ -0,0 +1,16 @@
def get_input():
result = []
print('Enter a number when prompted. Press enter to stop')
while True:
_input = input('Input a number: ')
if len(_input) == 0:
break
try:
_input = int(_input)
result.append(_input)
except ValueError:
print("Error, only accepts numbers")
return result
print(min(get_input()))

View File

@@ -0,0 +1,53 @@
from datetime import datetime
import logging
logging.basicConfig(level=logging.ERROR)
input_month = input('Input a month to analyse: ')
input_day = int(input('Input a day of that month: '))
def convert_doy_to_season(doy):
if not isinstance(doy, int):
return 'Invalid'
if 79 <= doy <= 171:
return 'Spring'
if 172 <= doy <= 264:
return 'Summer'
if 265 <= doy <= 354:
return 'Autumn'
if 355 <= doy <= 365 or 1 <= doy <= 78:
return 'Winter'
def convert_month_to_num(month_name):
try:
_date = datetime.strptime(month_name, "%B")
logging.debug(_date.month)
return int(_date.month)
except ValueError:
logging.warning('Was unable to convert from full month name, trying with shortname.')
try:
_date = datetime.strptime(month_name, "%b")
logging.debug(_date.month)
return int(_date.month)
except ValueError:
logging.error('Was unable to convert the month {0}! Tried long name and short name.'.format(month_name))
return None
def day_of_year(month,day):
try:
# Cannot handle leap years!!!
if day > 30 or day <= 0:
raise OverflowError
result = int((275 * month) / 9.0) - 2 * int((month + 9) / 12.0) + day - 30
logging.debug(result)
return result
except TypeError:
return None
except OverflowError:
return None
print(convert_doy_to_season(day_of_year(convert_month_to_num(input_month), input_day)))

View File

@@ -0,0 +1,40 @@
try:
user_cents = int(input('Cents: '))
except ValueError:
print('Cannot cannot parse input.')
exit()
change = []
coins = [
['Dollars', 'Dollar'],
['Quarters', 'Quarter'],
['Dimes', 'Dime'],
['Nickels', 'Nickel'],
['Pennies', 'Penny']]
while user_cents >= 100:
user_cents -= 100
change.append(coins[0])
while user_cents >= 25:
user_cents -= 25
change.append(coins[1])
while user_cents >= 10:
user_cents -= 10
change.append(coins[2])
while user_cents >= 5:
user_cents -= 5
change.append(coins[3])
for _i in range(user_cents):
change.append(coins[4])
if len(change) != 0:
for coin in coins:
num_coins = change.count(coin)
if num_coins != 0:
if num_coins > 1:
print('{0} {1}'.format(num_coins, coin[0]))
else:
print('{0} {1}'.format(num_coins, coin[1]))
else:
print('No change ')