Bird
Raised Fist0
Blockchain / Solidityprogramming~30 mins

For and while loops in Blockchain / Solidity - Mini Project: Build & Apply

Choose your learning style10 modes available
Counting Blocks with For and While Loops
📖 Scenario: Imagine you are working with a simple blockchain that stores blocks as numbers. You want to count and display blocks using loops.
🎯 Goal: Build a program that uses both for and while loops to count blocks in a blockchain.
📋 What You'll Learn
Create a list called blocks with the numbers 1 to 5
Create a variable called count and set it to 0
Use a for loop with variable block to iterate over blocks and increase count by 1 each time
Use a while loop to print numbers from 1 up to count
💡 Why This Matters
🌍 Real World
Counting blocks or transactions is common in blockchain programs to track progress or verify data.
💼 Career
Understanding loops is essential for blockchain developers to process data efficiently and automate tasks.
Progress0 / 4 steps
1
Create the blocks list
Create a list called blocks with the numbers 1, 2, 3, 4, and 5.
Blockchain / Solidity
Hint

Use square brackets [] to create a list with the numbers inside separated by commas.

2
Create the count variable
Create a variable called count and set it to 0.
Blockchain / Solidity
Hint

Just write count = 0 on a new line.

3
Use a for loop to count blocks
Use a for loop with variable block to iterate over blocks and increase count by 1 inside the loop.
Blockchain / Solidity
Hint

Use for block in blocks: and inside the loop write count += 1.

4
Use a while loop to print numbers
Create a variable called i and set it to 1. Use a while loop to print i while it is less than or equal to count. Increase i by 1 each time inside the loop.
Blockchain / Solidity
Hint

Start with i = 1. Use while i <= count: and inside print i and then increase i by 1.

Practice

(1/5)
1. Which statement best describes a for loop in blockchain programming?
easy
A. It repeats code while a condition is true.
B. It runs only once and then stops.
C. It repeats code a fixed number of times.
D. It stops the program immediately.

Solution

  1. Step 1: Understand the for loop purpose

    A for loop is designed to repeat code a set number of times, often counting through a range or list.
  2. Step 2: Compare with other loop types

    A while loop repeats while a condition is true, not a fixed count. The other options do not describe for loops correctly.
  3. Final Answer:

    It repeats code a fixed number of times. -> Option C
  4. Quick Check:

    for loop = fixed repeats [OK]
Hint: For loops count repeats; while loops check conditions [OK]
Common Mistakes:
  • Confusing for loops with while loops
  • Thinking for loops run only once
  • Believing for loops stop the program
2. Which of the following is the correct syntax for a while loop in blockchain programming?
easy
A. while (condition) { // code }
B. while condition: // code
C. while condition { // code }
D. while (condition): // code

Solution

  1. Step 1: Identify correct syntax style

    In blockchain programming languages like Solidity, the while loop uses parentheses for the condition and curly braces for the code block.
  2. Step 2: Check each option

    while (condition) { // code } matches the correct syntax: while (condition) { // code }. Others miss parentheses or use incorrect punctuation.
  3. Final Answer:

    while (condition) { // code } -> Option A
  4. Quick Check:

    Correct while syntax uses parentheses and braces [OK]
Hint: Remember: while(condition) { code } uses parentheses and braces [OK]
Common Mistakes:
  • Omitting parentheses around condition
  • Using colon instead of braces
  • Mixing syntax from other languages
3. What will be the output of this code snippet?
uint sum = 0;
for (uint i = 1; i <= 3; i++) {
sum += i;
}
return sum;
medium
A. 6
B. 3
C. 0
D. Error

Solution

  1. Step 1: Analyze the loop iterations

    The loop runs with i = 1, 2, 3. Each time, sum adds i: sum = 0+1, then 1+2, then 3+3.
  2. Step 2: Calculate the final sum

    Sum after loop: 0+1=1, 1+2=3, 3+3=6.
  3. Final Answer:

    6 -> Option A
  4. Quick Check:

    1+2+3 = 6 [OK]
Hint: Add numbers from 1 to 3 to get sum quickly [OK]
Common Mistakes:
  • Stopping loop early
  • Adding wrong values
  • Confusing sum initialization
4. Identify the error in this code snippet:
uint i = 0;
while (i < 3)
i++;
medium
A. Condition should be i <= 3
B. Missing braces {} for while loop body
C. Variable i should start at 1
D. Incorrect increment operator

Solution

  1. Step 1: Check loop body syntax

    The while loop lacks braces {}, so only the next statement is inside the loop.
  2. Step 2: Understand impact of missing braces

    Without braces, the loop runs only the single statement i++;. This is valid but can cause confusion or errors if more statements are added.
  3. Final Answer:

    Missing braces {} for while loop body -> Option B
  4. Quick Check:

    Always use braces for clarity in loops [OK]
Hint: Use braces {} to clearly define loop body [OK]
Common Mistakes:
  • Assuming multiple statements run without braces
  • Changing variable start unnecessarily
  • Altering loop condition wrongly
5. You want to create a loop that counts down from 5 to 1 and stores each number in an array. Which code snippet correctly uses a for loop to do this in blockchain programming?
A) for (uint i = 5; i > 0; i--) { arr.push(i); }
B) for (uint i = 1; i <= 5; i++) { arr.push(i); }
C) for (uint i = 5; i >= 1; i++) { arr.push(i); }
D) for (uint i = 5; i > 0; i++) { arr.push(i); }
hard
A. Infinite loop due to i++ with i > 0
B. Counts up from 1 to 5
C. Infinite loop due to i++ with i >= 1
D. Counts down from 5 to 1 correctly

Solution

  1. Step 1: Analyze each loop's counting direction

    Counts down from 5 to 1 correctly counts down from 5 to 1 using i-- and condition i > 0. Counts up from 1 to 5 counts up. Options C and D increase i but have conditions that cause infinite loops.
  2. Step 2: Confirm correct loop behavior

    Counts down from 5 to 1 correctly correctly pushes 5,4,3,2,1 into the array and stops when i reaches 0.
  3. Final Answer:

    Counts down from 5 to 1 correctly -> Option D
  4. Quick Check:

    Decrement i with i-- and condition i > 0 for countdown [OK]
Hint: Use i-- and i > 0 to count down safely [OK]
Common Mistakes:
  • Using i++ when counting down
  • Wrong loop condition causing infinite loops
  • Confusing counting up vs down
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard