Information Engineering Exercise II

Slides:



Advertisements
Similar presentations
R Basics 2013/12/09 Yamada. 今日の方針 Today’s plan テキスト・文字列を扱うにあたっての用 語の理解をすることの方が、 R での操作を 見るより有意義と思われるので、そちら を優先 Learning terms on text/strings is more.
Advertisements

英語ゼミ 6/15( 水 ) 金 正福. Part2 Unit8 ~査読者とのやりと り~ 科学技術英語 ロボット工学.
情報基礎実習 I (第3回) 木曜4・5限 担当:北川 晃. プログラミング演習 2 つの数を入力し,「計算」ボタンをクリック すると,それぞれの計算結果を次のように 表示するプログラムを作れ.
だい六か – クリスマスとお正月 ぶんぽう. て form review ► Group 1 Verbs ► Have two or more ひらがな in the verb stem AND ► The final sound of the verb stem is from the い row.
第 5 章 2 次元モデル Chapter 5 2-dimensional model. Contents 1.2 次元モデル 2-dimensional model 2. 弱形式 Weak form 3.FEM 近似 FEM approximation 4. まとめ Summary.
VE 01 え form What is え form? え? You can do that many things with え form?
GridLayout オブジェクト(省略)
英語勉強会.
STEP 2 ノート・テイキングのサンプル.
第1回レポートの課題 6月15日出題 今回の課題は1問のみ 第2回レポートと併せて本科目の単位を認定 第2回は7月に出題予定
 辞書系(じしょけい).
