🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

Q&A

解決済

1回答

813閲覧

PHPの配列を使った掛け算とその合計のプログラムの書き方を教えてください。

JunyaMachida

総合スコア9

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

0グッド

0クリップ

投稿2019/12/13 16:28

編集2019/12/15 00:44

コード

PHPで配列同士の計算を行うプログラムを作っています。 下記のコードを使い、配列同士の掛け算を行って、その結果を出力することができました。 ここに質問の内容を詳しく書いてください。 for文を参照してください。 数量*価格=値段まではプログラムが書けまして、その値段を足し合わせてトータルの合計を出したいです。 どのようにプログラムを書いたら良いでしょうか? ### 発生している問題・エラーメッセージ

エラーメッセージ

### 該当のソースコード if(isset($_POST["compute"])){ $quantity = $_POST["quantity"]; $price = $_POST["price"]; $length = count($quantity); echo "<table class='table w-50 mt-5 mx-auto text-center'>"; echo "<th class='w-50 '> QUANTITY </th>"; echo "<th class='w-50 '> PRICE </th>"; echo "<th class='w-50 '> AMOUNT </th>"; for ($i=0; $i < $length ; $i++) { echo "<tr>"; echo "<td> $quantity[$i] </td>"; echo "<td> $price[$i] </td>"; $amount[] =($quantity[$i] * $price[$i]); echo "<td> $amount[$i] </td>"; } echo "</tr>"; echo "</table>"; }

試したこと

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2019/12/13 20:06

マークダウンcode機能が使えていません。 ```php //ここにコード ``` です。どのようになるかは他の質問・回答はやヘルプページを見てください。 また「考え方を教えてほしい」というタイトルに対して 既に組んだコードがあって「どのようにプログラムを書いたら良いか」という質問は若干矛盾があります。 ある程度何かしら自身が思うところがあって組んだコードがあるのでしたら、自身の考え方を示した上でアドバイスを得るようにした方が良いですし、 そうでないのでしたらタイトルと聞き方を変えた方が良いです。 いずれにしても、現在のコードにおける問題点は記載してください。
JunyaMachida

2019/12/13 23:02

ご返信ありがとうございました。
m.ts10806

2019/12/13 23:45

質問は編集できますので適宜調整してください。 特にマークダウンされていないコードはこの手のQAサイトでは敬遠されやすいです。
JunyaMachida

2019/12/13 23:52

質問の編集とマークダウンの設定ですね。 ありがとうございます。 テラテイルへの投稿が初めてなので使いこなせていませんが、調べてみます。
m.ts10806

2019/12/14 00:30

いずれにしても、現在のコードにおける問題点は記載してください。
JunyaMachida

2019/12/14 00:39

ご返信ありがとうございます。 よく分かりませんがマークダウン記法が使えていない事を指摘いただいていると思いますので、 その方法を調べてみます。 他の方がどのような形で質問されているのかも参考にしてみます。
2KOH

2019/12/14 01:48

質問を編集するのは大切なことではあるのですが、この質問だとたとえ内容を正しく修正したところでたぶん「ググレカス」という回答にしかならないと思いますよ。
JunyaMachida

2019/12/14 02:30

分かりました。ではググって自己解決いたします。 返信ありがとうございました。
m.ts10806

2019/12/14 03:20

では、私の回答は削除依頼でも出しときましょうか。 ほぼ考え方だけですし。
JunyaMachida

2019/12/14 03:24

ご回答ありがとうございました。 参考にさせていただきます。
m.ts10806

2019/12/14 07:49

マークダウンのcodeは対応しておいてください。 解決後でも編集できますし、今できるようになっておかないと今後まともに回答もらえるか分かりませんので(「読む気が失せる」という人もいるくらいです) code機能で対応してもらえるとワンクリックでコピペできたり、インデントがきちんと質問者の手元のコード通りについたり、より正しく質問者の状況を手元で再現できるので回答も得やすくなるんですよ
JunyaMachida

2019/12/14 08:01

ご返信ありがとうございました。 今回の件で知識なしに質問をすると痛い目に会うことがわかりましたので、 これ以上この質問掲示板をかえるつもりはありません。 その代わり、他の投稿者がどのようにテラテイルを活用して質問と回答を得ているのかはチェックして行こうと思います。 その過程で使い方がわかってきたらまた別の質問を投稿するかもしれません。 今回はもう懲りたので終わりです。
m.ts10806

2019/12/15 00:19

そこまで意固地になる必要はないと思いますけど、 投稿はずっと残り続けるものですし、他の同じような問題を抱えた人が見たときに参考にすることもあります。 その際に質問のコードがマークダウン対応されていないと読みづらくなり、 解決しているにも関わらず参考にされないという現象も起きえます。 せめてマークダウン対応くらいはしておいてもらえませんか? 別にコードを変えるというわけではありません。質問のコードの提示の仕方を適切にするというだけです。 あと誰も知識なしに質問するなとは言っていません。 ガイドラインはあるのでガイドラインは読みましょうとかそういうレベルです。 https://teratail.com/help https://teratail.com/help/question-tips https://teratail.com/help/avoid-asking プログラムは書いた通りにしか動かないので、説明書(仕様書)はきちんと読む必要があります。それは知識と言うより心構えの問題だと思います。 「どのように活用し」は基本的に「ガイドラインに則って活用している」が答えです。雰囲気を掴むのは必要ですが、本当に解決したいのでしたらどんな初歩的な問題でも質問すべきですし、どんな初歩的な問題でもきちんと説明している人はきちんと解決できています。 「とりあえず投げとけ」で解決に至れないのはどこでも同じですよ。
JunyaMachida

2019/12/15 00:48

マークダウン対応を試してみました。 感情的になってしまい申し訳ありませんでした。
m.ts10806

2019/12/15 00:59

いえいえ。回答者側としては、学ぶ姿勢がきちんとある質問者には成長してもらいたいと思っているものなので。
guest

回答1

0

ベストアンサー

先に書いてしまいますが、提示の内容くらいだと計算に配列を使う必要はないんじゃないかと。

php

1$total = 0; 2for ($i=0; $i < $length ; $i++) { 3 echo $quantity[$i]."/".$price[$i]; 4 $amount =($quantity[$i] * $price[$i]); 5 echo "/".$amount.PHP_EOL; 6 $total += $amount; 7} 8 9echo $total; 10

どうしても配列をというのでしたらarray_sum()あたりを。

投稿2019/12/14 01:57

m.ts10806

総合スコア80875

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問