Homework Assignment: for Loop Challenge

Task: Create a program that does the following:

Initialize an array with the names of five of your favorite movies. Use a for loop to iterate through the array and print each movie name to the console. After printing all movie names, print a message indicating how many movies you listed.

%%js

let favoriteMovies = ["Jurassic Park", "The Godfather", "Interstellar", "Transformers", "Ghostbusters"];

for (let i = 0; i < favoriteMovies.length; i++) {
    console.log(favoriteMovies[i]);
}

console.log(`You listed ${favoriteMovies.length} movies.`);

<IPython.core.display.Javascript object>

Homework

Create a 3 by 3, 2D list that represents a tictactoe board. Use “X” for X, “O” for O, and None for empty tiles.

Ex. board = [[“X”,”None”,”O”],
       [“X”,”O”,”None”],
       [“O”,”None”,”X”]]

Iterate over the board and identify whether it is player X’s or player O’s turn.

Hint: count the number of moves(non-None). (X goes first)

Optional: use console.error() to report an error if the board is illegal (ex. 7 “X”s and 2 “O”s)

%%js 

let board = [
  ["X", null, "O"],
  ["X", "O", null],
  ["O", null, "X"]
];

let xCount = 0;
let oCount = 0;

for (let row of board) {
  for (let cell of row) {
    if (cell === "X") xCount++;
    else if (cell === "O") oCount++;
  }
}

if (xCount !== oCount && xCount !== oCount + 1) {
  console.error("Error: Invalid");
} else {
    
  let turn = xCount === oCount ? "X" : "O";
  console.log(`It is player ${turn}'s turn.`);
}

<IPython.core.display.Javascript object>

H.W application of While Loops.

Create the Outer Loop:

Use a while loop that runs while outerFactor is less than or equal to 10. Initialize the Inner Loop Variable:

Inside the outer loop, create another variable called innerFactor and set it to 1. Create the Inner Loop:

Inside the outer loop, use another while loop that runs while innerFactor is less than or equal to 10. Calculate the Product:

Inside the inner loop, calculate the product of outerFactor and innerFactor. Print the Product:

Print the product using console.log(), formatting the output neatly. Increment the Inner Loop Variable:

After printing the product, increment innerFactor by 1. Move to the Next Line:

After the inner loop finishes, print a new line to separate rows. Increment the Outer Loop Variable:

Increment outerFactor by 1 to move to the next row in the table.

%%js 

// Outer loop: Runs while outerFactor is less than or equal to 10
let outerFactor = 1;

while (outerFactor <= 10) {
    // Initialize the inner loop variable
    let innerFactor = 1;
    
    // Inner loop: Runs while innerFactor is less than or equal to 10
    while (innerFactor <= 10) {
        // Calculate the product of outerFactor and innerFactor
        let product = outerFactor * innerFactor;
        
        // Print the product, formatted neatly
        console.log(`${outerFactor} * ${innerFactor} = ${product}`);
        
        // Increment the inner loop variable
        innerFactor++;
    }
    
    // Move to the next line after the inner loop finishes
    console.log(""); // Newline after each row
    
    // Increment the outer loop variable
    outerFactor++;
}

<IPython.core.display.Javascript object>