Chapter 11 Queues 行列.
日本語... ジェパディー! This is a template for you to use in your classroom.
Verb てform + から、 After.
と.
情報基礎実習I (第7回) 木曜4・5限 担当:北川 晃.
Ex8. Search for Vacuum Problem(2)
ひな祭り.
Noun の 間(に) + Adjective Verb てform + いる間(に) during/while.
How do you talk about Positions/ Locations?
V 03 I do NOT eat sushi. I do NOT do sumo.
A 02 I like sushi! I like origami!
にほんご JPN101 Sep. 23, 2009 (Wednesday).
Reasonので + Consequence clause
Unit Book 10_课件_U1_Reading2-8 4 Word power university 1.
The future tense Takuya Mochizuki.
Licensing information
Chapter 4 Quiz #2 Verbs Particles を、に、で
The Sacred Deer of 奈良(なら)
Did he/she just say that? Get your head out of the gutter! Oh wait….
VTA 02 What do you do on a weekend? しゅうまつ、何をしますか。
日本人の知らない日本語 (The Japanese that the Japanese Don't Know) Episodes 7 & 8
ストップウォッチの カード ストップウォッチの カード
Topics on Japan これらは、過去のインターンが作成したパワポの写真です。毎回、同じような題材が多いため、皆さんの出身地等、ここにない題材も取り上げるようにしてください。
Information Engineering Exercise II
National adviser Japanese Yuriko Kayamoto
東京工科大学 コンピュータサイエンス学部 亀田弘之
第二回 VB講座 電卓を作ろう.
suppose to be expected to be should be
情報実習I (第7回) 木曜4・5限 担当:北川 晃.
くれます To give (someone gives something to me or my family) くれました くれます
Term paper, Report (1st, first)
プログラミング基礎a 第10回 Javaによる図形処理入門(2) GUIの使い方
MIX 09 2/23/2019 1:22 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Where is Wumpus Propositional logic (cont…) Reasoning where is wumpus
Windows Summit /24/2019 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
受け身の疑問文 Practice ~ed・・・?.
プログラミング基礎a 第10回 Javaによる図形処理入門(2) GUIの使い方
クイズやゲーム形式で紹介した実例です。いずれも過去のインターン作です。
2019/4/22 Warm-up ※Warm-up 1~3には、小学校外国語活動「アルファベットを探そう」(H26年度、神埼小学校におけるSTの授業実践)で、5年生が撮影した写真を使用しています(授業者より使用許諾済)。
About Karuta Part1.
ロールプレイアクティビティ ある状況設定の中で、登場人物になりきり会話をします。 CAN-DO: 状況に応じた適切な質問をすることができる。
写真描写アクティビティ 写真に関しての3つの簡単な質問をし、写真を見ながら答えるアクティビティです。簡単な質問に関してやりとりする力を育てます。 CAN-DO: 写真に関する単純な質問に答えることができる。
プログラミングⅠ 平成30年10月22日 森田 彦.
Tag question Aoyama Shogo.
C言語ファミリー C# 高級言語(抽象的) Java オブジェクト指向 C++ C 機械語(原始的)
知能ソフトウェア特論 Intelligent Software
知能ソフトウェア特論 Intelligent Software
Windows Summit 2010 © 2010 Microsoft Corporation.All rights reserved.Microsoft、Windows、Windows Vista およびその他の製品名は、米国 Microsoft Corporation の米国およびその他の国における登録商標または商標です。
第6回レポート解説 条件1 条件2 条件3 月の入力 月、日、曜日の表示 日の入力 曜日の入力
ー生命倫理の授業を通して生徒の意識に何が生じたかー
The difference between adjectives and adverbs
Created by L. Whittingham
英語勉強会:川口英語 Supporting of Continuing Life Habit Improvement Using the Theory of Cognitive Dissonance : System Extension and Evaluation Experiment B4 渡邉.
Cluster EG Face To Face meeting
We learned what Chris Moon did to make people realize
Grammar Point 2: Describing the locations of objects
Apply sound transmission to soundproofing
情報実習I (第15回) 木曜4・5限 担当:北川 晃.
岩村雅一 知能情報工学演習I 第7回(後半第1回) 岩村雅一
Presentation transcript:

Information Engineering Exercise II 月曜日3~4限目 3rd-4th Period, Mon. 担当:北川 晃(技術教育コース) A. Kitagawa (Technology Education)

様々な装飾1(Some decorations 1) 文字の色を変えたり,文字列の背景色を変更したりすることもできる.  (We can change the color of string and its background. ) … # 文字列を赤で表示する label = Tkinter.Label(root, text= 'Hello World’, \ foreground = ‘red’) label.pack() 色の指定(24ビットカラー) (Designation of 24-bit color) red: #FF0000 blue: #0000FF green: #00FF00 white: #FFFFFF black: #000000 magenta: #FF00FF cyan: #00FFFF yellow: #FFFF00 … # 文字列の背景色を変える label = Tkinter.Label(root, text= 'Hello World’, \ background = ‘#FF0000’) label.pack() 他にも様々なオプションがある (A lot of other options are available. )

(Display of the main window) 様々な装飾2(Some decorations 2) 複数の文字を表示することもできる(Label文にオプション).  (A number of strings are displayed (options are added in Label statement). import Tkinter root = Tkinter.Tk() label1 = Tkinter.Label(root, text = 'Hello everybody. How are you?', \ background = ‘yellow’) label1.pack() label2 = Tkinter.Label(root, text = 'Oh My God!', \ background = 'red‘) label2.pack() label3 = Tkinter.Label(root, text = 'See you tommorow.', \ background = ‘cyan’) label3.pack() root.mainloop() label1の表示 (Display of label1) label2の表示 (Display of label2) label3の表示 (Display of label3) メインウィンドウの表示 (Display of the main window)

様々な装飾3(Some decorations 3) 文字の間隔を変えたり,装丁を変えたりすることができる(pack文にオプション).  (Spaces between strings can be adjusted and solid display is available (options in pack statement). ) import Tkinter root = Tkinter.Tk() label1 = Tkinter.Label(root, text = 'Hello everybody. How are you?', \ background = ‘yellow’, relief = Tkinter.RAISED) label1.pack(padx=5, pady=5, anchor = Tkinter.CENTER) label2 = Tkinter.Label(root, text = 'Oh My God!', \ background = 'red‘, relief = Tkinter.SUNKEN) label2.pack(padx=5, pady=5, anchor=Tkinter.E) label3 = Tkinter.Label(root, text = 'See you tommorow.', \ background = 'cyan‘, relief = Tkinter.GROOVE) label3.pack(padx=5, pady=5, anchor=Tkinter.W) root.mainloop() 水平,垂直方向の 外部の余白の調整 (Adjustment of horizontal and vertical outside spaces. ) 文字列の立体表示 (Solid display of widgets) 文字列の位置 (Display position of the string)

ボタンの配置と動作1(Alignment of button and its behavior 1) ボタンを作成し,押したときの動作を指定できる.(Button is available and we can control the behavior when it is pushed. ) import Tkinter root = Tkinter.Tk() def func(): label.config(text= 'Pushed!') label = Tkinter.Label(root, text= 'Push Button!') label.pack() button = Tkinter.Button(root, text = "Push!", command = func) button.pack() root.mainloop() ボタンが動作したときの関数を定義 (Definition of a function referred when button is pushed. ) ボタンを押したときの動作 (Behavior of the button when it is pushed. ) ボタンの生成,表示 (Generation and display the button. )

ボタンの配置と動作2(Alignment of button and its behavior 2) マウスのポイント状況での制御もできる.(We can control events with a mouse device. ) import Tkinter root = Tkinter.Tk() def func(): label.config(text= 'Pushed!') def func_event(q): label.config(text = 'Push Button') label = Tkinter.Label(root, text= 'Push Button!') label.pack() button = Tkinter.Button(root, text = "Push!", command = func) button.pack() button.bind('<Leave>',func_event) root.mainloop() ‘q’はダミーの変数 (‘q’ is a dummy variable. ) ボタンの追加動作に関する 関数を定義 (Definition of a function referred when the additional event occurs. ) マウスをウィジェットの外に出したとき (‘When the mouse is moved to outside of widget, ) ボタンのイベントの追加 (Addition of another event for the button)

複数のボタンの配置1(Alignment of a number of buttons 1) フレームを複数設定し,ボタンを配置する.  (We can make some frames and align buttons in them. ) フレームの幅の設定 (Configuration of frame width) import Tkinter root = Tkinter.Tk() frame_window = Tkinter.Frame(root, relief = Tkinter.SUNKEN, width = 10) frame_window.pack() frame1 = Tkinter.Frame(root, relief = Tkinter.FLAT) frame1.pack() frame2 = Tkinter.Frame(root, relief = Tkinter.FLAT) frame2.pack() frame3 = Tkinter.Frame(root, relief = Tkinter.FLAT) frame3.pack() ボタンの動作関数 (Functions for actions when button is pushed) def func1(): label.config(text = '1') … def func9(): label.config(text = '9') フレームの生成 (Generation of frames)

(Position of the string) 複数のボタンの配置2(Alignment of a number of buttons 2) label = Tkinter.Label(frame_window, text = ‘’, relief = Tkinter.SUNKEN, \ width = 10, anchor = Tkinter.E) label.pack() button7 = Tkinter.Button(frame1, text = '7', relief = Tkinter.RAISED, \ width = 3, command = func7) button7.pack(side = Tkinter.LEFT) button8 = Tkinter.Button(frame1, text = '8', relief = Tkinter.RAISED, \ width = 3, command = func8) button8.pack(side = Tkinter.LEFT) button9 = Tkinter.Button(frame1, text = '9', relief = Tkinter.RAISED, \ width = 3, command = func9) button9.pack(side = Tkinter.LEFT) button4 = Tkinter.Button(frame2, text = '4', relief = Tkinter.RAISED, \ width = 3, command = func4) button4.pack(side = Tkinter.LEFT) … 文字の表示位置 (Position of the string) フレームの左詰で (Left aligned in the frame)

複数のボタンの配置3(Alignment of a number of buttons 3) … button1 = Tkinter.Button(frame3, text = '1', relief = Tkinter.RAISED, \ width = 3, command = func1) button1.pack(side = Tkinter.LEFT) button2 = Tkinter.Button(frame3, text = '2', relief = Tkinter.RAISED, \ width = 3, command = func2) button2.pack(side = Tkinter.LEFT) button3 = Tkinter.Button(frame3, text = '3', relief = Tkinter.RAISED, \ width = 3, command = func3) button3.pack(side = Tkinter.LEFT) root.mainloop()

(Initial value of the string) テンキーアプリケーションの改良(Improvement of numeric keypad) ボタンを続けて押したとき,文字列が追加されるように変更する.  (Let’s modify the program as a number is added when keys are pushed successively. ) import Tkinter root = Tkinter.Tk() s = '' frame_window = Tkinter.Frame(root, relief = Tkinter.SUNKEN, width = 10) frame_window.pack() … frame3 = Tkinter.Frame(root, relief = Tkinter.FLAT) frame3.pack() def func1(): global s s=s+'1' label.config(text = s) 文字列の初期値 (Initial value of the string) 関数外の変数に変更を加えるために必要 (‘global’ option is necessary to operate variable out of this function. )

電卓を作ってみよう(Let’s make a calculator!) 電卓を作ってみよう.  (Let’s make a calculator program that has numeric keypad and AC key. ) 自然な電卓の動作を実現するために,工夫してみよう.  (Let’s shape the program to realize a natural behavior of calculator. ) ゼロが表示されているときは,ゼロを追加して表示しない.  (When ‘0’ is displayed, another ‘0’ should not be added. ) 小数点が二度出てこない.(The decimal point does not appear twice. ) 演算を行うために,文字列を数値に変換したり, 表示するために数値を文字列に変換したり. (Convert variables between strings and values for calculation or display of them. )

ヒント:足し算機能の実装(Hint: Implementation of summation) 足し算キーとイコールキーの動作を次のように設定する.  (A sample code for summation and equal keys. ) 足し算キー def func_summation(): global op,s,a op = 'summation' a=float(s) s='' def func_equal(): global a,b,s b=float(s) if op == 'summation': c=a+b label.config(text = str(c)) s='0' 足し算であることの記憶 変数が関数の外で定義されている場合は,通常関数の中でも参照できる. 変数が関数の中で定義されていると,関数の外ではその変数を参照できない. それまでに入力されている数の記憶 記憶されている数の消去 イコールキー 二つ目に入力された数の記憶 足し算の場合は… 記憶されている数の消去

電卓の自然な動作に向けて1(For natural actions of calculator part 1) ディスプレイに「0」が表示されているときに,0キーを押しても「00」とは表示されない.  (Suppose that ‘0’ is displayed on the label. No more ‘0’ is added if 0 key is pushed. ) ヒント:0キーの動作を,ディスプレイの 表示によって場合分けする. (Hint: We divide the action of 0 key Into cases according to string on the display. ) Pushing ‘0’ key Yes No s=‘0’? s=s s=s + ‘0’ Displaying the string ‘s’

電卓の自然な動作に向けて2(For natural actions of calculator part 2) ディスプレイ上の数字が小数点を含む場合,二つ目の小数点を表示しない.  (When the string on the display already contains a symbol ‘.’, the second ‘.’ is not displayed any more. ) ヒント:’s’の文字列の中に小数点「.」が含まれていないか,チェックする. (Hint: Check whether ‘.’ is contained in the string ‘s’. ) inステートメントを使う.(Use ‘in’ statement. ) 例文 >>>x=‘o’ in ‘kochi’ >>>x True >>>y=‘a’ in ‘kochi’ >>>y False True for s = ‘123.45’ False for s = ‘12345’ ‘.’ in s A condition for ‘if’ statement

電卓の自然な動作に向けて3(For natural actions of calculator part 3) 答えが整数の場合,ディスプレイには整数値として表示される.  (When we obtained an answer as an integer, the answer is displayed as an integer. ) ヒント:得られた答えが整数かどうかチェックする. (Hint: Check the answer whether it is an integer or not. ) ある数𝑐に対して,’int()’関数は小数部分を切り捨てる. (For a number c, a function ‘int()’ discard fractional portion. ) c-int(c)を評価して,ゼロならcは整数. (Evaluate c-int(c). If it is zero, c is an integer. )

発展的なプログラミング(Advanced programming) 「1」,「+」,「1」,「=」,「+」,「1」,「=」の順にキーを押して,3が表示されるか?  (When pushing keys in order of ‘1’, ‘+’, ‘1’, ‘=‘, ‘1’, ‘=‘, can we obtain an answer 3?) 「1」,「+」,「1」,「=」,「1」の順にキーを押して,1が表示されるか? 21と表示されないか?  (When pushing keys in order of ‘1’, ‘+’, ‘1’, ‘=’, ‘1’, is the string ‘1’ displayed correctly? Isn’t the string ‘21’ displayed?) ディスプレイの領域内に表示できない答えが得られたときはどうするか?  (When the answer is obtained as an long string that is not completely display, how should we process the case? )