Skip to content

Conversation

@Brivan-26
Copy link

Thanks for the amazing challenges. I solved the games pretty quick as I have some experience with solidity and web3 development in general. I highly recommend solving them for beginners.
Waiting for intermediate level challenges.

while (!validAddress) {
wallet = ethers.Wallet.createRandom()
address = await wallet.getAddress()
if(address < threshold) validAddress = true

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hope you don't mind me asking, but how does comparing a string (address) with a number (threshold) work here?

I was struggling with this test file as I couldn't figure out how to identify which address would be less than the threshold address; when I convert an address to a number (either with Number(address) or parseInt(address)) I could find an address that was less than the threshold number, but they wouldn't work.
I'm guessing I don't really understand how Hexadecimal numbers work? 🤷

Copy link

@SantiagoDevRel SantiagoDevRel Jan 31, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@skplunkerin JS let you compare the numbers just like that, but a better way can be adding an "n" to the threshold, so JS knows this is a bigInt and can compare them more accurately

the If statement can be something like that:
if(BigInt(address) < BigInt(threshold){
}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

aw, that makes sense. Thanks for replying! I forget that an address is a hexadecimal, and that hexadecimal's are numbers.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

how long the loop ran?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought it was supposed to be ajoke?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@apoorv-2204 I tried several times and it ran between 100-300 times, which took a couple of seconds.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants