- 2008-06-07 (土) 19:04
- PHP
第 1 回、第 2 回に続き、今回は第 3 問。問題はこちら。
3.複数の数値を入力させ、昇順に並び替え、最大値と最小値を出す(例:同僚の体重を入力して計算)。
フォームに名前と体重を 3 つずつ用意し、POST でデータを受け取って、名前をキーにした連想配列に格納。その連想配列を asort 関数でソートして MAX と MIN を表示しています。
あと一応、受け取った側で入力チェックもしてあります。
<?php
for($i = 1; $i <= 3; $i++) {
if(strlen($_POST['name'.$i]) == 0) {
print($i.'番目の名前を入力してください。');
return;
}
if(!is_numeric($_POST['weight'.$i])) {
print($i.'番目の体重の入力が間違っています。');
return;
}
}
$data = array(
htmlspecialchars($_POST['name1']) => htmlspecialchars($_POST['weight1']),
htmlspecialchars($_POST['name2']) => htmlspecialchars($_POST['weight2']),
htmlspecialchars($_POST['name3']) => htmlspecialchars($_POST['weight3'])
);
asort($data, SORT_NUMERIC);
$keys = array_keys($data);
$values = array_values($data);
print('最も体重が重いのは・・・ '.$keys[count($keys) - 1].' : '.$values[count($values) - 1].'<br />');
print('最も体重が軽いのは・・・ '.$keys[0].' : '.$values[0].'<br />');
?>
参考リンク
関連する記事
- Newer: 「新しくプログラミング言語を覚えたいときに行うべき10の練習問題」を PHP で解いてみる【第 4 回】
- Older: 「新しくプログラミング言語を覚えたいときに行うべき10の練習問題」を PHP で解いてみる【第 2 回】
Comments:0
Trackbacks:0
- Trackback URL for this entry
- http://www.sukechan.net/archives/67/trackback/
- Listed below are links to weblogs that reference
- 「新しくプログラミング言語を覚えたいときに行うべき10の練習問題」を PHP で解いてみる【第 3 回】 from sukechan.net

