ITmediaの記事によると、日本ピザハットの公式Webサイトで、ピザの価格が正しく表示されない不具合が生じていたそうだ。ピザの注文ページにおいて、Lサイズのピザにトッピングを追加した場合、代金が数億円と表示されたなどとしている。Twitterでは8月2日ごろから「代金が1600億円を超えた」といった声も出ていた模様。なお4日の段階では再現されなかったので現在は修正されている可能性が高い(ITmedia)。
文字列を加算している (スコア:0)
> 例えば3410円のピザに480円のトッピングを追加しても3890円にはならず、
> 「¥480,034,100」(4億8003万4100円)と表示された。この現象は、
> PCとスマートフォンの両方で確認できた(いずれも2日午後1時30分時点)。
var トッピング = ‘480.0’;
var 🍕 = ‘3410.0’;
var nedan = トッピング+ 🍕;
console.log(nedan);
-> 480.03410.0
// 関係ないけど日本円に銭の単位がないことはどうして中々伝わらないのか
Re: (スコア:0)
>関係ないけど日本円に銭の単位がない
日本円に銭の単位はあるよ
通貨がないだけで実用レベルで日常の生活で一般でも取引として使われている
あなたは買い物したことない引きもこもりの人?
Re:文字列を加算している (スコア:1)
それは円の単位だけど値が非整数の場合に、昔の補助単位を便宜的な呼称として使っているだけで、本質的には1銭じゃなくて0.01円なのでは。
Re:文字列を加算している (スコア:3, 参考になる)
一応、現行の法律でも銭と厘は規定されている。ただし、支払いの際は1円単位に丸めると定められているわけだが。
通貨の単位及び貨幣の発行等に関する法律 [wikipedia.org]
通貨の単位及び貨幣の発行等に関する法律 | e-Gov法令検索 [e-gov.go.jp]
以下、一部抜粋
Re: (スコア:0)
全額が五十銭未満の場合に対応しているのが、やっぱり法律はきちんとしてるな。
自分だったらこの条件に気づかずにバグだすわ。
Re: (スコア:0)
これ、円への単純な四捨五入で、偶数への丸め(「銀行丸め」)になっていないのか。
銀行などの金勘定の世界の慣習と矛盾していないか?
Re: (スコア:0)
「特約がある場合には、この限りでない。」なので特約いれないとその慣習はダメだよということでは?
あと四捨五入のところもあるし。
Re: (スコア:0)
親コメとは別ACだけど、ドル紙幣の下の硬貨(銭=ゼニ)の単位であるセントに相当する様な単位が無いという話だったのではなかろうか
Re: (スコア:0)
本当にあなたは「日常の生活」で使っているの?
普通は切り捨てなどして、一般消費者の目には触れないかたちで処理されてませんか??
# 為替や株式の取引なら珍しくもないですが、日常生活というかなあ、それ
Re:文字列を加算している (スコア:1)
セブン-イレブンに行ってみ?
やっぱ行かなくてもいいわ [sej.co.jp]
Re: (スコア:0)
イオン系列・セブン系列がやり始めていて、目にする機会は増えている。
セブン、税込価格を「小数点第2位」まで表示へ 過去には「100円×3個=301円」問題で謝罪 [itmedia.co.jp]2021年04月30日 09時16分 公開
イオン、価格表示変更 [nikkei.com]2019年3月6日 2:00
Re: (スコア:0)
ガソリンスタンドに行けば普通に158.83円/L表記ですよ。
Re:文字列を加算している (スコア:1)
それは「円」表記で、「銭」表記を含んでいない例だね。
「158円83銭/L」とあれば話は違うけど。
テレビやラジオで為替相場を報道するときは「○○○円○○銭」と言ってるんじゃないかな。
単位として使われているかどうか、と言う事であれば使われる場面もあるし、
現在硬貨・紙幣として有効か、と言えば有効ではない。
Re: (スコア:0)
> 日本円に銭の単位がない
そういえば 1円=100銭、1銭=10厘 らしいけど、その下の貨幣単位はないのかな。
というか、厘って適当な単位で、2割3分4厘の厘と九分九厘の厘は意味が異なる。(分も)
Re: (スコア:0)
> 2割3分4厘の厘と九分九厘の厘は意味が異なる。(分も)
分 (数)#百分の一を意味するとの誤解 [wikipedia.org]
Re: (スコア:0)
法律で定められてないけど、厘の1/10は毛と称される。
財務省も使っている。
円 銭 厘
Re: (スコア:0)
画面をよく見たら、小数点が2つある?
それとも3桁区切り処理かなんかで真ん中の小数点を取ってくれてる?
Re: (スコア:0)
定期的に「うちの子がテストで掛け算の順番が逆だと不正解にされた!おかしい!」という炎上騒ぎが起きますが、足し算でさえ逆にできない例があることを知ってもらいたいです。
Re: (スコア:0)
受け・攻め問題で戦争にならず炎上で済んだのなら平和
価格を合計するつもりで文字列連結しちゃった? (スコア:0)
Re:価格を合計するつもりで文字列連結しちゃった? (スコア:4, 参考になる)
当時の記事にかかれたコメントで
型定義のない言語では数値を加算することで文字列数値も数値型になるから
意図的に「0」を加算して数値型に確定させる処理をよくやるけど。
修正した人がその意図を理解できずに「0」をクォートで括ってしまって
文字列数値に「0」が付加された後に両者が加算(接続)された。
って推測が結果を見ると実にそれっぽい。
Re: (スコア:0)
String hole = String(10000000)より Var hole =“”+10000000のほうがもじすうがすくない
Re: (スコア:0)
文字列と数値を足したら数値を文字列化して結合する言語の方が多いと思うが
だから普通は引く
Re: (スコア:0)
サーバ側の処理じゃなくてクライアント側の問題なので、PHPじゃなくてJavaScriptですよ。
Re: (スコア:0)
JavaScritp滅びるべし!
と言いたいけど、TypeScriptがある限り滅びないんだろうな
Re: (スコア:0)
今回のはJavascriptでしょ。
天下のPHPだと文字列の数字も勝手に数値化されて計算してくれるんやで。
それに、計算だと $a + $b だけど、文字列連結の場合は $a . $b や。
Re: (スコア:0)
どうであろうとPHPとかいうクソ言語は滅びるべき
Re: (スコア:0)
プログラミング言語がなくなっちゃう
Re: (スコア:0)
クソなのはPHPじゃなくてPHPを使ってるやつのことが多い
あいつらは世の中のプログラミング言語はPHPとJavascriptしかないと思ってる
Re: (スコア:0)
VBer「救われた!」
Re: (スコア:0)
”“+numなんてみんなやる手抜きだと思ってた…
dinkum thinkum (スコア:0)
とうとう冗談を解するコンピュータが誕生したのか。胸熱だ。
でも、マイク、その冗談は一回だけ面白いだけのタイプだ。
Re: (スコア:0)
???「人間はつまらない生き物に成り果てましたね」
画面によって処理が違う? (スコア:0)
リンク先を見に行ったら、画面上では1600億円とかになっていてもカートに入る金額は正常だとか。
素朴な疑問だが、そのサイトから本当に1600億円分のピザを発注したらどうなるんだろうか。
#たぶん、偽計業務妨害罪で捕まる
Re:画面によって処理が違う? (スコア:2)
ポイントがすごいたまる
Re: (スコア:0)
あなたのクレジットカードが1600億円超の限度額じゃないと発注できないのでは?
※正確な金額を伝えずに契約させるのも犯罪じゃないの?
Re: (スコア:0)
ひょっとしてビリオネアの方々のブラックカードなら可能?
一時期の小室哲哉氏が持っていたのは数億円程度は出来たみたいですし。
#が、ファミレスでは使えなかったらしい。
Re: (スコア:0)
逆に1600億円の数字が書かれた残高不足か不正取引のお知らせメールを見てみたい
Re: (スコア:0)
いや内部処理が間違っていたにせよ、きちんと表示できるUIは凄い。
Re: (スコア:0)
いやむしろ表示の部分が間違ってたという話なのでは?
Re: (スコア:0)
表示部分は「ピザ代」変数を表示してるだけじゃない?
全部ページ内に直書きしてるとか、アクセス規模的にそれはそれで見てみたいけど
Re: (スコア:0)
まあたまたまでしょうね。 桁数の制限は深く考えずに金額表示用の要素を空白いっぱいまで広げるようにしただけっぽい。
もう見なくなった円高是正マン大喜びだな (スコア:0)
1ドル=20億円のハイパーインフレになったんだよ