Size: px
Start display at page:

Download ""

Transcription

1 // Java-SwingWorker 版オセロ // Copyright(c) 2018 Takanori OOBA. // ステップ1: 盤面を作る // ステップ2: 打てる場所を示す // ステップ3: はさんだ石を反転させる // ステップ4: パスと終了を判定する // ステップ5: ヒント有無 対戦機能を追加 // ステップ6:comThink() カスタマイズ packa geothelo; impor tjava.awt.borderlayout; impor tjava.awt.color; impor tjava.awt.eventqueue; impor tjava.awt.font; impor tjava.awt.gridlayout; impor tjava.awt.event.actionevent; impor tjava.awt.event.actionlistener; impor tjavax.swing.boxlayout; impor tjavax.swing.buttongroup; impor tjavax.swing.jbutton; impor tjavax.swing.jcheckbox; impor tjavax.swing.jframe; impor tjavax.swing.jlabel; impor tjavax.swing.joptionpane; impor tjavax.swing.jpanel; impor tjavax.swing.jradiobutton; impor tjavax.swing.jtextfield; impor tjavax.swing.swingconstants; impor tjavax.swing.swingworker; impor tjavax.swing.border.emptyborder; publi cclas sothello_06extend sjframe{ privat ejpanel contentpane; privat ejtextfield textfield; privat ejbutton cel[][]=newjbuton[8][8];// 盤面を作るボタン (JButon) の配列 privat eintishi[][]=newint[8][8]; // 石の色 0= 空,1= 黒,2= 白,3= 明灰色 privat einthint[][]=newint[8][8]; // 打てる場所かどうか,0= 打てない,1= 打てる privat eintnante; // 現在何手目かを示す privat ejradiobutton radiopc; // 先手を示すラジオボタン privat ejradiobutton radioyou; privat ejcheckbox checkbox; // STEP5で追加 /** *Launchthe application. */ publicstaticvoidmain(string[] args) { EventQueue.invo kelate r(newrunnable() { publicvoidrun(){ try{ Othelo_06 frame= newothello_06(); frame.setvisible(true); catc h(exception e) { e.printstacktrace(); ); /** *Createthe frame. 1 SagamiharaSogoHighSchool

