Enjoy programming more!
Kidspod is a post site which supports young programmers.
First step to join us.
Register as a member
For members

2019/12/08 15:31:22

MixJuice GET URL : kidspod.club/mj/930

しゃべるそろばん練習足し算ichigolattepancake

そろばんの練習用に作ったシンプルなプログラムです。

今回はなんとichigo-iceとスピーカーをつなぐと
数字を読み上げてくれますので楽しんで練習してください!

実行するとpancake画面に数字が10個表示され、読み上げてくれますので
そろばんですべて合計して下さい
次にEnterを押すと画面の色が変わり合計が表示と読み上げを行います。

タイム秒数の表示も追加しました。

Enterを押すとまた次の問題が表示されます。

2019/12/14プログラムの無駄な部分を修正しました。

SOURCE CODE

// de'wa: <NUMK VAL=: CONUNTER=enn>:na-ri: COUNTER=byo->:
//123456789012345678901234567890123456789
cls();
uart("PC RESET\n");

function SHD(n,r,t){
var i=0,v=scr(i,r);
 while(v!=58){
  if(v<59){
v=v+118;
if(t>0){
i2cw(46,v-118);
  }
  }else{
v=v+63;
  }
uart(128,6,20,i*8+n%2*40,(10-n)*4,v);
i=i+1;
v=scr(i,r);
 }
}

function ra(){
i2cw(46,13);
var ra;
i2cr(46,ra);
 while(ra!=62){
i2cr(46,ra);
 }
}

function main(){
var S=0,n=10,Sn,k=4,r=0,t=tick();
 while(n>0){
Sn=rnd(9999)+1;
//(9000)+1000;
lc(0,0);
log(Sn,":");
talk(8);
SHD(n,0,1);
talk(20);
  if(n>1){
talk(35);
  }else{
talk(1);
  }
ra();
S=S+Sn;
n=n-1;
env(n);
 }
input();
uart("PC CLEAR 0B\n");
lc(0,15);
log(S,":\n");
talk(8);
SHD(10,15,1);
talk(20);
ra();
log((tick()-t)/1000,"SEC:");
talk(8);
SHD(6,16,1);
talk(41);
ra();
}

function talk(m){
var d=mem(".")+2+m,c;
c=mem(d);
 while(c!=58){
i2cw(46,c);
d=d+1;
c=mem(d);
 }
}

while(1){
log("ENTERをおしてね");
input();
uart("PC CLEAR 03\n");
main();
}

COMMENT

Kidspod運営チーム
Kidspod運営チーム2019/12/13 16:09:04

なんとIchigo-ice版! 前回作品からの単なる移植でなく、秒数表示だったり、しっかりとした進化があってすごいです! よりいっそう、ソロバンの練習に身が入るかも……?