質問をすることでしか得られない、回答やアドバイスがある。

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

新規登録して質問してみよう
ただいま回答率
85.46%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

配列

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

Q&A

解決済

1回答

1401閲覧

POS systemで、合計金額を出力させたい

退会済みユーザー

退会済みユーザー

総合スコア0

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

配列

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

0グッド

0クリップ

投稿2020/11/09 21:59

前提・実現したいこと

POSシステムを作っているのですが、商品の合計金額が出ません。どうしたらよろしいでしょうか?
ここに質問の内容を詳しく書いてください。

■■な機能を実装中に以下のエラーメッセージが発生しました。

発生している問題・エラーメッセージ

Python 3.9.0 (tags/v3.9.0:9cf6752, Oct 5 2020, 15:34:40) [MSC v.1927 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.

= RESTART: C:\Users\tetsu\OneDrive\ドキュメント\Sogo\Programming Language\Python3\apulication\POS system. py.py
いらっしゃいませ
orange
cherries
grapes
kiwi
apples
pen
pencil
eraser
tag
1001
how many?8
orangeが8個単価は100合計金額は['1009', 'tag', '180', '1009', 'tag', '180', '1009', 'tag', '180', '1009', 'tag', '180', '1009', 'tag', '180', '1009', 'tag', '180', '1009', 'tag', '180', '1009', 'tag', '180']

エラーメッセージ

該当のソースコード

#ループ
while True:
#買うもの、個数を聞く
code = input()
quantify=int(input("how many?"))

#ループから抜ける処理 if code==000: exit #バーコードを検索する for line in bcode: #見つかったら、リセットする if code in line: data=line #出力 price=quantify*line print(data[1] + "が" + str(quantify) + "個" + "単価は" + data[2] + "合計金額は" + str(price) )
ソースコード #start print("いらっしゃいませ") # ファイルのオープン bcode_file = open( 'data01.csv' , 'r' ) # 変数の初期化 bcode = [] i = 0 total = 0 # ファイルの内容を読み込み、二次元配列の変数に代入する for line in bcode_file: bcode.append( line.strip().split(',') ) print( bcode[i][1] ) i += 1 #ループ while True: #買うもの、個数を聞く code = input() quantify=int(input("how many?")) #ループから抜ける処理 if code==000: exit #バーコードを検索する for line in bcode: #見つかったら、リセットする if code in line: data=line #出力 price=quantify*line print(data[1] + "が" + str(quantify) + "個" + "単価は" + data[2] + "合計金額は" + str(price) ) #totalを定義して、合計金額を出力 total += int(data[2]) print("合計金額" + str(total) + "円") #changeを定義し、支払った金額を入力し、おつりを出力する pay=int(input("払った金額")) change = pay - total if change>=0: print(str(change) + "円のおつりです") elif change==0: print("おつりは、0円です") else: print("今回の未納金は" + str(-1*change) + "円です" ) #終了 print("又のお待ちをお待ちしております")

試したこと

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

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

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

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

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

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

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

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

y_waiwai

2020/11/09 22:06

このままではコードが読めないので、質問を編集し、<code>ボタンを押し、出てくる’’’の枠の中にコードを貼り付けてください
guest

回答1

0

ベストアンサー

数量がquantify 単価がdata[2]であれば、合計金額はquantify * data[2]で良いのではないでしょうか?

python

1price=quantify*line 2 print(data[1] + "が" + str(quantify) + "個" + "単価は" + data[2] + "合計金額は" + str(quantify * data[2]))

投稿2020/11/09 22:39

meg_

総合スコア10605

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問