カレンダー

02 | 2016/03 | 04
- - 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 - -

プロフィール

YOS G-spec

ハンドルネーム:YOS G-spec
もう一つの名:んらとらん
性別:男
生息地:千葉県
職業:社会人3年生

好きなゲームシリーズ
・ロックマン全般
・モンスターハンター
・討鬼伝
・太鼓の達人
・ドラムマニア
・モンスターファーム
・サルゲッチュ
・チョロQ
・マリオカート
・DJMAX Potable
・リズム天国
・グランツーリスモ
・ポケットモンスター

【フレンドコードまとめ】
【所持ゲーム表】

なんか色々と適当で中途半端な人です。

ついったー(気まぐれ更新)
ついろぐ(ついったーまとめログ)
ギガスペックツール
ギガスペックチャット
過去の産物

メール
スカイプID:yos_g-spec

新太鼓番:3348-9507-7550
3DSフレンドコード:1289-8444-6710
とび森夢番地:3500-0140-1697



最近の記事

最近のコメント

  • 01/01:YOS G-spec

  • 12/17:ばぜるこあ

  • 01/04:YOS G-spec

  • 11/15:暇神

  • 12/06:YOS G-spec

  • 12/05:くま☆

  • 08/22:YOS G-spec

カテゴリー

timeclass.js

構造体で遊ぶの楽しい。
テンプレート的な使い方が本当に便利ねぇ。
ということで、時間の計算を楽にするための何かを作った。
多分こんなことしなくても楽に時間を扱う方法はいくらかあるのだろう。
.Netにはそういう型があるらしい、みたいのは見た。

var time=function(){
this.d=0;
this.h=0;
this.m=0;
this.s=0;
this.set=function(day,hour,min,sec){
this.d=day;
this.h=hour;
this.m=min;
this.s=sec;
}
this.to=function(ptn){
var hour=24;
var min=60;
var sec=60;
while(true){
if(this.s<0){
this.s+=sec;
this.m--;
}
else if(sec<=this.s){
this.s-=sec;
this.m++;
}
else if(this.m<0){
this.m+=min;
this.h--;
}
else if(min<=this.m){
this.m-=min;
this.h++;
}
else if(this.h<0){
this.h+=hour;
this.d--;
}
else if(hour<=this.h){
this.h-=hour;
this.d++;
}
else{
break;
}
}
if(ptn===undefined){
return this.d+"day "+("0"+this.h).slice(-2)+":"+("0"+this.m).slice(-2)+":"+("0"+this.s).slice(-2);
}
var totime="";
for(var i=0;i<ptn.length;i++){
switch(ptn[i]){
case "d":
totime+=this.d+"day ";
break;
case "h":
totime+=("0"+this.h).slice(-2)+":";
break;
case "m":
totime+=("0"+this.m).slice(-2)+":";
break;
case "s":
totime+=("0"+this.s).slice(-2)+":";
}
}
return totime.replace(/:$/,"");
};
};

process.stdin.resume();
process.stdin.setEncoding('utf8');
process.stdin.on('data', function (chunk) {
var line = chunk.toString().split(/\n/);
for(var i=0;i<parseInt(line[0],10);i++){
var alswim=parseInt(line[i+1],10)/3;
var asa=new time();
asa.set(0,7,0,0);
var swim=new time();
swim.set(0,6,0,0);
var bedin=new time();
bedin.set(0,asa.h-swim.h,-alswim,0);
console.log(bedin.to("hm"));
}
});

VB&js編

某ソース。
60進数の処理は面倒臭い。

imports system.console

module mm
sub main
dim asa() as long ={7,00}
dim swim() as long ={6,00}
for i as long=0 to readline()-1
dim inkr as long=readline()/3
dim time() as long={
asa(0)-(swim(0)+Math.floor(inkr/60)),
asa(1)-(swim(1)+inkr mod 60)
}
if time(1)<0 then
time(0)-=1
time(1)+=60
end if
if time(0)<0 then
time(0)+=24
end if
writeline(time(0).tostring("d2") & ":" & time(1).tostring("d2"))
next
end sub
end module


process.stdin.resume();
process.stdin.setEncoding('utf8');
process.stdin.on('data', function (chunk) {
var line = chunk.toString().split("cat");
console.log(line.length-1);
});

【Ruby】縦書きにするプログラム暫定版

動いたのでとりあえず投下。

