From 9c795ca26c2fe1546f2cc5a4adae39181b95316d Mon Sep 17 00:00:00 2001 From: shiho629 Date: Thu, 27 Feb 2025 23:21:01 +0900 Subject: [PATCH 1/2] control_structures --- euclid.py | 9 +++++++++ machine_epsilon.py | 6 +++++- prime_number.py | 15 ++++++++++++++- trapezoidal_integral.py | 20 ++++++++++++++++++++ 4 files changed, 48 insertions(+), 2 deletions(-) diff --git a/euclid.py b/euclid.py index da5c4aa..9c28709 100644 --- a/euclid.py +++ b/euclid.py @@ -2,3 +2,12 @@ b = input("b の値を入力: ") # TODO +def euclid(x,y): + while y != 0: + x,y = y, int(x) % int(y) + return(x) + +result = euclid(a,b) +print('最大公約数:{}'.format(result)) + + \ No newline at end of file diff --git a/machine_epsilon.py b/machine_epsilon.py index f87f5c1..ff2b6a3 100644 --- a/machine_epsilon.py +++ b/machine_epsilon.py @@ -1 +1,5 @@ -# TODO \ No newline at end of file +# TODO +epsilon = 1 +while 1 + epsilon > 1: + epsilon = epsilon/2 +print(epsilon) \ No newline at end of file diff --git a/prime_number.py b/prime_number.py index 2308cf4..2a2ea9b 100644 --- a/prime_number.py +++ b/prime_number.py @@ -1,4 +1,17 @@ a = input("aの値を入力: ") b = input("bの値を入力: ") -# TODO \ No newline at end of file +# TODO +def is_prime(n): + if int(n) < 2: + return False + for i in range(2,int(n)): + if int(n) % i == 0: + return False + return True + +for x in [a,b]: + if is_prime(x): + print('{}は素数'.format(x)) + else: + print('{}は素数ではない'.format(x)) \ No newline at end of file diff --git a/trapezoidal_integral.py b/trapezoidal_integral.py index 716aa70..8d4b102 100644 --- a/trapezoidal_integral.py +++ b/trapezoidal_integral.py @@ -3,3 +3,23 @@ # print(sin(0)) # >>> 0 # ----------- +from math import pi +h = ( pi/2 - 0 ) / 100 +S=0 +for i in range(1,101): + S += h/2 * (sin(0+(i-1)*h)+ sin(0+i*h)) +print(S) + + + + + + + + + + + + + + From cdf43a86d343cde29265b41f76251358d45c40d1 Mon Sep 17 00:00:00 2001 From: shiho629 Date: Fri, 28 Feb 2025 13:57:38 +0900 Subject: [PATCH 2/2] control-structures --- euclid.py | 10 +++------- prime_number.py | 20 +++++++++++--------- 2 files changed, 14 insertions(+), 16 deletions(-) diff --git a/euclid.py b/euclid.py index 9c28709..f174c80 100644 --- a/euclid.py +++ b/euclid.py @@ -2,12 +2,8 @@ b = input("b の値を入力: ") # TODO -def euclid(x,y): - while y != 0: - x,y = y, int(x) % int(y) - return(x) - -result = euclid(a,b) -print('最大公約数:{}'.format(result)) +while b != 0: + a,b = b, int(a) % int(b) +print('最大公約数:{}'.format(a)) \ No newline at end of file diff --git a/prime_number.py b/prime_number.py index 2a2ea9b..d86f33a 100644 --- a/prime_number.py +++ b/prime_number.py @@ -2,16 +2,18 @@ b = input("bの値を入力: ") # TODO -def is_prime(n): - if int(n) < 2: - return False - for i in range(2,int(n)): - if int(n) % i == 0: - return False - return True - for x in [a,b]: - if is_prime(x): + if int(x) < 2: + print('{}は素数ではない'.format(x)) + continue + + is_prime = True + for i in range(2,int(x)): + if int(x) % i ==0: + is_prime = False + break + + if is_prime: print('{}は素数'.format(x)) else: print('{}は素数ではない'.format(x)) \ No newline at end of file