VBA 使えるソースコード

つたないソースコードを載せます。これは、他人の書いたソースコードを読む練習に最適です。初心者の方は、どうしたらきれいになるかなど考えながら活用してください。

Excel 各関数の発散のスピードは?

エントリーNo.1 y = x とても素直で、入力したことをそのまま覚えてくれる エントリーNo.2 y = logx マイナスが大嫌い、時々扱いやすい エントリーNo.3 y = x^2 y = logxとは親せきで、仲がいい。 エントリーNo.4 y = 2^x のみこみが以上に早く、天才肌 結果…

VBA 久しぶりに触ってみるときに記事

お久しぶりです!! 5か月ぶりにさわってみて、この記事のコードを見たら、 「あ、こんな感じだったなぁ、、、」 みたいに思えたら幸いです。 1. 九九の表 yoronx.hatenablog.com 2. 四則計算 yoronx.hatenablog.com 3. 約数を出す yoronx.hatenablog.com 4.…

Excel さまざまなグラフの比較

どのグラフが適切か 今回は、あるデータセットをグラフで表現してみました! どのグラフが見やすいのでしょう?? 円形1 円形2 棒形1 棒形2 どれがいいかという正解はありません。 個人的には、全体を俯瞰的に見れるのは円形、ある年代が多いという印象…

Excel またまた乱数の収束について考察

前回の記事 ↓ yoronx.hatenablog.com 前回はRANDBETWEEN(0,1)関数を使って、累積的に確率をグラフで表しました。 しかし問題なのは、試行回数は変えているにもかかわらず、確率の計算を1度しかしていませんでした。 なので、今回は1回ずつ計算をやり直したう…

Excel ランダムの収束の仕方

エクセルの「RANDBETWEEN(0,1)」の確率収束の様子! RANDBETWEEN(0,1)関数は0または1をランダムで返す関数ですが、 前回は1から10000回までの精度を刻んでみてきましたが、今回はグラフで確認してみましょう!! 前回 ↓ yoronx.hatenablog.com 結果 ↓ やはり…

Excel エクセルの乱数ってどの程度の精度??

エクセルの「RANDBETWEEN(0,1)」を制度を測定! RANDBETWEEN(0,1)関数は0または1をランダムで返す関数ですが、 10,100,1000,10000回実行して、1の数を数えて精度を測ってみようと思います。 結果 ↓ うーん、、、 これだけ見て、いいか悪いかは私には判断す…

VBA 棒グラフを自動で作ってみよう

Option Explicit Sub 棒グラフ() Call CCall DCall E End Sub Function C() Range("C2:C4").Select ActiveSheet.Shapes.AddChart2(201, xlColumnClustered).Select ActiveChart.SetSourceData Source:=Range("Sheet3!$C$2:$C$4") ActiveChart.FullSeriesColl…

VBA 4種類のデータの比較を自動でしよう

Option Explicit Sub fig_kinds_4()'' fig_kinds_4 Macro' 4種類のデータの比較を行います。' 'Dim title As Stringtitle = InputBox(" グラフタイトルを入力してください。") Dim n As Integer: n = 0 Do Until Cells(n + 5, 1).Value = "" n = n + 1Loop C…

VBA 折れ線グラフをVBAで作ってみよう

