Menu
Coddy logo textTech

チャレンジ - 最長の単語

CoddyのPHPジャーニー「基礎」セクションの一部。レッスン 70/71。

challenge icon

チャレンジ

簡単

input を1行読み取ります:

  • スペースで区切られた複数の words を含む sentence(例:The quick brown fox

findLongestWord という名前の function を Create し、1つの parameter を受け取るようにします:

  • $sentencestring

function には string の return type declaration を指定し、sentence 内で最も長い word を find させます。

input value を使って function を Call し、returned result を print します。

注:複数の words が同じ最長の長さを持つ場合は、最初に見つかったものを return します。

例:

"The quick brown fox" → "quick" (5 characters; "brown" is also 5, so the first one is returned)
"I love programming" → "programming" (11 characters)

これを解決するには、sentence を個々の words に分割する必要があります。PHP の explode() function が最適です。これは delimiter に基づいて string を array に分割します:

<?php
$words = explode(" ", "hello world");
// $words is now ["hello", "world"]
?>

自分で試してみよう

<?php
// 入力を読み取る
$sentence = trim(fgets(STDIN));

// TODO: 以下に findLongestWord 関数を作成する
// - $sentence を文字列パラメータとして受け取る
// - 戻り値の型宣言 string を追加する
// - explode() を使って文を単語に分割する
// - 配列をループして strlen() で最長の単語を見つける
// - 最長の単語を返す(同点の場合は最初のもの)



// 関数を呼び出して結果を出力する
echo findLongestWord($sentence);
?>

基礎のすべてのレッスン

自分で練習してみよう: PHPオンラインコンパイラ