Solidez - haz ... mientras bucle

los do...while bucle es similar al whilebucle excepto que la verificación de condición ocurre al final del bucle. Esto significa que el ciclo siempre se ejecutará al menos una vez, incluso si la condición esfalse.

Diagrama de flujo

El diagrama de flujo de un do-while bucle sería el siguiente:

Sintaxis

La sintaxis de do-while bucle en Solidity es el siguiente:

do {
   Statement(s) to be executed;
} while (expression);

Note - No se pierda el punto y coma que se utiliza al final de la do...while lazo.

Ejemplo

Pruebe el siguiente ejemplo para aprender a implementar un do-while bucle en Solidity.

pragma solidity ^0.5.0;

contract SolidityTest {
   uint storedData; 
   constructor() public{
      storedData = 10;   
   }
   function getResult() public view returns(string memory){
      uint a = 10; 
      uint b = 2;
      uint result = a + b;
      return integerToString(result); 
   }
   function integerToString(uint _i) internal pure 
      returns (string memory) {
      
      if (_i == 0) {
         return "0";
      }
      uint j = _i;
      uint len;
      
      while (j != 0) {
         len++;
         j /= 10;
      }
      bytes memory bstr = new bytes(len);
      uint k = len - 1;
      
      do {                   // do while loop	
         bstr[k--] = byte(uint8(48 + _i % 10));
         _i /= 10;
      }
      while (_i != 0);
      return string(bstr);
   }
}

Ejecute el programa anterior siguiendo los pasos proporcionados en el capítulo Primera aplicación de Solidity.

Salida

0: string: 12