Sub Macro7()'' Macro7 Macro' 'Dim x_title As String, y_title As String, data_title As String, title As String data_title = InputBox(" データの名称を入力してください。")x_title = InputBox("横軸の名称を入力してください。")y_title = InputBox(…

Python numpyの使い方のまとめ(例)

import numpy as np def myPrint(ary): print(ary) print('length = ' + str(ary.size)) ary1 = np.array([3,5,7,1,4]) myPrint(ary1) ary1[3] = 8myPrint(ary1) ary1 = np.insert(ary1, 2, 3)myPrint(ary1) ary1 = np.append(ary1,10)myPrint(ary1) ary1 = …

Python UNIX時間の確認

import time time1 = time.time()#UNIX時間で表現した現在の時刻を返す#UNIX時間は1970年1月1日午前0時からの秒数であるtime.sleep(10)#指定された値の秒数だけスレッドの実行を停止するtime2 = time.time()print('time1 = ' + str(time1))print('time2 = ' +…

Python プログラムの実行時間って、実際どのくらい??

import time n = 10000 startTime = time.time()for i in range(n): pass #passはなにも処理しないことを意味するendTime = time.time()elapsedTime = endTime - startTimeprint("elapsed time1 = " + str(elapsedTime)) startTime = time.time()for i in ra…

Python クラスとメソッドの例

# -*- coding: utf-8 -*- class MyStack: def __init__(self): self.ary = [1,2,3] def push(self,element): self.ary.append(element) def pop(self): self.ary.pop() def printall(self): for n in self.ary: print(n) def isEmpty(self): if self.ary == …

Python 数列から数字を見つけよう2

import randomimport sys n = sys.argv[1]target = sys.argv[2]list_int = []#空のリストを生成flag = Falseintn = int(n)inttarget = int(target)while intn > 0: list_int.append(random.randint(0,9)) intn = intn - 1for val in list_int: if val == int…

Python 数列から知りたい数字を探索しよう

import random size = 10max = 8low = 0 high = size - 1key = random.randint(1,max)list_num = []while size > 0: list_num.append(random.randint(1,max)) size -= 1list_num.sort()flag = Falsewhile low <= high: middle = round*1 if key == list_num[…

Python お絵描きツールで必要なクラス

class SimpleCircle: def __init__(self,x,y,wid,len,color): self.y = x self.x = y self.wid = wid self.len = len self.color = color def draw(self,canvas): print("drawメソッドによる描画処理"); x1 = self.x - self.wid/2 y1 = self.y - self.len/2 …

Python お絵描きしてみよう2

from Circle import Circlefrom Rectangle import Rectanglefrom Line import Lineimport tkinterimport random class AddShapePanelv4: def __init__(self): print("AddShapePanelv4オブジェクトの作成") self.create_window() self.listOfObject=[] self.I…

Python お絵描きしてみよう1

from SimpleCircle import SimpleCircleimport tkinterimport random class AddShapePanel: def __init__(self): print("AddShapePanelオブジェクトの作成") self.create_window() self.listOfObject=[] self.IDforCircleRed = 1 self.IDforCircleBlue = 2 d…

Python 行列の積

def m_product(m1,m2): m = #returnするやつ for i in range(len(m1)): #m1の行を固定 r = #各行を入れるところ for j in range(len(m2[0])): #m2のどの列なのかを決める v = 0 for k in range(len(m2)): #m2の列の数 v += m1[i][k] * m2[k][j] #m1のi行目…

Python 線形計画問題 その2

# -*- coding: utf-8 -*- from pulp import LpProblem, LpVariable, LpMaximize, LpStatus problem = LpProblem('sample', LpMaximize) x1 = LpVariable('x1', lowBound=0,upBound=None,cat='Continuous')x2 = LpVariable('x2', lowBound=0,upBound=None,cat…

Python 線形計画問題 その1

# -*- coding: utf-8 -*- from pulp import LpProblem, LpVariable, LpMaximize, LpStatus problem = LpProblem('sample', LpMaximize) x1 = LpVariable('x1', lowBound=0, upBound=2,cat='Continuous')x2 = LpVariable('x2', lowBound=0, upBound=3,cat='Co…

Python 0-1ナップサック問題を解く

# -*- coding: utf-8 -*- from pulp import LpProblem, LpVariable, LpMaximize, LpStatus,lpDot cost = [700,500,400,800,600,200,300]profit = [2700,1650,1200,2600,1800,1000,1200] upCost = 2000r = range(len(cost)) problem = LpProblem('sample',LpM…

Python モンテカルロ法で円周率を求める

import randoma = 0b = 1h = 1n = 100000count = 0for i in range(n): x = random.uniform(a,b) y = random.uniform(0,h) if x**2 + y**2 < 1: count += 1print("領域内の点の数 :" + str(count) + '/' + str(n))print("積分値の近似値 :" + str*1 / n))prin…

Python ある整数以下の素数の数を数える

import math def numOfPrime(n): m = 0 def isPrime(s): for i in range(2,int(math.sqrt(s) + 1)): if s % i == 0: return False return True for j in range(2,n+1): if isPrime(j): m += 1 return m print(numOfPrime(100))

Python 有向グラフとダイクストラ法

感覚を身に付けよう # -*- coding: utf-8 -*- import networkx as nximport matplotlib.pyplot as plt G = nx.DiGraph()#空の有向グラフのインスタンスの作成 G.add_node('a')#ノードの追加G.add_node('b')G.add_node('c')G.add_node('d')G.add_node('e')G.a…

Python 無向グラフの生成 ノードと枝の確認

# -*- coding: utf-8 -*- import networkx as nximport matplotlib.pyplot as plt G = nx.Graph()#空の無向グラフのインスタンスの作成 G.add_nodes_from([1,2,3,4,5])#ノードG.add_edges_from([(1,2),(3,4)])#辺 nx.draw_circular(G,with_labels=True,node_…

python 2整数の最大公約数を求める

a = int(input("input a ="))b = int(input("input b =")) if a < b: divisor = aelse: divisor = bwhile divisor > 1: print("divisor = " + str(divisor)) if a % divisor == 0 and b % divisor == 0: break divisor -= 1 print("最大公約数は" + str(divi…

python ある整数以下の素数を出す

import math n = 1000primes = []numbers = range(2,n)sqrt_n = math.sqrt(n) while numbers[0] <= sqrt_n: primes.append(numbers[0]) numbers =[n for n in numbers if n % numbers[0] != 0]print(primes + numbers) インデントがないので、コピペでは動き…

python 素数判定

import math def isPrime(n): for i in range(2,int(math.sqrt(n) + 1)): if n % i == 0: return False return Truep = int(input("input number:"))if isPrime(p): print(str(p) + "は素数である")else: print(str(p) + "は素数ではない") ※インデントがな…

Python リストの使い方

list1 = [6,2,4,3,6,1]print(list1.count(6))print(list1.count(5))print(list1.index(1))print(list1.index(6)) list1.append(5)print(list1) list1.remove(6)print(list1) list1.pop()print(list1) list1.sort()print(list1) 自分で動きを確認してみよう!