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

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

詳細はこちら
Python

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

Q&A

解決済

2回答

2112閲覧

基本料⾦の区分(アンペア数)と電気使⽤料(KWh)を ⼊⼒し,その結果を出⼒するプログラムを作成したいのですが上手くいきません。

YUYUYUYU_0924

総合スコア1

Python

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

0グッド

0クリップ

投稿2021/01/10 07:49

編集2021/01/10 09:41

前提・実現したいこと

Pythonで基本料⾦の区分(アンペア数)と電気使⽤料(KWh)を⼊⼒し,その結果を出⼒するプログラムを作成しようとしています。下にある条件とソースコードを使って作成をしたいと思っています。

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

エラーメッセージ

該当のソースコード

usage_txt

1usage = int(usage_txt) 2 3kihon = 1254.0 4 5if usage <= 120: 6 amount = 1254.0 + 100 * 23.97 7elif usage <= 280: 8 amount = 1254.0 + 120 * 23.97 + (usage - 120) * 30.26 9else: 10 amount = 1254.0 + 120 * 23.97 + (280 - 120) * 30.26 + (usage - 280) * 33.98 11 12amount2 = '¥' + str(amount) 13 14print(amount2) 15コード

試したこと

denki_txt

1denki = int(denki_txt) 2 3kihon = 1364.0 4 5if denki <= 120: 6 amount = kihon + denki * 23.25 7elif denki <= 300: 8 amount = kihon + 18 * 23.25 + (denki - 120) * 29.25 9else: 10 amount = kihon + 18 * 23.25 + (300 - 120) * 29.25 + (denki - 300) * 32.96 11 12amount2 = str(amount) + '円です' 13 14print(amount2) 15コード

上記の通り自分なりに考えてみましたが、このコードで正解にたどり着けるかがわかりません。

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

指⽰1:以下のように出⼒されること。
例: 1500 円です。
指⽰2:電気量料⾦の単価はリストを使⽤する。またリストの使⽤法が不明な場合は変数を使⽤する。

月間電気料金                   単位 料金単価(円)
種別       区別              
基本料金     10              1契約・A        341
基本料金     15 1契約・A 511.5
基本料金     20              1契約・A 682
基本料金 30              1契約・A 1023
基本料金 40              1契約・A 1364
基本料金 50             1契約・A 1705
基本料金 60              1契約・A 2046

電気量料金 最初の120kwh          1KWh 23.25
電気量料金 120kwhをこえ300kwhまで    1KWh 29.35
電気量料金 300kwhをこえる分 1KWh 32.96

※基本料金の設定は特にありません

上記が条件です。該当のソースコードを使用して、自分なりに考えてみましたがわからなくて困っています。このソースコードを使ってプログラムを作成する方法がわかる方よろしくお願いいたします。

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

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

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

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

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

y_waiwai

2021/01/10 08:00

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

2021/01/10 08:03

電気使用量と料金の関係性も、Markdown記法にて表形式にしていただけると、回答を得られやすいと思いますよ。
dodox86

2021/01/11 02:18

ご質問の前提が分かりづらいのですが、 > 下にある条件とソースコードを使って作成をしたいと思っています。 このソースコードとは他の方から(課題の出題者から?)渡されたもので、これを修正、追加することでプログラムを完成せよ」と言うことなのでしょうか。であればまず、このソースコードを自身で読めることが必要なのでは。(そうでないとどの部分が悪いのか分かりませんね)
guest

回答2

0

ベストアンサー

#####【注釈】

質問文と開示されたソース内容が一部分で異なっているため、質問文に記載されている値で以下を記載します。

#####(前提)

1 電気使用量  手入力させます

2 料金単価   月間電気料金、電気量料金は、プログラム内部でテーブルにします

3 計算     入力された電気使用量をもとに、テーブル化した料金単価より、利用料金を計算します

#####(考え方)

1 電気使用量  入力値を受け取るためにはどうしますか?

※ 契約数も入力させますか?

2 料金単価   以下のようなテーブルが必要ですよね?

2-1) 月間電気料金

No.種別区分単位料金単価(円)
1基本料金101契約・A341
2基本料金151契約・A511.5
3基本料金201契約・A682
4基本料金301契約・A1023
5基本料金401契約・A1364
6基本料金501契約・A1705
7基本料金601契約・A2046

2-2) 電気量料金

No.使用量単位料金単価(円)
1最初の120kwh1KWh23.25
2120kwhを超え300kwhまで1KWh29.35
3300kwhを超える分1KWh32.96

3 計算     上記1,2を用いて、計算します

  • ex) 区分 60A の契約で、月間 500kWh 利用した場合:

(120kWh * 23.25円) + {(300kWn - 120kWh) * 29.35円} + {(500kWn - 300kWh) * 32.96円} + 2,046円 = 16,711円

という結果になるかと思われます。

⇒ 計算結果について、認識齟齬がありましたらご指摘ください。

このようなプログラムを考えてみてください。

投稿2021/01/11 01:45

_whitecat_22

総合スコア1305

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

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

YUYUYUYU_0924

2021/01/11 06:27

計算してみた結果、500KWhで16711.0円になりました! 本当にありがとうございました。
_whitecat_22

2021/01/11 06:56

どういたしまして。お役に立てて嬉しく思います。 いきなり、ソースコードを書き始めると難しく感じる場合もありますので、まずは日本語で考えてみると良いです。 フローチャートなどを、手書きのメモでも良いので描いてみると、論理の組み立てやコードも浮かんでくると思いますよ。
guest

0

基本料⾦の区分と電気使⽤量という2つの引数を取って、利用料金を返す、という関数を実装したいということですね

これを作るためには、まず、基本料金区分の種類と、基本料金、単位電力量と、単位使用料、のテーブルが必要となります。
そのテーブルから、使用量を当てはめ、利用料金を算出するという処理となります。

まずは、そのテーブルを作っていきましょう
がんばってください

投稿2021/01/10 10:26

y_waiwai

総合スコア88038

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

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

YUYUYUYU_0924

2021/01/10 11:26

回答ありがとうございます。 質問なのですが該当のソースコードを変更するだけではこのプログラミングは作成できないのでしょうか? 自分はPython詳しくないもので... 返信いただけたらありがたいです。
_whitecat_22

2021/01/10 13:41

●電気使用量(denki_txt ?)は、プログラム外から入力させるのでしょうか? ●計算の度に、種別・区別ごとの料金単価は、毎回ソースコードを修正するのですか? まずは、この2点を考えてみてください。 Pythonでなくても、他の言語でもロジックに落とす考え方は同じです。 ヒントは、y_waiwai さんのおっしゃる通り、『基本料金区分の種類と、基本料金、単位電力量と、単位使用料、のテーブルが必要となります。』ということですね。 ※もちろん、ソースコードなので、これを変更すれば本来意図するものは作れるはずですよ。
YUYUYUYU_0924

2021/01/11 06:01

denki_txtは自分で考えてプログラミング外から入力しました。 計算の度に毎回ソースコードを変更します。 とりあえず基本料金区分の種類と、基本料金、単位電力量と単位使用量のテーブルを作ってみようと思います。ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問