Python Programming: An Introduction to Computer Science
Python Programming: An Introduction to Computer Science
3rd Edition
ISBN: 9781590282779
Author: John Zelle
Publisher: Franklin Beedle & Associates
bartleby

Concept explainers

Question
Book Icon
Chapter 13, Problem 4PE
Program Plan Intro

Maximum of list

Program plan:

  • Import the package.
  • Define the “Max()” function,
    • Make simultaneous assignment to initialize the variables.
    • Assign the values return from “len()”.
    • Execute while loop when both “lst_1” and “lst_2” have more items,
      • Check whether top of “lst_1” is larger,
        • If it is “True”, copy that top value into current location in “lst_3”.
        • Increment “s1” by “1”.
      • Otherwise,
        • Copy the top of “lst_2” into the current location in “lst_3”.
        • Increment “s2” by “1”.
      • Increment “s3” by “1” when element is added to “lst_3”.
    • Execute the “while” loop to copy remaining elements from “lst_1”,
      • Copy the element.
      • Increment “s1” by “1”.
      • Increment “s3” by “1”.
    • Execute the "while" loop to copy remaining elements from “lst_2”,
      • Copy the element.
      • Increment “s2” by “1”.
      • Increment “s3” by “1”.
  • Define the function “merge_Sort()”,
    • Assign the initial values for the variable.
    • Check whether the number element is greater than 1,
      • Split the list into two sub lists.
      • Make simultaneous assignment to assign two sub lists using slicing.
      • Make recursive calls to sort each sub list.
      • Merge the sorted sub list into original list.
  • Create empty list.
  • Create for loop to iterate “100” times.
    • Append the random value to the end of the list.
  • Call the “merge_Sort()” function.
  • Print the list.

Expert Solution & Answer
Check Mark
Program Description Answer

This Python program is to demonstrate a recursive function “Max()” to find the largest number in a list where the largest number is the larger of the first item and the maximum of all the other items.

Explanation of Solution

Program:

File name: “conference.py

#Import the package

from random import randrange

#Define the function

def Max(lst_1, lst_2, lst_3):

    #Make simultaneous assignment

    s1, s2, s3 = 0, 0 , 0

    #Assign the values return from len()

    n1, n2 = len(lst_1), len(lst_2)

    '''Execute while loop when both lst_1 and lst_2 have more items'''

    while s1 < n1 and s2 < n2:

        #Check whether top of lst_1 is larger

        if lst_1[s1] > lst_2[s2]:    

            '''Copy that top value into current location in lst_3'''

            lst_3[s3] = lst_1[s1]    

            #Increment by "1"

            s1 = s1 + 1

        #Otherwise

        else:                    

            '''Copy the top of lst_2 into the current location in lst_3'''

            lst_3[s3] = lst_2[s2]   

            #Increment by "1"

            s2 = s2 + 1

        #Increment by "1" when element added into lst_3

        s3 = s3 + 1               

    '''Execute the "while" loop to copy remaining elements from lst_1'''

    while s1 < n1:

        #Copy the element

        lst_3[s3] = lst_1[s1]

        #Increment by "1"

        s1 = s1 + 1

        #Increment by "1"

        s3 = s3 + 1

    '''Execute the "while" loop to copy remaining elements from lst1_2'''

    while s2 < n2:

        #Copy the element

        lst_3[s3] = lst_2[s2]

        #Increment by "1"

        s2 = s2 + 1

        #Increment by "1"

        s3 = s3 + 1

#Define the function

def merge_Sort(num):

    #Assign the value

    n = len(num)

    '''Check whether the number element is greater than 1'''

    if n > 1:

        #Split the list into two sub lists

        v = n // 2

        '''Make simultaneous assignment to assign two sub lists using slicing'''

        nums_1, nums_2 = num[:v], num[v:]

        #Make recursive calls to sort each sub list

        merge_Sort(nums_1)

        merge_Sort(nums_2)

        #Merge the sorted sub list into original list

        Max(nums_1, nums_2, num)

