Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

You will be given a list of numbers. Each number is assigned a score. Its score

ID: 3720162 • Letter: Y

Question

You will be given a list of numbers. Each number is assigned a score. Its score is determined as follows:

A number’s base score is the value of the number itself. If the number is a palindrome it scores is doubled.
If the number is a near prime its score is doubled.
If the number is a nice number its score is tripled.

Consider how to determine the score of a number 89. It is not a palindrome and but it is nice and near prime:

Base score: 89
Score after palindrome check: 89 (remains same as not a palindrome) Score after near prime check: 188 (doubled as 89 is prime)
Score after nice check: 534 (tripled as 89 is nice)

Consider the number 101:
It is a palindrome, it is prime but it is not a nice number:
Base score: 101
Score after palindrome check: 202 (doubled as it’s a palindrome) Score after near prime check: 404 (doubled as 101 a prime) Score after nice check: 404 (not tripled as 101 is not nice)

Given a list of numbers entered by the user output the list of numbers in sorted order (ascending) of their scores. Also include the score achieved with each number separated by a comma after the number.

For example if the user enters 89
101
You have to output

101,404 89, 534

How would you write this in Python 3?

Explanation / Answer

I don't know the number logic that's why that logic not included


def prime_check(num): #prime number check
if num > 1:

for i in range(2,num):
if (num % i) == 0:
return True;
break
return False;
def palindrom_check(num):
temp=num #palindrome number check
rev=0
while(num>0):
dig=num%10
rev=rev*10+dig
num=num//10
if(temp==rev): #checking given number is equal to reverse or not   
return True
else:
return False

base_numbers_scores=[101,89] #list of base scores numbers
after_base_number_scores=[]
for num in base_numbers_scores:   
num_after_changes=num;
if(prime_check(num)):
num_after_changes=num_after_changes+num_after_changes; #doubling numbers
if(palindrom_check(num)):
num_after_changes=num_after_changes+num_after_changes;

after_base_number_scores.append(num_after_changes)
  
for i in range(len(base_numbers_scores)): #display values
print(base_numbers_scores[i],after_base_number_scores[i])


  

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote