کانال بله, جهت پشتیبانی و اطلاع رسانی کانال بله, جهت پشتیبانی و اطلاع رسانی
عضویت

if...else if... statement. در سالیدیتی

عبارت if...else if... شکل پیشرفته if...else است که به Solidity اجازه می دهد تا از چند شرط تصمیم درستی بگیرد.

سینتکس دستور if-else-if به صورت زیر است :

    if (expression 1) {
        Statement(s) to be executed if expression 1 is true
     } else if (expression 2) {
        Statement(s) to be executed if expression 2 is true
     } else if (expression 3) {
        Statement(s) to be executed if expression 3 is true
     } else {
        Statement(s) to be executed if no expression is true
     }

هیچ مورد خاصی در مورد این کد وجود ندارد بلکه فقط یک سری از دستورات if است که هر if بخشی از عبارت else دستور قبلی است. دستور(های) بر اساس شرط true اجرا می شود، اگر هیچ یک از شرایط درست نباشد، بلوک else اجرا می شود.

مثال

    pragma solidity ^0.5.0;

contract SolidityTest {
   uint storedData; // State variable
   constructor() public {
      storedData = 10;   
   }
   function getResult() public view returns(string memory) {
      uint a = 1; 
      uint b = 2;
      uint c = 3;
      uint result
      
      if( a > b && a > c) {   // if else statement
         result = a;
      } else if( b > a && b > c ){
         result = b;
      } else {
         result = c;
      }       
      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;
      
      while (_i != 0) {
         bstr[k--] = byte(uint8(48 + _i % 10));
         _i /= 10;
      }
      return string(bstr);//access local variable
   }
}
1402/01/10 840
رمز عبور : tahlildadeh.com یا www.tahlildadeh.com
نظرات شما

نظرات خود را ثبت کنید...