レベル不足
現場で2時間、
土日の48時間
悶々と考えてようやくロジックの構築方法を思いつく
短納期現場でヒーヒー言いながらガリガリ書く毎日の筈が突然手が止まってしまった、、、こんばんはシステム開発部のでわnです。
前回のPHPの解答をまず。
1問目
<?Php
$flag = true;
$total = 5;
$number = 3;
$xxx = $total > isset($number) ? $number + 2 : 0;
?>
ブラフとして $flag = true; を用意したけれど、答えは数値の0です。
php > $total = 5;
php > $number = 3;
php > $xxx = $total > isset($number) ? $number + 2 : 0;
php > echo $xxx;
0
どうやって評価しているかというと三項演算子の式は $total > isset($number) になります。
isset($number) は $number が定義されているか?なのでtrueが返ります。
$xxx = $total > true ? $number + 2 : 0;
そのため$total も定義されているので trueが返却され
$xxx = true > true ? $number + 2 : 0;
よってtrueはtrueより大きいかと解釈され、falseの0が返却されます。
ちなみに
php > $xxx = $total > isset($number) ? $number + 2 : 1;
php > echo $xxx;
1
php > $xxx = $total > isset($number) ? $number + 2 : 2;
php > echo $xxx;
2
php > $xxx = $total > isset($number) ? $number + 2 : 3;
php > echo $xxx;
3
うわあ、PHP嫌いになるはなんだこれ、、、
2問目
php > $path = ‘aaa/bbb/ccc/ddd/eee/fff’;
php > $yyy = explode(‘/’, $path)[3];
php > echo $yyy;
ddd
以上解答でした。
読めるプログラムを書こうマジで。
さて閑話休題、タイトル内容に話を戻すと、
100枚中から4枚カードを引いて下さい。
4枚引いたの中から、こちらが引いて欲しいカードが引かなかったら、箱の中から80枚取り出すので残り20枚から1枚カードを引いて下さい。
この仕組みは既にある。
今回でわnに要求されたものはこれの拡張版
ある100枚中から3枚カード(3枚or2枚or1枚)を引いて下さい。
3枚引いたの中から、こちらが引いて欲しいカードが引かなかったら、箱の中から80枚取り出すので残り20枚から1枚カードを引いて下さい。
ただ、20枚の中で更にこちらが引いて欲しいカード5枚の中から1枚カードが引けていなかったら15枚取り出すので残り5枚の中から1枚カードを引いて下さい。
これの設計をお願いします。
20枚、5枚は固定ではなく、
いま5枚中2枚の条件を付けたけれど5枚中3枚こちらの引かせたいカードを設定したい、4枚こちらの引かせたいカードを設定したいと変動します。
馬鹿言うなよと一言、、、
完全に新しいロジックの開発ではないですか、、、
ひたすら紙に書いてもんもんと設定とパターンマッチとを考えて要望をひたすら考える。
本日4日20時頃ようやく規則性を発見する。
チャレンジ出してくるのは良いけれどもっと頭の回転が早いやつにお願いしてよ本当にもう、、、orz
たまたまこれの実装のお願いされたのが2日金曜日だったので土日悶々考える時間確保できたけれどこれが週頭月曜日だったらどうなっていたことやら、、、
普段からすぐロジックが思いつくようにどうやったらそのシステムが実現出来るのか考える癖をもつようにしてきたけれど、そんなところで躓くとは思いもよらず、、、
自分が働いている業種、今何が主流なのか、どうやったらその業界の問題を解決するシステムができるのか人に言う前にまず自分がもっともっと変わらないと、、、
最近レベル不足しか感じなくなってしまったでわnでありましたorz
ではでは。
=============================================
ヒューマンリレーションネクストでは、
未経験や新卒の方を積極的に採用しております。
「やりがい」のある環境で仲間と共に成長しながら働きませんか?
営業職(ITコンサルタント)
ITエンジニア(システム開発、インフラ)
http://hr-next.co.jp/index.php/recruit/250-2010-07-21-05-05-01.html
新卒の方はこちら【マイナビ2017】
https://job.mynavi.jp/17/pc/search/corp200795/outline.html
【リクナビ2017】はこちら
https://job.rikunabi.com/2017/company/top/m844110027/
==============================================