dimanche 12 août 2018

Printing 100 to 200, with three exceptions?

I am trying to write a program that prints the numbers from 100 to 200, with three exceptions:

If the number is a multiple of 3, the string "yes" should be returned instead of the number.

If the number is a multiple of 4, the string "yes and yes" instead of the number should be returned.

If the number is a multiple of both 3 and 4, the string "yes, yes and yes" instead of the number.

I am new to JavaScript so I try to do this step by step.

I wrote this code to print the numbers from 100 to 200:

function hundredTwoHundred() {
  result = [];
  for (let i = 100; i <= 200; i++) {
  result.push(i);
}
  return result;
}

console.log(hundredTwoHundred());

Then I tried to use else/if for the exceptions:

function hundredTwoHundred() {
  result = [];
  for (let i = 100; i <= 200; i++) {
    if (i % 3 == 0) {
    console.log("yes");
  } else if (i % 4 == 0) {
    console.log("yes and yes")
  } else if (i % 3 == 0 && i % 4 == 0) {
    console.log("yes, yes and yes");
  } else {
    result.push(i)
  }
}
  return result;
}

console.log(hundredTwoHundred());

The code of course, does not work. I have tried moving result.push(i) around, but I don't want to just mindlessly move things around, without knowing the reasoning behind it.

How do I use conditional operators to find these exceptions? What am I doing wrong?

Thank you.

Aucun commentaire:

Enregistrer un commentaire