マウスイベント1

マウスという入力インターフェースを用いて, クリック時のプリントの実装します. Pygameでマウス入力を検出する方法は, 2つあります. 今回は1つ目のイベントハンドラでマウスイベントを補足する方法です. イベントハンドラは今までQUITイベントで使っていま…

写真の描写

写真の描写をします. これはゲーム作成の際に非常に重要です. 背景やキャラクターを思うように扱うことができます. import pygame from pygame.locals import * import sys SCREEN_SIZE = (1000, 750) pygame.init() screen = pygame.display.set_mode(SCREE…

図形の描写

GUIで図形を書きたいと思います. ウィンドウの作成は前回と同じです. import pygame from pygame.locals import * import sys SCREEN_SIZE = (700, 400) def main(): pygame.init() screen = pygame.display.set_mode(SCREEN_SIZE) pygame.display.set_capti…

バッファ

CでもJavaでも聞いたことあります. 僕は今まで理解をしていなかったので, この機会にちゃんと理解しようと思います.そもそもバッファとはデータのことです. 表示したい図や絵のデータです. ウィンドウ作成のプログラムのときにバックバッファという言葉が出…

ウィンドウの作成

GUIのはじめとして, ウィンドウの作成をします. 関数でウィンドウを呼びます. #Pygameを使う場合に必須のモジュールをインポート import pygame from pygame.locals import * import sys SCREEN_SIZE = (300, 480) # 画面サイズ def main(): # Pygameを初期…

pygame

現在, pygameを勉強しています. 今までpythonをCUIとして勉強してきました. まだ, 今までやったことも完璧にできなかったり, 標準ライブラリ等何ができるかまだわからないのですが, 並行してGUIという次のステップに移ろうかと思います. 理由として, オブジ…

階段

階段を作成するプログラムです.これも九九のプログラム同様, for文を2つ重ねます. a = '#' k=range(10) for j in range(10): for i in k: print a, print del k[-1] 実行結果は, # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #…

九九

九九を作るプログラムをプログラムを作成しました. for文を二つ重ねて作成します. for i in range(1,10): for j in range(1,10): print i*j, print 3行目のコンマをつけないと, それぞれの掛け算を縦に表示させてしまいます. 一つ目のfor文で縦に9個, 二つ目…

オセロの実装

現在はpythonでオセロの実装をしています. これからはオブジェクト指向について学びがてら, ゲームの作成をしてみたいと思います. これからは毎日進捗を報告できたらと思います.

配列の大きい順

配列を大きい順に並べます. その際にmaxで回せばすぐ終わるので, 配列の添字も表示するようにします. point = [68,90,52,75,83,78,97,58,36,66,46,50] for i in range(len(point)): a = max(point) c = point.index(a) print str(c)+'->'+str(a) point[c]=0 …

2文字の平仮名作成

ランダムで平仮名を2文字作成するプログラムを作成します. まずは簡単なプログラム import random hiragana = u"あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわをん" a=random.randint(0,len(hiragana)-1) b=ra…

累乗

入力した数値の累乗を返すプログラムです. n = int(raw_input( u"数字を入力してください")) m = int(raw_input( u"何乗にしますか?")) x=1 for i in range(m): x = x*n print (u"{0}の".format(n)+"{0}".format(m) +u"乗は"+"{0}".format(x)) nは入力した…

閏年判定

その年が閏年かどうか判定するプログラムを作成します. Wikipediaによると, 閏年は4年に一回あります. また以下の条件があります. 1. 西暦年が4で割り切れる年は閏年 2. ただし、西暦年が100で割り切れる年は平年 3. ただし、西暦年が400で割り切れる年は閏…

今日の感想

ここ数日日経平均が上昇しています. どこまで上がるのか… ここまで上がるとなかなか買えないですね. 今日の上昇は自民党の解散決定について言及したことによって(宣言はしてない), 先物から買いが入り上昇しました. どこまで上がるか... 当分上がりそうです…

数当てゲーム

乱数で決められた数字を当てるゲームのプログラムの作成をします.答えの数字は1から1000からランダムに選択されます. そこからヒントに沿って答えを当てます.実際にプログラムを見てみます. import random m=0 n = random.randrange(1,1000) while m!=n: m =…

今日の感想

今日はゼミで自分の発表でした.本当にツメが甘く, あってはいけないミス等があり自分のことを情けなく思いました. 常に頭を回転させている生活を送ってない証だと思います. 数値実験からの考察も甘く, 学生ながら一人の研究者として失格です. たとえ自分が出…

素数判定2

10から25までの数字がそれぞれ素数であるか判定します. def prime(n): for d in range(2, n): if n % d == 0: return 0 return n for n in range(10,25): print('{0} is '.format(n) + ('a ' if prime(n) else"not " )+ 'Prime Number' ) 実行結果は, 10 is …

簡単なプログラム17

次に次元データを可視化したいと思います. 先ほどと同様にコマンドプロンプトでPythonが入っているファイルまで移動し, その中のScriptsに移動します. ipython --pylab 4行4列の単位行列を可視化します. b = np.eye(4) plt.imshow(b) 実行結果は, となります.

簡単なプログラム16

Pythonで図を書いてみます. PyScripterで書く事ができなかったので, コマンドプロンプトから書きたいと思います. まず, ipythonをインストールしてください. コマンドプロンプトからインストールすると簡単です.それでは始めます. まず, コマンドプロンプト…

簡単なプログラム15

配列データの属性を教えてくれるプログラムを書きます.dtype 各要素のデータ型 ndim データの次元数(ベクトルは1,配列は2) shape 各次元の長さをタプルで表したものこれらのコマンドを調べたいベクトルや配列の変数の後ろにくっつけるだけでそれぞれ教えてく…

確認

from pylab import * from matplotlib.pyplot import * import numpy as np import scipy as sp import matplotlib.pyplot as plt 行列について少し応用したプログラムを説明します.このモジュールを前提とします.配列について様々な関数を説明します.np.zer…

今日の感想

研究について, 応用の部分もある程度形になりましたが, これが研究の成果であるとは到底言えないので, もうちょっと条件を加える等の工夫を施したいと思います. 明日は,土曜日なので研究をほどほどにpythonの勉強をしたいと思います. C言語で書いてみたプロ…

簡単なプログラム15

>|python| from pylab import *from matplotlib.pyplot import *import numpy as npimport scipy as spimport matplotlib.pyplot as plt ||< 行列について少し応用したプログラムを説明します. このモジュールを前提とします. 配列について様々な関数を説明…

簡単なプログラム14

僕が今まで触ってきていなかったプログラムを紹介したいと思います. 配列をリストとして扱うプログラムを作成します. 今回, NumPyというモジュールを使用します. NumPyは数値演算に特化した配列を扱うモジュールです. 使用するモジュールを先に定義します. f…

簡単なプログラム13

ついにobject指向について簡単なプログラムを紹介します. プログラムを見てみます. class User(object): def __init__(self,name): self.name = name #selfはUser(object)自身 def greet(self): print "my name is %s!"% self.name satou = User("satou")suz…

今日の感想

昨日今日は研究に勤しんでいました. 結果に不備があり, 修正に時間がかかってしまいました. 基本なものはできたのですが, 応用が難しいです. 明日から着手するので頑張ります.

素数判定

与えた数字が素数かどうか判定します. まず, 数字の入力をします.以下のようにできます. n = int(input('Input Number: ')) int型なので整数のみ対応します. 実際のプログラムです. # -*- coding: utf-8 -*-n = int(input('Input Number: '))#数字の入力def …

今日の感想

最近起きるのが遅いのでなおしたいと思っています. 朝型にシフトチェンジしましょう. こんな時間に書いているのではダメですね笑. 今日は久々に新聞を手にしました. 注目のニュースはやっぱり経済でしょう. 日銀の金融緩和で日本の株最高値を更新しました. …

簡単なプログラム12

関数の引数について詳しく説明します. 引数には使用する変数を()内に入力します. まずプログラムを見ます. def hello(name,num): print "hello %s !" % name*numhello("satou",2)hello("suzuki",3) この関数はどのように出力されるのでしょうか. 引数にname…

簡単なプログラム11

リストをfor文で回します. まずは, リストの合計値を求めます. points = [56,78,49,83]sum = 0for point in points: sum = sum + point #sum += point こちらでも書き換え可能ですprint sum 実行結果は, 266 となります. 次に, for i in range(10): if i ==3…