配列にデータを格納

標準入力で空行が出現するまでの
全ての行の値を配列に代入し、print_rで出力してください。

// 標準入力から1行データを取得
$input = trim(fgets(STDIN));
// $inputの値が空で無ければループする
while($input){
// 配列に$inputの値を追加
$array[] = $input;
// 標準入力から1行データを取得
$input = trim(fgets(STDIN));
}
print_r($array);

標準入力から
入力される値が「勇者」となっているものだけを判別して、
全部で勇者が何回登場したかを整数で出力してください。

// 標準入力から1行データを取得
$input = trim(fgets(STDIN));
// $inputの値が空で無ければループする
while($input){
// $inputの値が勇者だったら配列に追加
if($input == “勇者”){
$array[] = $input;
}
// 標準入力から1行データを取得
$input = trim(fgets(STDIN));
}
echo count($array);

空行でループが途切れないようにする

$input = fgets(STDIN);

while($input){

$array[]=trim($input;

$input=fgets(STDIN); //trimを使わないで入れる 空行あっても回る

}

print_r($array);

↓ 同じ意味で

while($input = fgets(STDIN)){

$array[] = trim ($input);

}

print_r($array);

標準入力で途中に空行が有った場合でも、最終行まで取得できるように
修正をしてください。

// 標準入力から1行データを取得
$input = fgets(STDIN);
// $inputの値が空で無ければループする
while($input){
// 配列に$inputの値を追加
$array[] = trim($input);
// 標準入力から1行データを取得
$input = fgets(STDIN);
}
print_r($array);

標準入力で行数不明の複数行のデータが入力されます。
右側のエディターエリアのプログラムをもとに、標準入力の空行も含む全ての行の値を
配列に代入し、print_rで出力してください。

// 標準入力から1行取得し値があればループ
while($input = fgets(STDIN)){
// 配列に$inputの値を追加
$array[] = trim($input);
}
print_r($array);

入力される値のうち、「勇者」となっているものだけを判別して、
全部で勇者が何回登場したかを整数で出力してください。
※標準入力の途中に空行が入る場合でも最終行まで値を取得してください

// 標準入力から1行取得し値があればループ
while($input = fgets(STDIN)){
// ★if文の前にtrimしておくのがポイント
$input = trim($input);
if($input == “勇者”){
$array[] = $input;
}
}
echo count($array);

配列を使ったランダムクジ

■explode() 関数
文字列を特定の分割文字により分割、配列に代入する

count() 関数
配列に含まれるすべての要素の数を数える。

print_r() 関数
指定した配列、変数に関する情報を解りやすく出力する。

fgets() 関数
ファイルポインタから 1 行取得する。

trim() 関数

$input = trim(fgets(STDIN));

$member =explode(“,”,$input);

print_r($member);

$max = count($member)-1;

$key = rand(0,$max);

echo $key.”\n”;

echo $member;

標準入力でカンマ区切りのおみくじ結果データが入力されます。(例:大吉,吉,凶)
入力された結果を配列に代入し、その内容をランダムで出力する
プログラムを作成してください。
出力は配列内容をprint_rで出力し、その次の行でおみくじの結果を表示してください。

// 標準入力から1行取得
$input = trim(fgets(STDIN));
// カンマで分割して配列に代入
$array = explode(“,”, $input);
// ランダムの上限値を計算して変数に代入
$max_num = count($array)-1;
// 配列の中身を出力
print_r($array);
// ランダム出力
$rand_num = rand(0,$max_num);
echo $array[$rand_num];

↓短くかくと

// 標準入力を分割して配列に代入
$omikuji = explode(“,”, trim(fgets(STDIN)));
print_r($omikuji);
// $omikuji配列の中身をランダムで出力
echo $omikuji[rand(0,(count($omikuji)-1))];

標準入力で行数不明の複数行のおみくじ結果データが入力されます。
標準入力の空行も含む全ての行の値を配列に代入し、
その内容をランダムで出力するプログラムを作成してください。
出力は配列内容をprint_rで出力し、その次の行でおみくじの結果を表示してください。

// 標準入力から1行取得し値があればループ
while($input = fgets(STDIN)){
$array[] = trim($input);
}
// ランダムの上限値を計算して変数に代入
$max_num = count($array)-1;
// 配列の中身を出力
print_r($array);
// ランダム出力
$rand_num = rand(0,$max_num);
echo $array[$rand_num];

あわせて読みたい

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です