

'''simple docstring'''







from __future__ import annotations

__lowerCamelCase						    =      1.6021e-19  # units = C
def  UpperCAmelCase__      ( UpperCAmelCase__,    UpperCAmelCase__,    UpperCAmelCase__,    )     ->     tuple[str, float]:
       if (conductivity, electron_conc, mobility).count(0			) != 1:
              raise ValueError("""You cannot supply more or less than 2 values"""			)
       elif conductivity < 0:
              raise ValueError("""Conductivity cannot be negative"""			)
       elif electron_conc < 0:
              raise ValueError("""Electron concentration cannot be negative"""			)
       elif mobility < 0:
              raise ValueError("""mobility cannot be negative"""			)
       elif conductivity == 0:
              return (
                  "conductivity",
                  mobility * electron_conc * ELECTRON_CHARGE,
              )
       elif electron_conc == 0:
              return (
                  "electron_conc",
                  conductivity / (mobility * ELECTRON_CHARGE),
              )
       else:
              return (
                  "mobility",
                  conductivity / (electron_conc * ELECTRON_CHARGE),
              )


if __name__ == "__main__":
      import doctest

      doctest.testmod()



'''simple docstring'''







def  UpperCAmelCase__      ( UpperCAmelCase__			)     ->     float:

       if edge <= 0 or not isinstance(UpperCAmelCase__,    UpperCAmelCase__			):
              raise ValueError("""Length must be a positive."""			)
       return 3 * ((25 + 10 * (5 ** (1 / 2))) ** (1 / 2)) * (edge**2)
def  UpperCAmelCase__      ( UpperCAmelCase__			)     ->     float:

       if edge <= 0 or not isinstance(UpperCAmelCase__,    UpperCAmelCase__			):
              raise ValueError("""Length must be a positive."""			)
       return ((15 + (7 * (5 ** (1 / 2)))) / 4) * (edge**3)


if __name__ == "__main__":
      import doctest

      doctest.testmod()
