# Smart Contracts

Los códigos ejecutables o programas dentro de Ethereum se llaman smart contracts (contratos inteligentes), bajo la premisa de que un programa es similar a un contrato: una vez cumplidas ciertas condiciones se desencadenan acciones. Ethereum es una computadora mundial descentralizada que ejecuta smart contracts.

Un ejemplo de smart contract para soportar una apuesta por un partido de fútbol podría ser el siguiente:

El smart contract recibe a través de una transacción el importe de la apuesta (10 dólares) de cada uno de los dos jugadores participantes. El jugador A gana si el equipo XYZ gana o empata. El jugador B gana si el equipo XYZ pierde. El smart contract obtiene el resultado del partido de fútbol de una fuente confiable y predefinida, que podría ser otro smart contract, una página web en la que iría a buscar el resultado o de una persona delegada. Según el resultado del partido, el smart contract envía electrónicamente 20 dólares al ganador.

**Respecto al término “Smart Contract”**

Por un lado, el término smart contracts o contratos inteligentes puede ser engañoso, pues no son contratos ni son inteligentes. No son contratos porque no existe obligación legal para su cumplimiento. No son inteligentes porque si se diera alguna situación no contemplada en el smart contract, éste no sabría cómo resolverla, pues para un programa sólo existen las situaciones consideradas en su código.

Por otro lado, el origen de este concepto viene de principios de los 90, cuando Nick Szabo el inventor de Bit Gold, propuso el término indicando que «los smart contracts combinan protocolos con interfaces de usuario para formalizar y asegurar relaciones sobre redes de computadoras. Este esquema elimina la necesidad de pagar a intermediarios como auditores, contadores, abogados y notarios públicos, al ejecutarse los acuerdos a través de un programa de computadora».

Para efectos prácticos, consideremos que los smart contracts son programas que corren en Ethereum. Más adelante en el curso veremos cómo crear un smart contract.


---

# 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://edp.ethkipu.org/modulo-1/intro-a-smart-contracts/ethereum-101/smart-contracts.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.
