# Ejemplo de Cálculo

Consideremos un ejemplo de un robot que demuestra el uso de índices en el selector para cálculos aleatorios en una calculadora. Este robot genera un número aleatorio, sobre el cual hará clic en la interfaz de la calculadora.

El proyecto del robot consta de un diagrama, que se ve de la siguiente manera (para mayor comodidad, los bloques del diagrama están numerados):

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXfiTHXDaz-CrPKL5piGUPI2SzvJZACtLFosuUgBcTZmXjQlE_MIFdjk92PGOm-LH9kdd7lfoo9WRs-mpkgiulFghA15vPoOlp56OdBfFl0juBeUK5gGiCio1T_imrckKYF9zMkm41HOYNIS74hMyHdfr_I?key=0IUVWPWjCJo2wp2B7nwtag" alt=""><figcaption></figcaption></figure>

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXc_2Oyy_j5WHN576XJCV9KWKpYYoNLmJ_sCs7ag7OpeKGGEVfM4sSOzyBHh4FRB-ih8jWUk5yzjwHiy9P6Ws7whHSo7SFFBgyGPGhf2WokBeXQdiwAjhlHP3FyYbhoqkcZ_m9lJ_XGUhW2v5wv7ITZKLtr-?key=0IUVWPWjCJo2wp2B7nwtag" alt=""><figcaption></figcaption></figure>

1. **Bloque "Inicio"** (cualquier diagrama comienza con este bloque).
2. **Bloque "Iniciar aplicación"** inicia la aplicación especificada con los parámetros dados. Para este bloque se han especificado las siguientes propiedades:

* Ruta a la aplicación (ruta a la aplicación que se va a iniciar);
* Espera de inicio (la bandera establecida pausa la ejecución del script hasta que la aplicación especificada se inicie completamente);
* Selector (permite seleccionar interactivamente la aplicación que se iniciará mediante el selector).

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXd6KTcLlSHgdkP02UoW-iX3vYu6zk1XbtBaTra4hr2S30SpsvEwQZNaSdTFpbkffMYwWoi7kTiu9ZQFuR7ENNoXQ-GW5RNP0Vl1YptUOBVB2XW8baLyFULeqb-SaoL8yWGYOIet8rXSLm_bnGHkbRvYHNAj?key=0IUVWPWjCJo2wp2B7nwtag" alt=""><figcaption></figcaption></figure>

3. **Bloque "Pausa"** pausa la ejecución del script durante un tiempo determinado. Para este bloque se han especificado las siguientes propiedades:

* Unidad de medida (unidad de medida en la que se ha especificado la duración de la pausa);
* Duración (número de segundos durante los cuales se pausará la ejecución del script).

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXc5n-J7tyZ8Nh-tzqLd_B6npnjieZeQyog_9YF8nO9Yd4wmn6zTzH_3nbFv0-B7puflSs-WTOQ2PPJ2qjkEnZS2kFvje6GofmVjxg6nXpLuEYEv4mgMt3-12zurtgU0kKQ3sJz5IaRmQC9yNaBROdDpjL9E?key=0IUVWPWjCJo2wp2B7nwtag" alt=""><figcaption></figcaption></figure>

4. **Bloque "Número aleatorio"** genera un número aleatorio con los parámetros especificados. Para este bloque se han especificado las siguientes propiedades:

* Valor mínimo (valor mínimo para el número aleatorio);
* Valor máximo (valor máximo para el número aleatorio);
* Paso (paso del número aleatorio).

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXdvTtuU4RRAWFqjmzRztrAB6iNC4VGMbUZOZ2BKt3asm3pURa0m5a5blENAylayJzTkYSboODhc4QKrd_IkUOFKc3CBPSKPkEFhrQN1RMMjUflvLaXQBGrWInVINKfwpoALYVCDQJ9FQjdRAE5mGHyCZGIT?key=0IUVWPWjCJo2wp2B7nwtag" alt=""><figcaption></figcaption></figure>

5. **Bloque "Asignar valor a la variable"** establece nuevos valores para una o varias variables. En este caso, en las propiedades se ha indicado un valor que debe asignarse a una variable específica.

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXdCrFoLghURIEz5AZZJZye9AILjEhBb5GPrTUzxJy7S5BBs4zqnbiDvVh699JQwDddhfFHAv8aj3TRRphM7eqDacmDDOMfqFDFJKkl1XUfrx6aX2BQ_C3jUOMuD78vGFPrKiHB42yCbK2QIrxzqYlb1THsZ?key=0IUVWPWjCJo2wp2B7nwtag" alt=""><figcaption></figcaption></figure>

