95 lines
4.0 KiB
Python
95 lines
4.0 KiB
Python
def sum_dataset(dataset_number):
|
|
sum = 0
|
|
|
|
for a in dataset_number:
|
|
sum += a
|
|
|
|
return sum
|
|
|
|
def upper_letter_count(dataset_sentence):
|
|
upper = 0
|
|
for count in dataset_sentence:
|
|
if count.isupper():
|
|
upper += 1
|
|
return upper
|
|
|
|
def lower_letter_count(dataset_sentence):
|
|
lower = 0
|
|
for count in dataset_sentence:
|
|
if count.islower():
|
|
lower += 1
|
|
return lower
|
|
|
|
def sum_letters_in_sentence(dataset_sentence):
|
|
lower=0
|
|
upper=0
|
|
result = lower + upper
|
|
for count in dataset_sentence:
|
|
if(count.islower()):
|
|
lower+=1
|
|
else:
|
|
upper+=1
|
|
return result
|
|
|
|
########################################################################################################################
|
|
|
|
def verify(message, actual, expected):
|
|
print(message)
|
|
if actual != expected:
|
|
print("=======> FAILED! <=======")
|
|
print(f"Got value <{actual}>")
|
|
print(f"Expected value is <{expected}>")
|
|
else:
|
|
print("SUCCESS!")
|
|
print()
|
|
|
|
dataset_sentence1 = ["My Year was so Great, but it was hard!"]
|
|
dataset_sentence2 = ["HeakfhZUWmvbhfPEHFHT123"]
|
|
dataset_sentence3 = ["Madame, I demand, I am a maid named Angelo"]
|
|
dataset_sentence4 = ["bAgahaJemanbDneorIJahdhrEa4"]
|
|
dataset_sentence5 = ["The World is not enough"]
|
|
dataset_sentence6 = ["SaipPuakivIkAuPpias"]
|
|
dataset_sentence7 = ["i lOve tO reAd bOoKs, esPecIaLly mysTerY nOvels"]
|
|
dataset_sentence8 = ["i aM eNjoyiNg thiS coOl weatHer, It's so rEfReshing"]
|
|
dataset_sentence9 = ["i HaVe a dOg namEd bUddy, hE iS a fRienDlY aNd fUn cOmPanion"]
|
|
|
|
dataset_number1 = [23, 34, 89, 12, -12, 92, 123, 9, 204, -34, -100, 34, 19, 67, -1]
|
|
dataset_number2 = [10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10]
|
|
dataset_number3 = [927, 142, -816, 682, -6599, 1000, -8, 334, 0, 6654, -8361, 555, 121, 680]
|
|
|
|
sum_dataset_test = [dataset_number1, dataset_number2, dataset_number3, [], [0]]
|
|
upper_letter_count_test = [dataset_sentence1, dataset_sentence2, dataset_sentence3, '']
|
|
lower_letter_count_test = [dataset_sentence4, dataset_sentence5, dataset_sentence6, '']
|
|
sum_letters_in_sentence_test = [dataset_sentence7, dataset_sentence8, dataset_sentence9, '']
|
|
|
|
########################################################################################################################
|
|
|
|
for i in range(len(sum_dataset_test)):
|
|
result = sum_dataset(sum_dataset_test[i])
|
|
expected = sum(sum_dataset_test[i])
|
|
verify(f"SUM_DATASET TEST {i+1}", result, expected)
|
|
|
|
########################################################################################################################
|
|
|
|
for i in range(len(upper_letter_count_test)):
|
|
sentence = upper_letter_count_test[i]
|
|
expected_result = sum(1 for letter in sentence if letter.isupper()) if isinstance(sentence, str) else 0
|
|
verify(f"UPPER_LETTER_COUNT TEST {i+1}", upper_letter_count(sentence), expected_result)
|
|
|
|
########################################################################################################################
|
|
|
|
for i in range(len(lower_letter_count_test)):
|
|
sentence = lower_letter_count_test[i]
|
|
expected_result = sum(1 for letter in sentence if letter.islower()) if isinstance(sentence, str) else 0
|
|
verify(f"LOWER_LETTER_COUNT TEST {i+1}", lower_letter_count(sentence), expected_result)
|
|
|
|
########################################################################################################################
|
|
|
|
for i in range(len(sum_letters_in_sentence_test)):
|
|
sentence = sum_letters_in_sentence_test[i]
|
|
expected_upper = sum(1 for letter in sentence if letter.isupper()) if isinstance(sentence, str) else 0
|
|
expected_lower = sum(1 for letter in sentence if letter.islower()) if isinstance(sentence, str) else 0
|
|
expected_result = expected_upper + expected_lower
|
|
verify(f"SUM_LETTERS_IN_SENTENCE TEST {i+1}", sum_letters_in_sentence(sentence), expected_result)
|
|
|
|
######################################################################################################################## |