Building Base Building Base
Simple
IT EN Spanish FR JA RU UK

La singularidad ha ocurrido y nos están haciendo construir un robo-ciudad ideal para nuestros amos. En esta reluciente robotropolis, todos los edificios serán rectangulares y todas las calles se tenderán sobre líneas de sur-norte y de este-oeste, creando una cuadrícula gloriosa. Antes de empezar, vamos a crear una clase para representar el edificio perfecto.

Debido a que todos los edificios de la ciudad son rectangulares y sus paredes son paralelas a las calles, podemos definir cualquier edificio utilizando sólo las coordenadas de la esquina sur-oeste, como dos argumentos... Como resultado, la esquina norte termina por tener un valor de coordenadas superior a la esquina sur. Para completar esta misión tenemos que utilizar un par de operaciones. Consulta a continuación la descripción de la clase.

Devuelve una nueva instancia de Building con la esquina sur-oeste en las coordenadas [ south , west ]. El tamaño es width_WE por width_NS y la altura del edificio es height . "height" es un número positivo con un valor predeterminado de 10.

>>> Building(10, 10, 1, 2, 2)
Building(10, 10, 1, 2, 2)
>>> Building(0, 0, 10.5, 2.546)
Building(0, 0, 10.5, 2.546, 10)

corners ()

Devuelve un diccionario con las coordenadas de las esquinas del edificio. El diccionario tiene las siguientes claves (keys): "north-west", "north-east", "south-west", "south-east". Los valores son listas o tuplas con dos números.

>>> Building(1, 2, 2, 2).corners()
{"north-west": [3, 2], "north-east": [3, 4], "south-west": [1, 2], "south-east": [1, 4]}

area ()

Devuelve el área del edificio.

>>> Building(1, 2.5, 4.2, 1.25).area()
5.25

volume ()

Devuelve el volumen del edificio.

>>> Building(1, 2.5, 4.2, 1.25, 101).volume()
530.25

__repr__ ()

Esta es una representación, como una cadena (str) del objeto(Building). Este método se utiliza para "imprimir" o para la conversión "str". Devuelve una cadena (str) de la siguiente forma:
"Building({south}, {west}, {width_we}, {width_ns}, {height})"

>>> str(Building(0, 0, 10.5, 2.546))
"Building(0, 0, 10.5, 2.546, 10)"

En esta misión todos los datos sean correctos y no es necesario que implementes una comprobación de valores.

Datos de Entrada: Las declaraciones y expresiones con la clase Building .

Salida: El comportamiento descrito.

¿Cómo se usa?: Aquí aprenderás cómo escribir una clase simple con funcionalidad mínima, para alcanzar la máxima gloria de Robonia.

Condiciones: Todos los datos son correctos.

You should be an authorized user in order to see the full description and start solving this mission.
Settings
Code:
CheckiO Extensions

CheckiO Extensions allow you to use local files to solve missions. More info in a blog post.

In order to install CheckiO client you'll need installed Python (version at least 3.8)

Install CheckiO Client first:

pip3 install checkio_client

Configure your tool

checkio --domain=py config --key=

Sync solutions into your local folder

checkio sync

(in beta testing) Launch local server so your browser can use it and sync solution between local file end extension on the fly. (doesn't work for safari)

checkio serv -d

Alternatevly, you can install Chrome extension or FF addon

checkio install-plugin
checkio install-plugin --ff
checkio install-plugin --chromium

Read more here about other functionality that the checkio client provides. Feel free to submit an issue in case of any difficulties.

×
 
 
<< <
> >>
exec

Whats Next?

Free accounts will see Best CheckiO solutions with some delay.
Best Solutions will be opened in
Become Awesome and Don't wait
The next stage is ""
Will be activated in
View More Solutions Random Review Solutions Share your own solution
Go to the next mission Back to the list of missions Back to the map