No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Compra acceso a todo Platzi por 1 a帽o

Antes: $249

Currency
$209/a帽o

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscr铆bete

Termina en:

15D
14H
32M
1S
Curso de Introducci贸n a Solidity

Curso de Introducci贸n a Solidity

Sebasti谩n Leonardo Perez

Sebasti谩n Leonardo Perez

Estructuras de control en Solidity

7/21
Recursos

Aportes 9

Preguntas 3

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

Estructuras de control

  • if/else: Estructura condicional. Ejecuta un bloque u otro dependiendo de una evaluaci贸n booleana
  • for: Estructura c铆clica que ejecuta un bloque de instrucciones un n煤mero determinado de veces
  • while: Estructura c铆clica que repite un bloque mientras se cumpla una condici贸n
  • do while: Estructura c铆clica que se asmilia al while, con la diferencia que siempre se ejecuta almenos una vez
contract EstructuraDeControl {
    
    uint[] public numeros;
    string public resultado;
    
    constructor(bool condicion) {
        if (condicion) {
            resultado = "Condicion True";
        }
        else {
            resultado = "Condicion False";
        }
        
        for (uint iterador = 0; iterador < 10; iterador++) {
            numeros.push(iterador);
        }
    }
    
}

el hecho de que te cobre por cada accion hace que valga la pena el especializarse, para que a la hora de la hora no estemos a punta de tachon y borron y hacerlo de corrido por la buena practica de condiciones

Se debe de tratar de hacer el menor poder de procesamiento, ya que a mayor procesamiento es m谩s caro el contrato.

// SPDX-License-Identifier: GLP-3.0

pragma solidity >= 0.7.0 < 0.9.0;

contract EstructuraDeControl {
    uint[] public numeros;
    string public resultado;

    constructor(bool condicion) {
        if(condicion){
            resultado = "Condicion True";
        }
        else {
            resultado = "Condicion False";
        }
        for (uint iterador =0; iterador < 100; iterador++){
            numeros.push(iterador);
        }

    }
}

// SPDX-License-Identifier: GPL-3.0

pragma solidity >=0.7.0 <0.9.0;

contract EstructuraDeControl {

uint[] public numeros;
// array de numeros -> numeros

string public resultado;
// para almacenar para ver si la condicion del array, se cumplio o no

//NOTA -> las hacemos publicas para poder verlas depues de haber hecho la implementacion (deploy)

constructor(bool condicion) {
// como no vimos funciones necesitamos setear/agregamos un parametro booleano para darle esta info al hacer el deploy!
// comdicion es booleana porque -> (bool condicion) -> y se puede poner cualquier otra condicion que de T o F!

    if (condicion) {
        resultado = "Condicion True";
    }
    else {
        resultado = "Condicion False";
    }
    
    for (uint iterador = 0; iterador < 10; iterador++) {
    // definimos un for que tenga 10 iteracones
        numeros.push(iterador);
        // push del numero actual en cada iteracion se agrega al array la iteracion actual 0,1,2...9! 
    }
}

}

RESUMEN CLASE 7:
ESTRUCTURAS DE CONTROL

I.- If / else

Es la estructura condicional m谩s utilizada.
Permite ejecutar una acci贸n si la condici贸n de entrada se cumple, y nos permite ejecutar acciones alternativas en caso de que esta condici贸n no se cumpla.

II.- For

Es una estructura de bucle en la cual ejecutaremos una acci贸n repetidas veces hasta que la condici贸n de corte se cumpla.
Siempre se sabe la cantidad de ejecuciones en el momento previo a su comienzo.

III.- While

Es una estructura de bucle en la cual ejecutaremos una acci贸n hasta que la condici贸n de corte que se especifica al comienzo se cumpla.
No siempre se sabe la cantidad de ejecuciones en el momento previo a su comienzo y puede ejecutarse 0 veces.

IV.- Do鈥hile

Es una estructura de bucle en la cual ejecutaremos una acci贸n hasta que la condici贸n de corte que se especifica al final se cumpla.
No siempre se sabe la cantidad de ejecuciones en el momento previo a su comienzo y se ejecuta al menos una vez.

REMIX:

EstructurasDeControl.sol

// SPDX-License-Identifier: GLP-3.0

pragma solidity >=0.7.0 <0.9.0;

contract EstructuraDeControl {

    uint[] public numeros;
    string public resultado;

    constructor(bool condicion) {
        if (condicion) {
            resultado = "Condicion True";
        }
        else {
            resultado = "Condicion False";
        }

        for (uint iterador = 0; iterador < 10; iterador++) {
            numeros.push(iterador);
        }
    }

}