0
0

この記事において、Pythonを使って四則演算ができる計算機をどのように生成するかを紹介したい。

Screenshot 2024-06-10 at 18.02.31.png

四則演算をdef関数を使って、まず定義する。

足し算をするためのプログラムコード

def add (n1, n2):
  return n1 + n2

引き算をするためのプログラムコード

def subtract (n1, n2):
  return n1 - n2

掛け算をするためのプログラムコード

def multiply (n1, n2):
  return n1 * n2

割り算をするためのプログラムコード

def divide (n1, n2):
  return n1 / n2

階乗をするためのプログラムコード

def sqrt (n1, n2):
  return n1 ** n2

Operationsの辞書

Screenshot 2024-06-10 at 18.07.42.png

operations は辞書で、キーとして演算子を持ち、値としてそれぞれの演算を行う関数 (add, subtract, divide, multiply, sqrt) を持っています。例えば、"+" キーは add 関数に対応しています。

Calculator関数

Screenshot 2024-06-10 at 18.08.26.png

Calculator関数は、ユーザーから数値と演算子を入力させて計算を行い、結果を表示する機能を持っています。まず、logoという変数は、定義していないが、プログラムのロゴを表示するために使用した。

初回の数値入力

num1 = float(input("What's the first number?:")) でユーザーに最初の数値を入力させ、その値を num1 に格納します。

利用可能な演算子の表示

for symbol in operations: print (symbol) で、利用可能なすべての演算子を表示します。

計算ループ

should_continue フラグを使って計算を続けるかどうかを管理します。
operation_symbol = input("Pick an operation from the line above:") で演算子を入力させます。
num2 = float(input("What's the next number?:")) で次の数値を入力させます。
calculation_function = operations[operation_symbol] で選択された演算子に対応する関数を取得します。
answer = calculation_function(num1, num2) で計算を行います。
print(f"{num1}{operation_symbol}{num2} = {answer}") で計算結果を表示します。

name == "main" ブロック

Screenshot 2024-06-10 at 18.11.42.png

以上のコードは、スクリプトが実際に実行された際に、"calculator"関数を呼び出すためのものです。

わかりやすくするために、プログラムコードの画像を添付しておく。
Screenshot 2024-06-10 at 18.15.05.png
Screenshot 2024-06-10 at 18.15.11.png

このプログラムコードを使ったら、四則演算ができる。

例えば、12 + 7 を計算してみよう。結果は、19になる。
以下の写真では、ちゃんと結果が、19になっている。
Screenshot 2024-06-10 at 18.57.45.png

そして、nと入力したら、この画面が表示される。つまり、この場合は、ユーザーは、 12+7の計算のみで計算機の使用をやめたという意味になる。
Screenshot 2024-06-10 at 18.58.42.png

しかし、19でまだ計算したい場合、yと入力したらさらに計算できる。

そこで、今回は、19を7で割ってみよう。結果は、2.7142857142857144になる。
以下の写真では、ちゃんと結果が、2.7142857142857144になっている。
Screenshot 2024-06-10 at 19.02.02.png

そして、ここで計算を辞めたい場合は、nと入力したらこの画面が表示される。
Screenshot 2024-06-10 at 19.02.35.png

皆さんもこのプログラムコードを参考にし、四則演算ができる計算機を生成したら、
いかがでしょうか。

注)このプログラムコードを書くにあたって、このリンクを参考にしました。
https://medium.com/@m.franfuentes/day10-100daysofcode-in-python-7d1fcec93616#d430

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0