You may only use selectors and constructors (introduced above) for this question. You may also use the distance function defined above. Remember, the point of data abstraction, as we've said, is that we do not need to know how an abstract data type is implemented, but rather just how we can interact with and use the data type. def closer_city (lat, lon, cityl, city2): """ Returns the name of either cityl or city2, whichever is closest to coordinate (lat, lon). HHH >>> berkeley = make_city('Berkeley', 37.87, 112.26) >>> stanford = make_city('Staniprd', 34.05, 118.25) >>> closer_city (38.33, 121.44, berkeley, stanford) 'Stanford' >>> bucharest = make_city('Bucharest', 44.43, 26.10) >>> vienna = make_city( 'Vienna', 48.20, 16.37) >>> closer_city (41.29, 174.78, bucharest, vienna) 'Bucharest' "*** YOUR CODE HERE *****" return

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
---for example,
Data abstraction is a powerful concept in computer science that allows programmers to treat code as objects
car objects, chair objects, people objects, etc. That way, programmers don't have to worry about how code is implemented
they just have to know what it does.
Data abstraction mimics how we think about the world. For example, when you want to drive a car, you don't need to know
how the engine was built or what kind of material the tires are made of. You just have to know how to turn the wheel and press
the gas pedal.
An abstract data type consists of two types of functions:
• Constructors: functions that build the abstract data type.
• Selectors: functions that retrieve information from the data type.
For example, say we have an abstract data type called city. This city object will hold the city's name, and its latitude
and longitude. To create a city object, you'd use a constructor like
city=make_city (name, lat, lon)
To extract the information of a city object, you would use the selectors like
get_name (city)
get_lat (city)
get_lon(city)
For example, here is how we would use the make_city constructor to create a city object to represent Berkeley and the
selectors to access its information.
>>> berkeley = make_city('Berkeley', 122, 37)
>>>get_name (berkeley)
'Berkeley'
>>>get_lat (berkeley)
>>>get_lon (berkeley)
122
37
Notice that we don't need to know how these functions were implemented. We are assuming that someone else has defined
them for us.
===
It's okay if the end user doesn't know how functions were implemented. However, the functions still have to be defined by
someone. We'll look into defining the constructors and selectors later in this discussion.
Ques
Ques
Quest
Politician
Questi
Submit
Transcribed Image Text:---for example, Data abstraction is a powerful concept in computer science that allows programmers to treat code as objects car objects, chair objects, people objects, etc. That way, programmers don't have to worry about how code is implemented they just have to know what it does. Data abstraction mimics how we think about the world. For example, when you want to drive a car, you don't need to know how the engine was built or what kind of material the tires are made of. You just have to know how to turn the wheel and press the gas pedal. An abstract data type consists of two types of functions: • Constructors: functions that build the abstract data type. • Selectors: functions that retrieve information from the data type. For example, say we have an abstract data type called city. This city object will hold the city's name, and its latitude and longitude. To create a city object, you'd use a constructor like city=make_city (name, lat, lon) To extract the information of a city object, you would use the selectors like get_name (city) get_lat (city) get_lon(city) For example, here is how we would use the make_city constructor to create a city object to represent Berkeley and the selectors to access its information. >>> berkeley = make_city('Berkeley', 122, 37) >>>get_name (berkeley) 'Berkeley' >>>get_lat (berkeley) >>>get_lon (berkeley) 122 37 Notice that we don't need to know how these functions were implemented. We are assuming that someone else has defined them for us. === It's okay if the end user doesn't know how functions were implemented. However, the functions still have to be defined by someone. We'll look into defining the constructors and selectors later in this discussion. Ques Ques Quest Politician Questi Submit
Implement closer_city, a function that takes a latitude, longitude, and two cities, and returns the name of the city that is
relatively closer to the provided latitude and longitude.
You may only use selectors and constructors (introduced above) for this question. You may also use the distance function
defined above. Remember, the point of data abstraction, as we've said, is that we do not need to know how an abstract data
type is implemented, but rather just how we can interact with and use the data type.
def closer_city (lat, lon, cityl, city2):
""" Returns the name of either cityl or city2, whichever is closest
to coordinate (lat, lon).
||||||
>>> berkeley = make_city('Berkeley', 37.87, 112.26)
>>> stanford = make_city('Staníprd', 34.05, 118.25)
>>> closer_city (38.33, 121.44, berkeley, stanford)
'Stanford'
>>> bucharest = make_city('Bucharest', 44.43, 26.10)
>>> vienna = make_city('Vienna', 48.20, 16.37)
>>> closer_city (41.29, 174.78, bucharest, vienna)
'Bucharest'
"*** YOUR CODE HERE ***"
return <REPLACE THIS>
Transcribed Image Text:Implement closer_city, a function that takes a latitude, longitude, and two cities, and returns the name of the city that is relatively closer to the provided latitude and longitude. You may only use selectors and constructors (introduced above) for this question. You may also use the distance function defined above. Remember, the point of data abstraction, as we've said, is that we do not need to know how an abstract data type is implemented, but rather just how we can interact with and use the data type. def closer_city (lat, lon, cityl, city2): """ Returns the name of either cityl or city2, whichever is closest to coordinate (lat, lon). |||||| >>> berkeley = make_city('Berkeley', 37.87, 112.26) >>> stanford = make_city('Staníprd', 34.05, 118.25) >>> closer_city (38.33, 121.44, berkeley, stanford) 'Stanford' >>> bucharest = make_city('Bucharest', 44.43, 26.10) >>> vienna = make_city('Vienna', 48.20, 16.37) >>> closer_city (41.29, 174.78, bucharest, vienna) 'Bucharest' "*** YOUR CODE HERE ***" return <REPLACE THIS>
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Reference Types in Function
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
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education