6. **Bloques "Clic con el ratón"** realizan un clic en el elemento especificado de la aplicación. Para estos bloques se utilizan selectores.

En el primer selector se realiza un clic en el botón con el número que se obtuvo anteriormente a través del bloque "Número aleatorio".\
En el segundo selector se realiza un clic en el botón de suma (+).

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXfbeRJBRPzAg_S7EvXLeL3L8dVP07MIIExZN0nYw_byE8STF2tjguXRvhpOnHLia9BJL5brOGOjZuWX20J5Pw-GHQ8li4oQQdlCUhWYFqLs7yxFZb9eHgD70Z1iXPPoPm45JsYOkR6224tH0gEcqbBNm2zN?key=0IUVWPWjCJo2wp2B7nwtag" alt=""><figcaption></figcaption></figure>

7. **Bloque "Número aleatorio"** genera un número aleatorio con los parámetros especificados. Para este bloque se han especificado las siguientes propiedades:

* Valor mínimo (valor mínimo para el número aleatorio);
* Valor máximo (valor máximo para el número aleatorio);
* Paso (paso del número aleatorio).

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXfJ7Krr-ru5BcxmMi10TDqkF1g7u2aBGFa0JlwhvVU87TScR2Gk7DdfIUsspGXtT8Hii2W62vynB1D-xaCc1kZCuj0NjrK1cJ8I3Fk7Uqdqwn0HnTld7r8UMPhIX2BQ9waZn_dVSM_6Cd0vvUhq2knA9daY?key=0IUVWPWjCJo2wp2B7nwtag" alt=""><figcaption></figcaption></figure>

8. **Bloque "Asignar valor a la variable"** establece nuevos valores para una o varias variables. En este caso, en las propiedades se ha indicado un valor que debe asignarse a una variable específica.

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXcObw--oX5jNWXDZZbkkjICKF1Xp-aHeH2Swr2Pfzj1gR5LtRaKHFQlKvgeEAVJU5LMNiePN2rGOmkS4FMb4QrKewZsWn0tFxUdRirL6051UjRwmSrsuwtruYIV36IR1AzGpcG-MXxfmm6U4AloRvax2-Bf?key=0IUVWPWjCJo2wp2B7nwtag" alt=""><figcaption></figcaption></figure>

9. **Bloques "Clic con el ratón"** realizan un clic en el elemento especificado de la aplicación. Para estos bloques se utilizan selectores.

En el primer selector se realiza un clic en el botón con el número que se obtuvo anteriormente a través del bloque "Número aleatorio".\
En el segundo selector se realiza un clic en el botón de suma (+).

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXd0oUDinR5XLbOsWqUYv4FLeEPPJyry3wTzshV42hAvKhWBgDYnlJ3LmI8a3KlGaYohkvF1Xd-lF3h1iuLGjE8z__-LJDBW4uUyLQtYdq3Gnc9RWrPeqf_c3K9eW7oJAWSTQUu1syautwi9yq-Qi-1Oj9cU?key=0IUVWPWjCJo2wp2B7nwtag" alt=""><figcaption></figcaption></figure>

10. **Bloque "Pausa"** pausa la ejecución del script durante un tiempo determinado. Para este bloque se han especificado las siguientes propiedades:

* Unidad de medida (unidad de medida en la que se ha especificado la duración de la pausa);
* Duración (número de segundos durante los cuales se pausará la ejecución del script).

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXc5n-J7tyZ8Nh-tzqLd_B6npnjieZeQyog_9YF8nO9Yd4wmn6zTzH_3nbFv0-B7puflSs-WTOQ2PPJ2qjkEnZS2kFvje6GofmVjxg6nXpLuEYEv4mgMt3-12zurtgU0kKQ3sJz5IaRmQC9yNaBROdDpjL9E?key=0IUVWPWjCJo2wp2B7nwtag" alt=""><figcaption></figcaption></figure>

11. **Bloque "Presionar teclas"** emula la pulsación de teclas en el teclado. Para este bloque se han especificado las siguientes propiedades:

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXcVFPkn_FThG7Tu-4-T686OJJx4W0nqWHAAYPAM8ZGof5Ke1RLzL5nJxlhDPDUrWIcBq556odG6-G5IluVvNhtddJMkqzDpK1QZIBJSjTLNiJ7ODLKB9R2di9sOQ_ntrqVEvZaC_og1kFA1DrotRRqUK_cU?key=0IUVWPWjCJo2wp2B7nwtag" alt=""><figcaption></figcaption></figure>

12. **Bloque "Fin"** (este bloque finaliza la ejecución del script o devuelve el diagrama del subproceso al proceso principal).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sherparpa.ru/es/sherpa-rpa/sherpa-designer/primery-robotov/calc-example.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