REM HV_exec.bat
@cd /d %~dp0
@HV.rb %1


#HV.rb
require "kconv"
require "./txtdata"
td=Txtdata.new

main =-> do
begin
file_name=ARGV[0].split(".")
kax=file_name[file_name.length-1]
hed=""
for i in 0..file_name.length-2
hed << file_name[i]
end
data=HV(td.txtload(ARGV[0]).toutf8)
td.txtsave hed << "_HV." << kax,data
puts "SUCCUSS!!"
rescue => exc
p exc
end
STDIN.gets
end

def HV data
darr=data.split(/\r|\n|\r\n/)
h_max=darr.length
v_max=0
n=0
for i in darr
if v_max < i.length then
v_max=i.length
end
i=i.chars
end
puts h_max
puts v_max
ret=""
for i in 0..v_max-1
for np in 0..h_max-1
n=h_max-np-1
if darr[n][i]==nil then
print " "
ret << " "
else
print darr[n][i].tr("0-9a-zA-Z !?#$%&'\"", "0-9a-zA-Z !?♯$%&’”")
ret << darr[n][i].tr("0-9a-zA-Z !?#$%&'\"", "0-9a-zA-Z !?♯$%&’”")
end
end
puts
ret << "\n"
end
return ret
end

main.()


[test.txt]
あけまして
 おめでとう
  ございます。

A HAPPY
NEW YEAR!!

 ↓
[test_HV.txt]
 A   あ
    おけ
NH ごめま
EA ざでし
WP いとて
 P まう 
YY す  
E  。  
A     
R     
!     
!     

【Ruby】横書きを縦書きにしたいプログラム

恐らくまだ未完成。昨日のこれと合わせてお使いくださいまし。

require "kconv"
require "./txtdata"
td=Txtdata.new

main =-> do
begin
file_name=ARGV[0].split(".")
kax=file_name[file_name.length-1]
hed=""
for i in 0..file_name.length-2
hed << file_name[i]
end
data=HV(td.txtload(ARGV[0]).toutf8)
td.txtsave hed << "_HV." << kax,data
puts "SUCCUSS!!"
STDIN.gets
rescue
puts "Not target file..."
STDIN.gets
end
end

def HV data
darr=data.split(/\r|\n|\r\n/)
h_max=darr.length
v_max=0
n=0
for i in darr
if v_max < i.length then
v_max=i.length
end
i=i.chars
end
puts h_max
puts v_max
ret="".toutf8
for i in 0..h_max
for n in 0..v_max
print darr[n][i]
if darr[n][i]==nil then
ret << " ".toutf8
else
ret << darr[n][i].toutf8
end
end
puts
ret << "\n".toutf8
end
return ret
end

main.()

rubyでもテキストファイルを楽して使う。

久々にこのシリーズ。
rubyを少しだけ触り始めたので。

#main.rb
require_relative "./txtdata"
td=Txtdata.new

main =-> do
txtdata=""
readtxt=""
txtdata << "Hello World\n"
txtdata << "Let's save text!\n"
td.txtsave "jack.txt",txtdata
puts td.txtload "jack.txt"
puts false
gets
end.call

#txtdata.rb
=begin
【txtdata.rb】by.YOS G-spec
rubyでファイルの保存と読み込みを行うクラス。

require("./txtdata")
td=Txtdata.new

【保存用関数】
td.txtsave file [string], data[string]
td.txtsave_bool file [string], data[bool]
td.txtsave_int file [string], data[int]
td.txtsave_float file [string], data[float]

【読込用関数】
data[string] = td.txtsave file [string]
data[bool] = td.txtsave_bool file [string]
data[int] = td.txtsave_int file [string]
data[float] = td.txtsave_float file [string]

=end

class Txtdata
def txtsave(file,data)
stream=open(file,"w")
stream.write data
stream.close
end

def txtload(file)
begin
data=IO.read(file)
rescue
data=""
end
return data
end

def txtsave_bool(file,data)
txtdata(file,data.to_s)
end

def txtload_bool(file)
data=txtload(file)
return not(data.downcase=="false" || data=="")
end

def txtsave_int(file,data)
txtdata(file,data.to_s)
end

def txtload_int(file)
return txtload(file).to_i
end

def txtsave_num(file,data)
txtdata(file,data.to_s)
end

def txtload_num(file)
return txtload(file).to_f
end
end

| TOP | NEXT