お月見だんご

あなたはお月見の準備をしています.子供 2 人にいくつお月見だんごがほしいかをたずねますが,やんちゃな子は明らかに食べきれない数のだんごを要求してきます.

付き合いきれないのであなたは 5 より大きい数字を要求された場合には 5 個しか与えないことにしました.もちろん 5 以下の場合にはその数のだんごを与えます.

必要なだんごの数を求めるgetNumberOfDango()関数を作成してください.

function getNumberOfDango(s) {}

console.log(getNumberOfDango("3 50")); // 8
console.log(getNumberOfDango("100 500")); // 10
console.log(getNumberOfDango("2 4")); // 6

衣替え

そろそろ衣替えのシーズンです.冬服をしまって夏服を出しましょう.

10 着の服に関してそれが夏物か冬物かの情報が与えられるので,その半分 (5 着) 以上が夏物になっているかどうか (なっていればOK,なっていなければNG) を判定するisReadyForSummer()関数を作成してください.

function isReadyForSummer(s) {}

console.log(isReadyForSummer("W W W W W S S S S S")); // OK
console.log(isReadyForSummer("S S W W S W W W W W")); // NG
console.log(isReadyForSummer("W S S S S S S S S W")); // OK

ピラミッドの作り方

あなたのクラスでは,運動会の出し物で人間ピラミッドをやることになりました.段数nのピラミッドを組むのに必要な人数を求めるgetNumberOfHuman()関数を作成してください.

【例】

ピラミッドの段数: 5 段

1 + 2 + 3 + 4 + 5 = 15

→ 必要な人数: 15 人

function getNumberOfHuman(n) {}

console.log(getNumberOfHuman(4)); // 10
console.log(getNumberOfHuman(10)); // 55
console.log(getNumberOfHuman(50)); // 1275

トリック・オア・トリート

Trick or Treat! ハロウィーンのシーズンです.あなたの子供はわがままなのでお菓子といってもキャンディかチョコレートでないと満足してくれません.

文字列が与えられるので,これがcandychocolateであればThanks!,その他の場合は No!という子供のリアクションを出力するcandyOrChocolate()関数を作成してください.

function candyOrChocolate(s) {}

console.log(candyOrChocolate("chocolate")); // Thanks!
console.log(candyOrChocolate("candy")); // Thanks!
console.log(candyOrChocolate("pannacotta")); // No!

11/11

今日はみんなで棒状のチョコレートお菓子を持ち寄るパーティーをします.このお菓子が合計で 11 本以上あればパーティーが開催できます.

このお菓子の 1 本は数字の1で表され,本数分だけ1が連続する文字列が与えられるので,パーティーが開催できればOK,できなければ必要な本数を出力するcanParty()関数を作成してください.

【例】

  • 111111111111 → 12 ≧ 11 本なので OK

  • 1111111 → 7 < 11 本なので NG,あと 11 - 7 = 4 本必要

function canParty(s) {}

console.log(canParty("11111111111")); // OK
console.log(canParty("1111")); // 7
console.log(canParty("1111111111111111")); // OK

ワインのキャッチコピー

あなたはあるワインの銘柄のマーケティングを担当しています.良いキャッチコピーを考えるため,とりあえず「〜の中で最高」というフレーズを色々作ってみることにしました.

2 つの文字列が与えられるので,"Best in" とそれらの文字列をすべて半角スペース区切りで結合して出力するbestCopy()関数を作成してください.

【例】

  • hundred years → Best in hundred years
  • the universe → Best in the universe
function bestCopy(s) {}

console.log(bestCopy("a decade")); // Best in a decade
console.log(bestCopy("the world")); // Best in the world
console.log(bestCopy("history ever")); // Best in history ever

ガチャ期待値計算

あなたがプレイしているゲームで推しキャラが実装されたので,予算と相談して引ける確率を算出したいと思いました.

推しキャラの当選確率n(%)と試行回数t(数値)を入力し,1 回以上推しを引ける確率(%)を出力するprobabilityGetSSR()関数を作成してください.

なお,出力する確率の小数点以下は四捨五入してください.

function probabilityGetSSR(n, t) {}

console.log(probabilityGetSSR(1, 100)); // 63
console.log(probabilityGetSSR(1.5, 70)); // 65
console.log(probabilityGetSSR(1, 200)); // 87

調理計画

今日は夕食当番です.コードをギリギリまで書かなければならないので,夕食の準備を開始する時間を決めたいと考えました.

夕食の時間s(hh:mm)と調理に要する時間t(分)を入力し,調理開始時間を出力するgetStartTimeForCook()関数を作成してください.

function getStartTimeForCook(s, t) {}

console.log(getStartTimeForCook("19:00", 90)); // 17:30
console.log(getStartTimeForCook("20:00", 20)); // 19:40
console.log(getStartTimeForCook("20:30", 80)); // 19:10

しかたないから全角にしてやるか

システム改修中,全角数字しか入らないデータベースを発見しました.

ユーザから送信された 7 桁の郵便番号を全て全角に変換して出力するconvertToUppercase()関数を作成してください.

function convertToUppercase(s) {}

console.log(convertToUppercase("1234567")); // 1234567
console.log(convertToUppercase("1111111")); // 1111111
console.log(convertToUppercase("1145140")); // 1145140

リストラ計画

チューターを解雇することになりました.現在のチューターのリストと解雇したいチューターのリストが入力されるので,残存するチューターを半角スペース区切りで出力するfireEmployees()関数を作成してください.

function fireEmployees(employees, fireEmployees) {}

console.log(
  fireEmployees(
    "Jotaro Joseph Avdol Polnareff Tenmei Iggy",
    "Avdol Tenmei Iggy"
  )
); // Jotaro Joseph Polnareff
console.log(
  fireEmployees(
    "Giorno Bucciarati Abbacchio Mista Narancia Fugo Trish",
    "Bucciarati Abbacchio Narancia"
  )
); // Giorno Mista Fugo Trish
console.log(
  fireEmployees(
    "Jolyne Ermes Emporio F・F Weather Anasui",
    "Jolyne Ermes F・F Weather Anasui"
  )
); // Emporio