2 */ publicothello_06() { setdefaultcloseoperation(jframe.exit_on_cl OSE); settitle(" オセロゲーム "); setbounds(10, 10, 580,630); contentpane = newjpanel(); contentpane.setborder(newemptyborder(5,5, 5,5)); contentpane.setlayout(newborderlayout(0,0); setcontentpane(contentpane); JPanelpanelNor th=newjpanel(); contentpane.add(panelnorth,borderlayout.north); panelnorth.setlayout(newgridlayout(1, 8, 0, 0)); JPanelpanelWes t=newjpanel(); contentpane.add(panelwest,borderlayout.west); panelwest.setlayout(newgridlayout(8, 1, 0, 0)); JPanelpanelSou th=newjpanel(); contentpane.add(panelsouth,borderlayout.south); panelsouth.setlayout(newboxlayout(panelsouth, BoxLayout.X_AXIS)); JLabellabel=newJLabel(" 先手は "); panelsouth.add(label); radiopc =newjradiobutton("pc"); panelsouth.add(radiopc); radioyou= newjradiobuton(" あなた "); radioyou.setselected(true); panelsouth.add(radioyou); textfield=newjtextfield(); panelsouth.add(textfield); textfield.setcolumns(20); JButton butto n= newjbutton(" 開始 "); buton.addactionlistener(newactionlistener(){ // Step 4で追加 publicvoidactionperformed(actionevent e){ startgame(); ); buton.setenabled(true); panelsouth.add(button); JPanelpanelCen ter=newjpanel(); panelcenter.setbackground(color.black); contentpane.add(panelcenter, BorderLayout.CENTER); panelcenter.setlayout(newgridlayout(8, 8, 2, 2)); // 列番号 行番号の表示 JLabel[] lbret u=newjlabel[10]; JLabel[] lbgyo u=newjlabel[10]; charc='a'; for(inti=0;i<8; i++){ lbretu[i]=newjlabel(string.valueo f(c++)); lbretu[i].sethorizontalalignment(swingconstants.cente R); panelnorth.add(lbretu[i]); lbgyou[i]=newjlabel(string.valueo f(i+1)+" "); panelwest.ad(lbgyou[i]); 2 SagamiharaSogoHighSchool

3 // 盤面にマス目 (JButon) を追加 for(intx=0;x<8; x+){ cel[x][y]=newjbuton(" "); cel[x][y].setbackground(color.green); cel[x][y].setfont(newfont("ms UI Gothic", Font.PLAIN, 30); panelcenter.add(cel[x][y]); // アクションリスナーを追加 cel[x][y].addactionlistener( newactionlistener(){ publicvoidactionperformed(actionevente){ MyWorkerworke r=newmyworker(e); worker.execute(); //clickcel(e); ); // STEP5で追加 checkbox= newjcheckbox(" ヒント "); checkbox.addactionlistener(newactionlistener() { publicvoidactionperformed(actionevent e){ disp_all(); ); panelsouth.add(checkbox); // 変数を初期化 init(); // 盤面の表示 sethint(nante % 2) +1); disp_all(); ButonGroupbGroup=newButtonGroup(); bgroup.add(radiopc); bgroup.add(radioyou); // コンピュータが考える STEP6 で改訂 privat evoidcomthink(){ intc= 0; intx2=0; inty2=0; if(sethint(nante% 2) +1)>0){ // 石を打てる場所を調べる for(intx=0; x<8; x++){ if(hint[x][y] = 1){ // 石を打てる場所のうち, if(c < point(x, y)){ // ポイントの高い場所の x,yを c =point(x,y); // x2,y2 に代入する x2 = x; y2 = y; // リバース処理 clickcell2( x2,y2); // 最高ポイントの場所 x2,y2に打つ // コンピュータにとらせたい場所をポイントで示す STEP6 privat eintpoint(intx,inty){ 3 SagamiharaSogoHighSchool

4 intaray[][] = {{ 5, 1, 4, 4, 4, 4, 1, 5, { 1,1, 5, 6, 7, 8, 1, 1, { 4,2, 5, 6, 7, 8, 2, 4, { 4,2, 5, 0, 0, 5, 2, 4, { 4,2, 5, 0, 0, 10, 2, 4, { 4,2, 5, 6, 7, 8, 2, 4, { 1,1, 2, 2, 2, 2, 1, 1, { 5,1, 4, 4, 4, 4, 1, 5; retur naray[y][x]; // ゲーム開始処理 STEP4で追加 privat evoidstartgame(){ init(); // 変数初期化 textfield.settext(" の番です "); sethint(nante % 2) +1); // 打てる場所を調査 disp_all(); // 盤面の石を全て表示 if(radiopc.isselected()){ // PCが先手なら comthink(); // PCが打つ STEP5 // 0.3 秒待つ privat evoidwaittime(){ try{ Thread.slee p(300); catc h(interuptedexceptione1) { e1.printstacktrace(); // 盤面のクリック処理 privat evoidclickcell(actionevent e){ intx=0; inty=0; // クリック位置 x, y の取得 JButon btn= (JButton)e.getSource(); loop_exit: // 2 重ループを抜けるためのラベル for(y=0;y<8; y++){ for(x=0;x<8; x++){ if(btn= cell[x][y]){ brea klop_exit; // 2 重ループを抜ける Java の技 // リバース処理 clickcell2(x, y ); // リバース処理 privat evoidclickcell2(intx,inty){ Stringstr[]={" "," "; if(hint[x][y] ==1){ // クリックされた石の番地表示 charc='a'; c += x; textfield.settext(str[(nante %2)] +" は "+String.valueO f(c)+ (y + 1)+" に打ちました."); // 打った場所に石を表示 4 SagamiharaSogoHighSchool

5 ishi[x][y]=(nante % 2) +1; setcolor(x,y,(nante %2)+1); // リバース処理 reverse8(x,y,(nante %2)+1); // 1 手進める nante+; intuter u=sethint(nante %2)+1); if( uteru > 0){ // 相手に打つ場所があれば順番を表示 textfield.settext(textfield.gettext()+str[(nante% 2)]+" の番です "); else{ // 相手に打つ場所がなければ 自分が打てるか調べる // 1 手進める nante+; uteru =sethint((nante %2) +1); if( uteru == 0){// 自分も打てなければ ゲーム終了 msggameend(); else{ // パスの表示 msggamepass((nante -1)% 2) +1); // 盤面を再表示 disp_all(); // PC の番ならPC が打つ STEP5 で追加 intpc=0; if(radioyou.isselected() pc= 1; if((nante %2)==pc) comthink(); // 指定した色の石数をカウント (1 == 黒,2== 白 ) privat eintcountishi(intcol){ intc=0; for(intx=0;x<8; x++){ if(ishi[x][y] == col) c++; retur nc; // メッセージ表示 privat evoidmsgbox(string s){ JFrameframe=newJFrame(); JOptionPane.showMessage Dialog(frame, s); // ゲーム終了メッセージ privat evoidmsggameend(){ intkuro=countishi(1); intsiro=countishi(2); Stringtext=" ゲーム終了! :" +kuro +" :" +siro; textfield.settext(text); if(kuro== siro){ text =text +"\n 引き分けです."; elseif(kuro>siro){ text =text +"\n の勝ちです."; else{ text =text +"\n の勝ちです."; 5 SagamiharaSogoHighSchool

6 msgbox( text); // パスメッセージ privat evoidmsggamepass(intishi){ Strings= " "; if(ishi ==2)s =" "; s =s + はパスです "."; msgbox( s); textfield.settext(textfield.gettext() +s ); //8 方向に向けて石を反転させる privat evoidreverse8(intx, inty,intiro_me){ reverse1(x, y, 0,-1,iro_Me); // 北 (0,-1) reverse1(x, y, 1,-1,iro_Me); // 北東 (1,-1) reverse1(x, y, 1, 0,iro_Me); // 東 (1, 0) reverse1(x, y, 1, 1,iro_Me); // 南東 (1, 1) reverse1(x, y, 0, 1,iro_Me); // 南 (0, 1) reverse1(x, y,-1, 1,iro_Me); // 南西 (-1, 1) reverse1(x, y,-1, 0,iro_Me); // 西 (-1, 0) reverse1(x, y,-1,-1,iro_me); // 北西 (-1,-1) // 1 方向に向けて石を反転させる privat evoidreverse1(intx,inty,intsx,intsy,intcol){ intc; c =countreverse1(x, y, sx,sy, col); whil e(c>0){ waittime(); // 0.3 秒待つ x += sx; y += sy; c--; ishi[x][y] =col; setcolor(x, y, col); // 石色 (1or 2) が打てる所か盤面全体を調べて hint 配列に入れる // 打てる位置の総数を返す privat eintsethint(intiro){ // iro== 黒 (1) か白 (2) intcount=0; // hint 配列の初期化と明灰色の消去 for(inty=0; y<8;y++){ for(intx=0;x<8; x++){ hint[x][y]=0; if(ishi[x][y] == 3) ishi[x][y]= 0;// 明灰色の石を消しておく for(inty=0;y<8;y++){ for(intx=0;x<8; x++){ if(countreverse8(x, y, iro)>0){ // そこが打てる場所か hint[x][y] =1; // 1 = 打てる場所 ishi[x][y] =3; // ヒントの明灰色 count++; retur ncount; // 打てる場所の総数を返す 6 SagamiharaSogoHighSchool

7 // 指定位置 (x,y) にcol 色の石を置いたとき, 反転できる石の数を8 方向で調べる privat eintcountreverse8(intx,inty,intcol){ intcount=0; // そのマスが空でなければ打てない場所なので 即ダメ if(ishi[x][y] ==1 ishi[x][y] == 2)returncount; count +=countreverse1(x, y, 0,-1,col); // 北 ( 0,-1) count += countreverse1(x, y, 1,-1,col); // 北東 ( 1,-1) count +=countreverse1(x, y, 1, 0,col); // 東 ( 1, 0) count +=countreverse1(x, y, 1, 1,col); // 南東 ( 1, 1) count +=countreverse1(x, y, 0, 1,col); // 南 ( 0, 1) count +=countreverse1(x, y, -1, 1,col); // 南西 (-1, 1) count +=countreverse1(x, y, -1, 0,col); // 西 (-1, 0) count +=countreverse1(x, y, -1,-1,col); // 北西 (-1,-1) retur ncount; // 指定位置 (x,y) にcol 色の石を置いたとき, 反転できる石数を指定方向 sx,syで調べる privat eintcountreverse1(intx,inty,intsx,intsy,intcol){ intcount=0; intcol_ait e= 1; // 相手の色 if(col == col_aite) col_aite =2; // 相手の石が何個並んでいるか数える x += sx; y += sy; whil e(getcolor(x,y)== col_aite){ x += sx; y += sy; count+; // 未入力 範囲外等 自分の石以外に到達したらカウントをリセット if(getcolor(x,y)!=col){ count = 0; retur ncount; // 指定位置 (x,y) の石色 (0,1,2,3) を返す, 指定場所が盤面外なら -1 を返す privat eintgetcolor(intx,inty){ if(x<0 y<0 x>7 y>7){ return-1; retur nishi[x][y]; // 石の色 0,1,2,3 のいずれか // 配列 変数の初期化 privat evoidinit(){ for(intx=0;x<8; x+){ ishi[x][y]=0; hint[x][y]=0; // いま何手目か nante=0; // ゲーム開始時, 白黒の石 4つ ishi[3][3] =2; // D4 -> 2( 白 ) ishi[4][3] =1; // E4 -> 1( 黒 ) ishi[3][4] =1; // D5 -> 1( 黒 ) ishi[4][4] =2; // E5 -> 2( 白 ) 7 SagamiharaSogoHighSchool

8 // 盤面の表示 privat evoiddisp_all(){ for(intx=0;x<8; x+){ setcolor( x,y,ishi[x][y]); // 一つの石の表示 ( 場所, 色番号 ) privat evoidsetcolor(intx,inty,intcol){ switc h(col){ case0: cell[x][y].setforeground(color.green); brea k; // 0= 未入力 case1: cell[x][y].setforeground(color.black); brea k; // 1= 黒 case2: cell[x][y].setforeground(color.white); brea k; // 2= 白 case3: if(checkbox.isselected()){ // 3= 明灰色 STEP5 で修正 cel[x][y].setforeground(color.light_gr AY); else{ cel[x][y].setforeground(color.green); brea k; // マス目のクリックを受けて 別スレッドで処理を行う clasmyworkerexte ndsswingworker <Object,Object>{ privat eactioneventevent; publi cmyworker(actionevente){ this.event=e; protec tedobject doinbackground(){ clickcell(this.event); returnnull; 8 SagamiharaSogoHighSchool

発展プログラミング (22) 例題 Othello_03( 応用プログラム オセロ その 3) オセロゲームの技術課題を一つずつ解決しましょう ステップ 3: はさんだ石を反転させるアルゴリ ズム 考え方はさんだ石を反転するには, 1 隣に相手の石があること 2 その先に, 自分の石があることが前提

発展プログラミング (22) 例題 Othello_03( 応用プログラム オセロ その 3) オセロゲームの技術課題を一つずつ解決しましょう ステップ 3: はさんだ石を反転させるアルゴリ ズム 考え方はさんだ石を反転するには, 1 隣に相手の石があること 2 その先に, 自分の石があることが前提 発展プログラミング (22) 例題 Othello_03( 応用プログラム オセロ その 3) オセロゲームの技術課題を一つずつ解決しましょう ステップ 3: はさんだ石を反転させるアルゴリ ズム 考え方はさんだ石を反転するには, 1 隣に相手の石があること 2 その先に, 自分の石があることが前提条件で, 自分の石が出るまで相手の石をひっくり返す処理を繰り返します 課題 1 a1 から h8 まで

More information

発展プログラミング (5) 例題 5-03( 応用プログラム 3 目並べ その 2) 勝敗判定機能をそなえた 3 目並べ のゲーム盤を作りましょう 必要な変数を考えましょう 1 マス目の状態を保持する配列 整数型 :mas[] 2 何手目かを数える変数 整数型 :nante 3 ゲームが終了したかど

発展プログラミング (5) 例題 5-03( 応用プログラム 3 目並べ その 2) 勝敗判定機能をそなえた 3 目並べ のゲーム盤を作りましょう 必要な変数を考えましょう 1 マス目の状態を保持する配列 整数型 :mas[] 2 何手目かを数える変数 整数型 :nante 3 ゲームが終了したかど 発展プログラミング (5) 例題 5-03( 応用プログラム 3 目並べ その 2) 勝敗判定機能をそなえた 3 目並べ のゲーム盤を作りましょう 必要な変数を考えましょう 1 マス目の状態を保持する配列 整数型 :mas[] 2 何手目かを数える変数 整数型 :nante 3 ゲームが終了したかどうかを示す変数 整数型 :endflg 最低限 この 3 種類は必要です 前回作成した例題 5-02

More information

プログラミング教育のための発展的な教材作成の実践と考察

プログラミング教育のための発展的な教材作成の実践と考察 発展プログラミング (17) 例題 Bou_03( 応用プログラム 七五三 その 5) 七五三 ( 棒消し ) ゲームの技術課題を一つずつ解決しましょう 自分の思考手順をプログラム化する方法でコンピュータの思考ルーチンを作る この七五三ゲームの最大の難関は コンピュータの思考ルーチンでしょう コンピュータは 自分の手番になったとき どう考えて どこに打つか 今回は このルーチンをプログラムします 0

More information

目 次 Java GUI 3 1 概要 クラス構成 ソースコード例 課題...7 i

目 次 Java GUI 3 1 概要 クラス構成 ソースコード例 課題...7 i Java GUI 3 Java GUI 3 - サンプルプログラム (1) - 2011-09-25 Version 1.00 K. Yanai 目 次 Java GUI 3 1 概要...1 2 クラス構成...2 3 ソースコード例...3 4 課題...7 i 1 概要まずは簡単なサンプルプログラムをみながら Java GUI の基本的なことを学びましょう 本サンプルは 図に示すようなひとつのメイン画面を使用します

More information

ガイダンス

ガイダンス プログラムの 1 行目に以下を入れること // vm12345 杉崎えり子 情報科学 B 第 10 回 GUI 情報科学 B Info2/3 info10 今日のフォルダー作成 Example10_1.java 1 今日やること Windows などで見られるウィンドウを作 成して (GUI プログラム ) そこに実行結 果を表示させる 2 ウィンドウの作成 Java を使用してウィンドウの作成をしたい

More information

ガイダンス

ガイダンス プログラムの 1 行目に以下のように自分の入れること // vm12345 杉崎えり子 情報科学 B 第 10 回 GUI 情報科学 B Info2/3 info10 今日のフォルダー作成 Example10_1.java 1 今日やること Windows などで見られるウィンドウを作 成して (GUI プログラム ) そこに実行結 果を表示させる 2 ウィンドウの作成 Java を使用してウィンドウの作成をしたい

More information

ガイダンス

ガイダンス プログラムの 1 行目に以下のように自分の入れること // vm12345 杉崎えり子 情報科学 B 第 10 回 GUI 情報科学 B Info2/3 info10 今日のフォルダー作成 Example10_1.java 1 今日やること Windows などで見られるウィンドウを作 成して (GUI プログラム ) そこに実行結 果を表示させる 2 ウィンドウの作成 Java を使用してウィンドウを作成をしたい

More information

Java言語 第1回

Java言語 第1回 Java 言語 第 8 回ウインドウ部品を用いる (1) 知的情報システム工学科 久保川淳司 kubokawa@me.it-hiroshima.ac.jp 前回の課題 (1) マウスを使って, 前回課題で作成した 6 4 のマスの図形で, \ をマウスクリックによって代わるようにしなさい 前回の課題 (2) import java.applet.applet; import java.awt.*;

More information

public class Kadai _02 { public static void main(string[] args) { MyFrame frame = new MyFrame("Kadai _02"); (2) フレームのクラス名は MyFrame とし 以下

public class Kadai _02 { public static void main(string[] args) { MyFrame frame = new MyFrame(Kadai _02); (2) フレームのクラス名は MyFrame とし 以下 オブジェクト指向プログラミング演習課題 20071128 以下のような GUI 画面を表示するプログラムを完成させなさい 前回演習で作成したプログラムにイベント処理を追加します 注意 : ファイル名が同じものがあるので 課題毎にディレクトリーを分ける等してください 課題 20071128_01 講義資料内で紹介したイベント処理の例 2 を作成し 動作を確認せよ (1) コントロールクラス (main

More information

AI 三目並べ

AI 三目並べ ame Algorithms AI programming 三目並べ 2011 11 17 ゲーム木 お互いがどのような手を打ったかによって次にどのような局面になるかを場合分けしていくゲーム展開を木で表すことができる 相手の手 ゲームを思考することは このゲーム木を先読みしていく必要がある ミニマックス法 考え方 では局面が最良になる手を選びたい 相手は ( 自分にとって ) 局面が最悪となる手を選ぶだろう

More information

< F2D F B834E2E6A7464>

< F2D F B834E2E6A7464> ランダムウォーク [Java アプレット ] [Java アプレリケーョン ] 1. はじめに 酔っぱらいは前後左右見境なくふらつきます 酔っぱらいは目的地にたどり着こうと歩き回っているうちに何度も同じところに戻って来てしまったりするものです 今 酔っぱらいが数直線上の原点にいるとします 原点を出発して30 回ふらつくとき 30 回目に酔っぱらいがいる位置は 出発点である原点からどれくらい離れてしまっているのでしょうか

More information

public class MyFrame { private JPanel panel1; private JPanel panel2; private JPanel panel3; private JPanel panel4; private JLabel label1; private JTex

public class MyFrame { private JPanel panel1; private JPanel panel2; private JPanel panel3; private JPanel panel4; private JLabel label1; private JTex ソフトウェア基礎演習課題 20061206 以下のような GUI 画面を表示するプログラムを完成させなさい 前回演習で作成したプログラムにイベント処理を追加します 注意 : ファイル名が同じものがあるので 課題毎にディレクトリーを分ける等してください ( 簡易レジスター ) 概略仕様 : 1. フレーム内にはパネルが4つあり レイアウトは GridLayout(4, 1)(4 行 1 列のレイアウト

More information

< F2D92DE82E8914B82CC977088D32E6A7464>

< F2D92DE82E8914B82CC977088D32E6A7464> 釣り銭の用意の実験 [Java アプレット ] [Java アプリケーション ] 1. はじめに クラス会などの幹事を務めることはありませんか 幹事になったつもりで考えてみてください 仮に クラス会への参加者人数は 35 人で 会費は 3500 円であるとします また 参加者は 1000 円札 4 枚でお釣りを必要とする人と 1000 円札 3 枚と 500 円玉 1 個でお釣りの要らない人の 2

More information

問題1 以下に示すプログラムは、次の処理をするプログラムである

問題1 以下に示すプログラムは、次の処理をするプログラムである 問題 1 次のプログラムの出力結果を a~d の中から選べ public class Problem1 { int i=2; int j=3; System.out.println("i"+j); a) 23,b) 5,c) i3,d) ij 問題 2 次のプログラムの出力結果を a~d の中から選べ public class Problem2 { int a=6; if((a>=2)&&(a

More information

Java言語 第1回

Java言語 第1回 Java 言語 第 11 回ウインドウ型アプリケーション (2) 知的情報システム工学科 久保川淳司 kubokawa@me.it-hiroshima.ac.jp メニュー (1) メニューを組み込むときには,MenuBar オブジェクトに Menu オブジェクトを登録し, その Menu オブジェクトに MenuItem オブジェクトを登録する 2 つの Menu オブジェクト File New

More information

プログラミングI第10回

プログラミングI第10回 プログラミング 1 第 10 回 構造体 (3) 応用 リスト操作 この資料にあるサンプルプログラムは /home/course/prog1/public_html/2007/hw/lec/sources/ 下に置いてありますから 各自自分のディレクトリにコピーして コンパイル 実行してみてください Prog1 2007 Lec 101 Programming1 Group 19992007 データ構造

More information

問題1 以下に示すプログラムは、次の処理をするプログラムである

問題1 以下に示すプログラムは、次の処理をするプログラムである 問題 1 次に示すプログラムは 配列 a の値を乱数で設定し 配列 a の値が 333 より大きく 667 以下の値 の合計値を求めるプログラムである 1 と 2 に適切なコードを記述してプログラムを完 成させよ class TotalNumber { public static void main(string[] args) { int[] a = new int[1000]; // 1 解答条件

More information

untitled

untitled 20 7 1 22 7 1 1 2 3 7 8 9 10 11 13 14 15 17 18 19 21 22 - 1 - - 2 - - 3 - - 4 - 50 200 50 200-5 - 50 200 50 200 50 200 - 6 - - 7 - () - 8 - (XY) - 9 - 112-10 - - 11 - - 12 - - 13 - - 14 - - 15 - - 16 -

More information

untitled

untitled 19 1 19 19 3 8 1 19 1 61 2 479 1965 64 1237 148 1272 58 183 X 1 X 2 12 2 15 A B 5 18 B 29 X 1 12 10 31 A 1 58 Y B 14 1 25 3 31 1 5 5 15 Y B 1 232 Y B 1 4235 14 11 8 5350 2409 X 1 15 10 10 B Y Y 2 X 1 X

More information

<4D F736F F D20438CBE8CEA8D758DC F0939A82C282AB2E646F63>

<4D F736F F D20438CBE8CEA8D758DC F0939A82C282AB2E646F63> C 言語講座第 2 回 作成 : ハルト 前回の復習基本的に main () の中カッコの中にプログラムを書く また 変数 ( int, float ) はC 言語では main() の中カッコの先頭で宣言する 1 画面へ出力 printf() 2 キーボードから入力 scanf() printf / scanf で整数を表示 / 入力 %d 小数を表示 / 入力 %f 3 整数を扱う int 型を使う

More information

Public Grid As ReverseGrid Public Position As Point ' 論理位置 Public Rectangle As Rectangle ' 物理位置 Status; 黒 白 なしの状態 Grid; オセロの盤面 Position; 盤面内の説明 Rectan

Public Grid As ReverseGrid Public Position As Point ' 論理位置 Public Rectangle As Rectangle ' 物理位置 Status; 黒 白 なしの状態 Grid; オセロの盤面 Position; 盤面内の説明 Rectan 31204 プログラミング 3605 井上寛晶 3531 松井佑樹 3635 宮地翼 要旨各自でフリーソフトを作成 インターネット上に公開することを目的とし Visual Basic2008 2010 を使い 二年生までは ちんちろりん という簡単なゲームを作ったが 今回はより難度が高い オセロ の作成に成功した 本文 1. 目的情報化が進んだ現代において 社会に出ていくためにはパソコンの一つや二つ

More information

人工知能入門

人工知能入門 藤田悟 黄潤和 探索とは 探索問題 探索解の性質 探索空間の構造 探索木 探索グラフ 探索順序 深さ優先探索 幅優先探索 探索プログラムの作成 バックトラック 深さ優先探索 幅優先探索 n 個の ueen を n n のマスの中に 縦横斜めに重ならないように配置する 簡単化のために 4-ueen を考える 正解 全状態の探索プログラム 全ての最終状態を生成した後に 最終状態が解であるかどうかを判定する

More information

情報基礎A

情報基礎A 情報基礎 A 第 10 週 プログラミング入門 マクロ基本文法 4 1 配列 FOR~NEXT 全眞嬉 東北大学情報科学研究科システム情報科学専攻情報システム評価学分野 http://www.dais.is.tohoku.ac.jp/~jinhee/jyoho-19.html 6 人分の合計を計算 2 socre(0) socre(1) socre(2) socre(3) socre(4) socre(5)

More information

(Microsoft Word - java\221n\221\242\203\214\203|\201[\203g.doc)

(Microsoft Word - java\221n\221\242\203\214\203|\201[\203g.doc) 創造プログラミング演習報告書 ( Java 言語 ) 3I 4 番大上雅史 1 プログラムの内容 カジノなどで有名な ブラックジャック のトランプゲームを作った チップを賭けたりする機能はなく 本当にゲームの基本的な部分しかないが そこそこ遊べるものになったと思う ブラックジャック のゲームの性質上 自分は自分の意志で自由にカードを処理できるが 相手は決められたルールに従ってカードを処理するので 相手の思考プログラムというのが必要ない分

More information

プログラミングA

プログラミングA プログラミング A 第 5 回 場合に応じた処理 繰り返し 2017 年 5 月 15 日 東邦大学金岡晃 前回の復習 (1) このプログラムを作成し実行してください 1 前回の復習 (2) このプログラムを作成し実行してください 2 前回の復習 (3) 3 前回の復習 演算子 代入演算子 インクリメント シフト演算子 型変換 4 場合に応じた処理 5 こういうプログラムを作りたい 5 教科のテスト

More information

情報システム設計論II ユーザインタフェース(1)

情報システム設計論II ユーザインタフェース(1) プログラミング演習 (9) 多重配列 中村, 青山 小林, 橋本 1 目標 Processing で多重配列に挑戦! 2 次元のマス目に配置されたオブジェクトをどう扱っていくか? 課題 : オセロゲームを作ってみる ライツアウトを作ってみよう 2 次元配列の定義 int[][] square = new int [10][5]; 整数型で要素数が10x5 個の square という配列を作成 square

More information

< F2D834F838C A815B A CC>

< F2D834F838C A815B A CC> グレゴリー ライプニッツの公式 [Java アプレット ] [Java アプリケーション ] 1. はじめに 次のグレゴリー ライプニッツの公式を用いて π の近似値を求めてみましょう [ グレゴリー ライプニッツの公式 ] π 4 =1-1 3 + 1 5-1 7 + 1 9-1 + 11 シミュレーションソフト グレゴリー ライプニッツの公式による π の近似 を使って π の近似値が求まる様子を観察してみてください

More information

STEP1 STEP3 STEP2 STEP4 STEP6 STEP5 STEP7 10,000,000 2,060 38 0 0 0 1978 4 1 2015 9 30 15,000,000 2,060 38 0 0 0 197941 2016930 10,000,000 2,060 38 0 0 0 197941 2016930 3 000 000 0 0 0 600 15

More information

P072-076.indd

P072-076.indd 3 STEP0 STEP1 STEP2 STEP3 STEP4 072 3STEP4 STEP3 STEP2 STEP1 STEP0 073 3 STEP0 STEP1 STEP2 STEP3 STEP4 074 3STEP4 STEP3 STEP2 STEP1 STEP0 075 3 STEP0 STEP1 STEP2 STEP3 STEP4 076 3STEP4 STEP3 STEP2 STEP1

More information

1

1 1 2 3 4 5 6 7 8 9 0 1 2 6 3 1 2 3 4 5 6 7 8 9 0 5 4 STEP 02 STEP 01 STEP 03 STEP 04 1F 1F 2F 2F 2F 1F 1 2 3 4 5 http://smarthouse-center.org/sdk/ http://smarthouse-center.org/inquiries/ http://sh-center.org/

More information

< F2D B838A835882CC8CF68EAE2E6A7464>

< F2D B838A835882CC8CF68EAE2E6A7464> ウォーリスの公式 [Java アプレット ] [Java アプリケーション ] 1. はじめに 次のウォーリスの公式を用いて π の近似値を求めてみましょう [ ウォーリスの公式 ] π=2{ 2 2 4 4 6 6 1 3 3 5 5 7 シミュレーションソフト ウォーリスの公式による π の近似 を使って π の近似値が求まる様子を観察してみてください 2.Java アプレット (1) Javaプログラムリスト

More information

< F2D82B682E182F182AF82F12E6A7464>

< F2D82B682E182F182AF82F12E6A7464> 3 人のじゃんけん [Java アプレット ] [Java アプリケーション ] 1. はじめに A 君 B 君 C 君の 3 人でじゃんけんを 1 回するときの勝ち負けを考えてみましょう あいこの場合は A 君 B 君 C 君の順に グー グー グー チョキ チョキ チョキ パー パー パー グー チョキ パー グー パー チョキ チョキ グー パー チョキ パー グー パー グー チョキ パー

More information

yy yy ;; ;; ;; ;; ;; ;; ;; ;; ;; ;; ;; ;; ;; ;; ;;; ;;; ;;; ;;; ;;; ;;; ;;; ;;; ;;; ;;; ;;; ;;; ; ; ; ;; ;; ;; ;;; ;;; ;;; ;; ;; ;; ;; ;; ; ; ; ; ; ; ;

More information

2. AI 囲碁の準備 本章では AI 囲碁を使うための準備について解説します 2.1 AI 囲碁に入っているディスクについて AI 囲碁の商品には以下のディスクが入っています AI 囲碁 Version 20 CD-ROM このディスクにはインストーラや AI 囲碁のプログラムといった AI 囲碁を動作 させるのに必要な各種ファイルが入っています 2.2 AI 囲碁のインストールとアンインストール

More information

< F2D B825082CC96E291E82E6A7464>

< F2D B825082CC96E291E82E6A7464> 3x+1 の問題 [Java アプレット ] [Java アプリケーション ] 1. はじめに どんな自然数から始めても良いので その数が偶数ならば2で割り 奇数ならば3 倍して1を加えることを繰り返します そうすると どんな自然数から始めても必ず1になるというのはほんとうなのでしょうか 例えば 11から始めると 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1 となります

More information

Java講座

Java講座 ~ 第 1 回 ~ 情報科学部コンピュータ科学科 2 年竹中優 プログラムを書く上で Hello world 基礎事項 演算子 構文 2 コメントアウト (//, /* */, /** */) をしよう! インデントをしよう! 変数などにはわかりやすい名前をつけよう! 要するに 他人が見て理解しやすいコードを書こうということです 3 1. Eclipse を起動 2. ファイル 新規 javaプロジェクト

More information

< F2D8EA CE909482CC92EA82852E6A7464>

< F2D8EA CE909482CC92EA82852E6A7464> 自然対数の底 e [Java アプレット ] [Java アプリケーション ] 1. はじめに 対数は 17 世紀にネイピアやビュルギといった数学者たちが生み出した関数である 円周率 πと自然対数の底 eとは密接な関係があり どちらも無理数で超越数 ( 整数係数の代数方程式の解にならない実数 ) である 1737 年 オイラーは eが無理数であることを示した 1873 年 フランスの数学者エルミートは

More information

< F2D825282CC947B909482CC A815B83682E6A>

< F2D825282CC947B909482CC A815B83682E6A> 3 の倍数のトランプカード 1. はじめに [Java アプレット ] [Java アプリケーション ] ここにトランプが 1 組あります ジョーカー 2 枚を除いて 52 枚を使います 3 の倍数は スペード クローバ ダイヤ ハートに それぞれ 3 と 6 と 9 と 12 の 4 枚ずつあるので 4 4=16 枚あります この 52 枚のトランプから 1 枚引いたとき そのカードが 3 の倍数である確率を考えます

More information

< F2D82518CC282CC D2E6A7464>

< F2D82518CC282CC D2E6A7464> 2 個のさいころ 1. はじめに [Java アプレット ] [Java アプリケーション ] 2 個のさいころを同時に投げたときの目の出方を考えてみましょう この 2 個のさいころをそれぞれ さいころ Ⅰ さいころ Ⅱ とすると その目の出方は順に 1 1 2 1 3 1 4 1 5 1 6 1 1 2 2 2 3 2 4 2 5 2 6 2 1 3 2 3 3 3 4 3 5 3 6 3 1 4

More information

サービス付き高齢者向け住宅賠償責任保険.indd

サービス付き高齢者向け住宅賠償責任保険.indd 1 2 1 CASE 1 1 2 CASE 2 CASE 3 CASE 4 3 CASE 5 4 3 4 5 6 2 CASE 1 CASE 2 CASE 3 7 8 3 9 10 CASE 1 CASE 2 CASE 3 CASE 4 11 12 13 14 1 1 2 FAX:03-3375-8470 2 3 3 4 4 3 15 16 FAX:03-3375-8470 1 2 0570-022808

More information

Microsoft PowerPoint - prog12.ppt

Microsoft PowerPoint - prog12.ppt プログラミング言語 3 第 12 回 (2007 年 12 月 17 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/57 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 12 月 17 日分と書いてある部分が 本日の教材です

More information

プログラミングA

プログラミングA プログラミング A 第 5 回 場合に応じた処理 繰り返し 2019 年 5 月 13 日 東邦大学金岡晃 場合に応じた処理 1 こういうプログラムを作りたい 5 教科のテスト 100 点以上各科目の点数の合計が 100 点未満 おめでとう! これで 100 点越えのプレゼントを獲得! というメッセージを出力 残念!100 点越えのプレゼントまであと ** 点! というメッセージを出力 5 教科の点数の合計が

More information

cp-7. 配列

cp-7. 配列 cp-7. 配列 (C プログラムの書き方を, パソコン演習で学ぶシリーズ ) https://www.kkaneko.jp/cc/adp/index.html 金子邦彦 1 本日の内容 例題 1. 月の日数配列とは. 配列の宣言. 配列の添え字. 例題 2. ベクトルの内積例題 3. 合計点と平均点例題 4. 棒グラフを描く配列と繰り返し計算の関係例題 5. 行列の和 2 次元配列 2 今日の到達目標

More information

awt の主要なクラスを下記に示す クラス Component Container Button Label Panel Frame 説明画面にユーザインターフェイス要素として表示し, ユーザとのやり取りを行うコンポーネントを表すすべてのコンポーネントのスーパークラスになる ほかのコンポーネントを含

awt の主要なクラスを下記に示す クラス Component Container Button Label Panel Frame 説明画面にユーザインターフェイス要素として表示し, ユーザとのやり取りを行うコンポーネントを表すすべてのコンポーネントのスーパークラスになる ほかのコンポーネントを含 第 3 章 GUI による電卓の実装 GUI の基礎とイベント処理について理解し, 前章で作成した演算プログラムを組み込んで電卓を作成 ( 実装 ) する 3.1 インターフェイス 文字などのコマンドだけでやりとりするインターフェイスを CUI(Command User Interface) と呼び, マウスなどでウインドウを操作して行うインターフェイスを GUI(Graphical User Interface)

More information

Microsoft PowerPoint - VBA解説1.ppt [互換モード]

Microsoft PowerPoint - VBA解説1.ppt [互換モード] 九州大学工学部地球環境工学科船舶海洋システム工学コース 計算工学演習第一 演習資料担当 : 木村 Excel 上のマクロを利用してプログラムを組む Visual Basic for Applications (VBA) のテクニック Excel のマクロとは? 一連の操作を自動的に行う機能 例 ) セル ( マス目 ) に数字を 1 から順番に埋めていく Excel のマクロでどんなプログラムが作れるのか?

More information

2

2 問題 1 次の設問 1,2 に答えよ 設問 1 1 から 10 まで数えながら その数が偶数か奇数かを表示する JAVA プログラムの一部である 空欄に入るべき文字列は何か for( int i=1; 1 ; i++){ System.out.print(i); if( 2 == 0){ System.out.println(" is Even"); else{ System.out.println("

More information

< F2D BCA82CC978E89BA82CC8EC08CB12E6A7464>

< F2D BCA82CC978E89BA82CC8EC08CB12E6A7464> パチンコ玉の落下の実験 [Java アプレット ] [Java アプリケーション ] 1. はじめに 1 個のパチンコ玉が釘に当たって左右に分かれながら落下するとき パチンコ玉はどこに落下するのでしょうか ただし パチンコ玉が釘に当たって左右に分かれるとき その分かれ方は左右半々であるとします パチンコ玉が落下し易い場所はあるのでしょうか それとも どこの場所も同じなのでしょうか シミュレーションソフト

More information

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 今日の講義講義で学ぶ内容 switch 文 論理演算子 条件演算子 条件判断文 3 switch 文 switch 文 式が case のラベルと一致する場所から直後の break; まで処理しますどれにも一致致しない場合 def

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 今日の講義講義で学ぶ内容 switch 文 論理演算子 条件演算子 条件判断文 3 switch 文 switch 文 式が case のラベルと一致する場所から直後の break; まで処理しますどれにも一致致しない場合 def Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 今日の講義講義で学ぶ内容 switch 文 論理演算子 条件演算子 条件判断文 3 switch 文 switch 文 式が case のラベルと一致する場所から直後の まで処理しますどれにも一致致しない場合 default: から直後の まで処理します 式の結果 ラベル 定数 整数または文字 (byte, short, int,

More information

Microsoft PowerPoint - ゲーム理論2018.pptx

Microsoft PowerPoint - ゲーム理論2018.pptx 89 90 ゲーム理論 ( 第 回ゲーム木探索 I) 九州大学大学院システム情報科学研究院情報学部門横尾真 E-mail: yokoo@inf.kyushu-u.ac.jp http://agent.inf.kyushu-u.ac.jp/~yokoo/ ゲーム木探索 行動の選択が一回だけではなく 交互に繰り返し生じる 前の番に相手の選んだ手は分かる 9 9 例題 二人で交代に, から順に までの数を言う.

More information

Java 基礎問題ドリル ~ メソッドを理解する ~ 次のプログラムコードに 各設問の条件にあうメソッドを追加しなさい その後 そのメソッドが正しく動作することを検証するためのプログラムコードを main メソッドの中に追加しなさい public class Practice { // ここに各設問

Java 基礎問題ドリル ~ メソッドを理解する ~ 次のプログラムコードに 各設問の条件にあうメソッドを追加しなさい その後 そのメソッドが正しく動作することを検証するためのプログラムコードを main メソッドの中に追加しなさい public class Practice { // ここに各設問 Java 基礎問題ドリル ~ メソッドを理解する ~ 次のプログラムコードに 各設問の条件にあうメソッドを追加しなさい その後 そのメソッドが正しく動作することを検証するためのプログラムコードを main メソッドの中に追加しなさい public class Practice { // ここに各設問のメソッドを追加する public static void main(string[] args) {

More information

20169 3 4 5003 n=3,000 61.8% 38.2% n=3,000 20 7.3% 30 21.3% 40 34.8% 50 36.6% n=3,000 3.0% 2.0% 1.5% 12.1% 14.0% 41.4% 25.9% n=3,000 37.7% % 24.8% 28.8% 1.9% 3.1% 0.2% n=3,000 500 64.0% 500 1,000 31.3%

More information

橡Taro9-生徒の活動.PDF

橡Taro9-生徒の活動.PDF 3 1 4 1 20 30 2 2 3-1- 1 2-2- -3- 18 1200 1 4-4- -5- 15 5 25 5-6- 1 4 2 1 10 20 2 3-7- 1 2 3 150 431 338-8- 2 3 100 4 5 6 7 1-9- 1291-10 - -11 - 10 1 35 2 3 1866 68 4 1871 1873 5 6-12 - 1 2 3 4 1 4-13

More information

Prog2_12th

Prog2_12th 2018 年 12 月 13 日 ( 木 ) 実施クラスの継承オブジェクト指向プログラミングの基本的な属性として, 親クラスのメンバを再利用, 拡張, または変更する子クラスを定義することが出来る メンバの再利用を継承と呼び, 継承元となるクラスを基底クラスと呼ぶ また, 基底クラスのメンバを継承するクラスを, 派生クラスと呼ぶ なお, メンバの中でコンストラクタは継承されない C# 言語では,Java

More information

PowerPoint Presentation

PowerPoint Presentation ゲーム木の探索について ミニマックス法のアルゴリズム アルファベータ法のアルゴリズ 三目並べゲームの例 1 ゲーム TicTacToe Othello Chess Let us find game and play! 三目並べ http://perfecttictactoe.herokuapp.com/ オセロ http://atohi.com/osg/default.aspx 将棋 2 ゲーム木の探索問題

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 2016/03/11 NetBeans ではじめる Java 第二回 画像処理ソフトウェアの開発 ArkOak 代表 加納徹 Java 講習会の流れ 5. 画像の入出力 6. マウスによる画像情報の取得 7. 画像の上からお絵描き 8. 画像処理ソフトウェアの開発 2 5. 画像の入出力 新規プロジェクト ImageProcessing を作ろう 画像の入出力 1. 以下のようにラベルとボタンを配置

More information

1 JAVA APPLET 実習 1. はじめに Java フォルダに applet フォルダを作成する 2. 実習問題の作成 J01.java public class J01 extends Applet{ public void paint(graphics kaku){ kaku.drawstring("hello World from Java!",60,70); j01.html

More information

IE6 2 BMI chapter1 Java 6 chapter2 Java 7 chapter3 for if 8 chapter4 : BMI 9 chapter5 Java GUI 10 chapter6 11 chapter7 BMI 12 chap

IE6 2 BMI chapter1 Java 6 chapter2 Java 7 chapter3 for if 8 chapter4 : BMI 9 chapter5 Java GUI 10 chapter6 11 chapter7 BMI 12 chap 1-1 1-2 IE6 2 BMI 3-1 3-2 4 5 chapter1 Java 6 chapter2 Java 7 chapter3 for if 8 chapter4 : BMI 9 chapter5 Java GUI 10 chapter6 11 chapter7 BMI 12 chapter8 : 13-1 13-2 14 15 PersonTest.java KazuateGame.java

More information

Microsoft PowerPoint - diip ppt

Microsoft PowerPoint - diip ppt 2006 年度デザイン情報学科情報処理 III 第 12 回マウスによる制御 ブロック崩し の部品 ボール直径 10pixel の円ラケット横 60pixel 縦 10pixel, マウスにより左右に移動ブロック横 50pixel 縦 20pixel,28 個 (7 個 4 段 ) 壁 ( フィールド ) 横 400pixel 縦 600pixel 2006 年度デザイン情報学科情報処理 III 2

More information

Java言語 第1回

Java言語 第1回 Java 言語 第 10 回ウインドウ型アプリケーション (1) 知的情報システム工学科 久保川淳司 kubokawa@me.it-hiroshima.ac.jp 前回の課題 (1) ボーダーレイアウト, グリッドレイアウト, パネルを使用して, 電卓風のボタンを実現する BorderLayout で NORTH, CENTER, SOUTH に分割 NORTHにはテキストフィールドを設定 CENTERにはパネルを使って9つのボタンを設定

More information

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 条件判断文 3 switch 文 switch 文式が case の値と一致した場合 そこから直後の break; までを処理し どれにも一致しない場合 default; から直後の break; までを処理する 但し 式や値 1

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 条件判断文 3 switch 文 switch 文式が case の値と一致した場合 そこから直後の break; までを処理し どれにも一致しない場合 default; から直後の break; までを処理する 但し 式や値 1 Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 条件判断文 3 switch 文 switch 文式が case の値と一致した場合 そこから直後の までを処理し どれにも一致しない場合 default; から直後の までを処理する 但し 式や値 1 値 2は整数または文字である switch( 式 ) case 値 1: // コロン : です セミコロン ; と間違えないように!!

More information

Microsoft Word - VBA基礎(3).docx

Microsoft Word - VBA基礎(3).docx 上に中和滴定のフローチャートを示しました この中で溶液の色を判断する部分があります このような判断はプログラムではどのように行うのでしょうか 判断に使う命令は IF 文を使います IF は英語で もし何々なら という意味になります 条件判断条件判断には次の命令を使います If 条件式 1 Then ElseIf 条件式 2 Then ElseIf 条件式 3 Then 実行文群 1 実行文群 2 実行文群

More information

オブジェクト指向プログラミング・同演習 5月21日演習課題

オブジェクト指向プログラミング・同演習 5月21日演習課題 オブジェクト指向プログラミング 同演習 5 月 21 日演習課題 問題 1 配列の例外処理例外が発生する可能性のある処理を try で囲み その後に catch で例外を捕捉します 例外処理の終了処理として finally が行われます これは書かなくて自動的に行われます 提出課題 1 (Kadai052301.java) 以下のプログラムは例外処理をしていない ArrayIndexOutOfBoundsException

More information

情報処理Ⅰ

情報処理Ⅰ Java フローチャート -1- フローチャート ( 流れ図 ) プログラムの処理手順 ( アルゴリズム ) を図示したもの 記号の種類は下記のとおり 端子記号 ( 開始 終了 ) 処理記号計算, 代入等 条件の判定 条件 No ループ処理 LOOP start Yes データの入力 出力 print など 定義済み処理処理名 end サンプルグログラム ( 大文字 小文字変換 ) 大文字を入力して下さい

More information

2014-11.key

2014-11.key 2014-11 1 2 3 4 5 7 8 9 10 11 12 PC 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 45 46 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68

More information

6 30 2005 10 1 65 2,682 00 21.9 481 1 2,776 21.0 15 1,740 00 5.8 107 13.6 40 2025 24.2-0 - -1 - -2 - -3 - -4 - -5 - -6 - -7 - -8- -9 - - 10 - -11 - - 12 - - 13-10 11 59 4 59 3 10 17 - 14 - - 15 - - 16

More information

「東京こどもネット・ケータイヘルプデスク(こたエール)」平成22年度相談実績の概要

「東京こどもネット・ケータイヘルプデスク(こたエール)」平成22年度相談実績の概要 734, 35% 62, 11% 84, 16% 530, 26% 235, 11% PC) 396, 73% 579, 28% ) (21 ) 2 3 4 5 6 7 8 9 10 11 12 13 200 150 100 22 182 200 150 100 22 50 54 PC 49 52 PC 50 41 14 17 1 1 4 16 3 6 14 180 250 200 150 235

More information

ガイダンス

ガイダンス プログラムの 1 行目に以下を入れること // vm12345 杉崎えり子 情報科学 B 第 14 回課題作成 3 情報科学 B Info2/3 info14 今日のフォルダー作成 情報科学 B 第 14 回課題作成 3 Report14_1.java 1 教科書 資料 過去のプログラムを見ながらで OK 課題 3( 提出 ) ボタンとアニメーション ( 第 13 回 ) を組み合わせて オリ ジナルのウィンドウを作成する

More information

コンピュータ工学講義プリント (7 月 17 日 ) 今回の講義では フローチャートについて学ぶ フローチャートとはフローチャートは コンピュータプログラムの処理の流れを視覚的に表し 処理の全体像を把握しやすくするために書く図である 日本語では流れ図という 図 1 は ユーザーに 0 以上の整数 n

コンピュータ工学講義プリント (7 月 17 日 ) 今回の講義では フローチャートについて学ぶ フローチャートとはフローチャートは コンピュータプログラムの処理の流れを視覚的に表し 処理の全体像を把握しやすくするために書く図である 日本語では流れ図という 図 1 は ユーザーに 0 以上の整数 n コンピュータ工学講義プリント (7 月 17 日 ) 今回の講義では フローチャートについて学ぶ フローチャートとはフローチャートは コンピュータプログラムの処理の流れを視覚的に表し 処理の全体像を把握しやすくするために書く図である 日本語では流れ図という 図 1 は ユーザーに 0 以上の整数 n を入力してもらい その後 1 から n までの全ての整数の合計 sum を計算し 最後にその sum

More information

1 2 3 4 10 5 30 87 50 20 3 7 2 2 6 3 70 7 5 10 20 20 30 14 5 1,000 24 112 2 3 1 8 110 9 JR 10 110 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 25 30 31 32 25 A 33 B C D E F G PR PR or 34 35

More information

( さん)( さん)( さん)( さん)( さん)( さん)( さん)( さん)ラベル り( さん)( さん)( さん)( さん)( さん) ( さん)( さん)( さん)( さん)( さん)( さん)( さん)( さん)ラベル り( さん)( さん)( さん)( さん)( さん) ( さん)( さん)( さん)( さん)( さん)( さん)( さん)( さん)ラベル り( さん)( さん)( さん)(

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション Let s review! 2012.5.10(Thu) 担当者清水浜田 今までに覚えた (?) こと 入出力 変数 演算子 条件分岐 ループ構文 メソッド 今日はこれらを復習して行きます 2 String 変数名 = JOptionPane.showInputDialog( 説明 ); JOptionPane.showMessageDialog(null, 表示させたいもの ); import javax.swing.joptionpane;

More information

Microsoft PowerPoint - DA1_2018.pptx

Microsoft PowerPoint - DA1_2018.pptx 木の利用例 ( ゲーム木 ) データ構造とアルゴリズム ⅠB 第 回 自分の手番 / 相手の手番で分岐していく 77 例題 二人で交代に,1 から順に までの数を言う. 言う数の個数は,1 個, 個,3 個のいずれか好きなのを選んでよい 最後に を言った方が負け 必勝法 を言って, 相手に順番を回せば絶対勝ち 一方,0 を言って, 相手に順番を回せば, 相手が何個を選んでも, 次に を言える ---

More information

C 言語第 3 回 2 a と b? 関係演算子 a と b の関係 関係演算子 等しい a==b 等しくない a!=b より大きい a>b 以上 a>=b より小さい a<b 以下 a<=b 状態 真偽 値 条件が満たされた場合 TRUE( 真 ) 1(0 以外 ) 条件が満たされなかった場合 F

C 言語第 3 回 2 a と b? 関係演算子 a と b の関係 関係演算子 等しい a==b 等しくない a!=b より大きい a>b 以上 a>=b より小さい a<b 以下 a<=b 状態 真偽 値 条件が満たされた場合 TRUE( 真 ) 1(0 以外 ) 条件が満たされなかった場合 F C 言語第 3 回 三つの基本構造 ( シラバス 5 6 回目 ) 1 1 順次処理上から順番に実行していく #include int main(void) { long x, y; 最初 長い整数がつかえる 負の数もか だいたい ±21 億まで OK なんだ 掛け算するぞ x = 1000*2000; scanf("%ld", &y); printf("%ld", x*y);

More information

任意の加算プログラム

任意の加算プログラム HP Java CG Java Graphics CG CG CG paint CG CG paint CG paint Windows paint paint 17 // public Frame1() { enableevents(awtevent.window_event_mask); try { jbinit(); catch(exception e) { e.printstacktrace();

More information

2

2 2014/01/15 プログラミング応用 b H24 年度期末テスト問題 問題 1 次の設問 1,2 に答えよ 設問 1 1 から 10 まで数えながら その数が偶数か奇数かを表示する JAVA プログラムの一部である 空欄に入るべき文字列は何か for( int i=1; 1 ; i++){ System.out.print(i); if( 2 == 0){ System.out.println("

More information

次の演習課題(1),(2)のプログラムを完成させよ

次の演習課題(1),(2)のプログラムを完成させよ 次の演習課題 (1),(2) のプログラムを作成せよ. 課題 (1) ボタン押下時の処理を追加し以下の実行結果となるようにプログラムを作成しなさい ( ボタン押下時の処理 ) import java.lang.*; class Figure extends JFrame implements ActionListener{ JPanel panel; JScrollPane scroll; JTextArea

More information

Taro-Basicの基礎・条件分岐(公

Taro-Basicの基礎・条件分岐(公 0. 目次 3. 条件分岐 3. 1 If 文 3. 1. 1 処理を分岐する方法 3. 1. 2 処理を 2 つに分岐する方法 3. 1. 3 処理を 3 つ以上に分岐する方法 3. 2 Select Case 文 - 1 - 3. 条件分岐 条件により ある 文 を実行したりしなかったりするとき If 文を使う たとえば ある変数の値により 奇数 と表示したり 偶数 と表示したりするような処理ができる

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション プログラマー勉強会 1 回 basic.h 補足 [ 修飾子 ] const 付けた変数は初期化以外で値を設定することができなくなる 定数宣言に使う unsigned 付けた変数は符号がなくなり 正の値しか設定できない [ 条件コンパイル ] #ifdef M ここ以前に M がマクロとして定義されていれば ここ以下をコンパイルする #ifndef M ここ以前に M というマクロが定義されていなければ

More information

第2回

第2回 第 4 回基本データ構造 1 明星大学情報学科 2 3 年前期 アルゴリズムとデータ構造 Ⅰ 第 4 回 Page 1 配列 スタック キューとその操作 4-1. 配列とその操作 配列型 同じ型の変数を並べたもの 配列にする型は 基本型 配列型 構造体 ポインタいずれでもよい 要素の並べ方を 次元 という 1 次元配列 ( 直線状 ) 2 次元配列 ( 平面状 ) 3 次元配列 ( 立体状 ) a[5]

More information

1

1 1 2 3 4 確認しよう 今回のサンプルプログラムにアクセスしてみましょう 1. デスクトップ上のフォルダをクリックし /var/www/html に example1.html と example2.php ファイルがあることを確認します 2. ブラウザを起動し 次の URL にアクセスします http://localhost/example1.html 3. 自分の手を選択して じゃんけんぽん

More information