#Create empty list

lst = []

#Create for loop

for n in range(100):

    #Append the random value to the end of the list

    lst.append(randrange(1, 1000))

#Call the function

merge_Sort(lst)

#Print the list

print(lst)

Sample Output

Output:

[996, 992, 975, 974, 956, 952, 947, 937, 921, 915, 902, 899, 891, 889, 886, 863, 863, 862, 856, 841, 837, 819, 808, 791, 760, 755, 754, 739, 736, 732, 685, 663, 638, 628, 623, 622, 612, 594, 569, 562, 552, 532, 531, 528, 527, 523, 492, 475, 468, 461, 452, 451, 444, 438, 431, 413, 405, 401, 375, 370, 358, 354, 350, 350, 347, 339, 325, 290, 286, 246, 227, 220, 215, 188, 185, 182, 168, 161, 149, 142, 141, 141, 139, 135, 115, 114, 112, 101, 96, 94, 94, 85, 84, 84, 80, 78, 70, 18, 13, 11]

>>>

Want to see more full solutions like this?

Subscribe now to access step-by-step solutions to millions of textbook problems written by subject matter experts!
Students have asked these similar questions
Please include comments and docs comments on the program.    The two other classes are Attraction and Entertainment.
Object-Oriented Programming In this separate files. ent, you'll need to build and run a small Zoo in Lennoxville. All classes must be created in Animal (5) First, start by building a class that describes an Animal at a Zoo. It should have one private instance variable for the name of the animal, and one for its hunger status (fed or hungry). Add methods for setting and getting the hunger satus variable, along with a getter for the name. Consider how these should be named for code clarity. For instance, using a method called hungry () to make the animal hungry could be used as a setter for the hunger field. The same logic could be applied to when it's being fed: public void feed () { this.fed = true; Furthermore, the getter for the fed variable could be named is Fed as it is more descriptive about what it answers when compared to get Fed. Keep this technique in mind for future class designs. Zoo (10) Now we have the animals designed and ready for building a little Zoo! Build a class…
1.[30 pts] Answer the following questions: a. [10 pts] Write a Boolean equation in sum-of-products canonical form for the truth table shown below: A B C Y 0 0 0 1 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 1 1 1 1 0 a. [10 pts] Minimize the Boolean equation you obtained in (a). b. [10 pts] Implement, using Logisim, the simplified logic circuit. Include an image of the circuit in your report. 2. [20 pts] Student A B will enjoy his picnic on sunny days that have no ants. He will also enjoy his picnic any day he sees a hummingbird, as well as on days where there are ants and ladybugs. a. Write a Boolean equation for his enjoyment (E) in terms of sun (S), ants (A), hummingbirds (H), and ladybugs (L). b. Implement in Logisim, the logic circuit of E function. Use the Circuit Analysis tool in Logisim to view the expression, include an image of the expression generated by Logisim in your report. 3.[20 pts] Find the minimum equivalent circuit for the one shown below (show your work): DAB C…
Knowledge Booster
Background pattern image
Computer Science
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
SEE MORE QUESTIONS
Recommended textbooks for you
Text book image
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning
Text book image
C++ for Engineers and Scientists
Computer Science
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Course Technology Ptr
Text book image
Programming Logic & Design Comprehensive
Computer Science
ISBN:9781337669405
Author:FARRELL
Publisher:Cengage
Text book image
Systems Architecture
Computer Science
ISBN:9781305080195
Author:Stephen D. Burd
Publisher:Cengage Learning
Text book image
New Perspectives on HTML5, CSS3, and JavaScript
Computer Science
ISBN:9781305503922
Author:Patrick M. Carey
Publisher:Cengage Learning
Text book image
COMPREHENSIVE MICROSOFT OFFICE 365 EXCE
Computer Science
ISBN:9780357392676
Author:FREUND, Steven
Publisher:CENGAGE L