今年も12月がやってきました。
個人的にも世の中の流れでも色々とありました。今年印象に残った言葉から。

「つらい状況にある人ほど、なかなかつらいとは言えないものだ。」/NHKラジオ東日本大震災での放送で

確かにそうかもしれません。

「世界ぜんたいが幸福にならないうちは、個人の幸福はあり得ない」/宮沢賢治

これは宮沢賢治の数ある名著の中で繰り返し言葉を替え、状況を替えて出てきている言葉です。宮沢賢治の本は今となっては古典と呼べるものになりつつありますが、大事にしたい言葉です。
「つらいときこそ。笑おうよ!」という言葉もありますが、無理に笑う必要はありません。
私はスーパーのカスミのチラシが好きでした。
新聞の折り込みに入ってくる特売のチラシなのですが、その中に「いきる いかされている…」といった名前のコーナーだったと思いますが、霞ヶ浦のあたりの寺の住職である玄侑宗久(げんゆう そうきゅう)さんが書かれている文章が必ず載っていました。
お寺での説法を文章化した内容だったと思います。いつもいい言葉が書いてあり、私はカスミの特売品をみるよりも玄侑さんの言葉を楽しみにしていました。良いなあ、と思ったものは切り取ってスクラップブックに貼っていました。
その中の言葉です。

「人生が終わるまで本番がこなかったら残念です。」/玄侑宗久

生きているうちに、霞ヶ浦のお寺に行ってみようかと思います。
〓武田〓

今作っているホームページの中でYouTube動画を埋め込んで再生させる部分があります。
こんな感じで…

YouTubeで取得できる埋め込みコードをそのまま使うと、初期状態が360dpiでの再生になってしまい、少しぼやけた感じの再生になっていたので、最初から綺麗な再生が出来ないかと思い調べてみると以下の方法が見つかりました。
ここに書いておきます。
まず、再生するYouTubeの動画ページに行き、動画の下にある「共有」ボタンをクリックします。
つぎに「埋め込みコード」ボタンをクリックします。
youtubecode
といった感じのページになります。
チェックボックスの2箇所にチェックを入れます。
1.HD再生する
2.以前の埋め込みコードを使用する
これで上のテキストボックスに埋め込みコードが表示されますが、これをこのままコピーして自分のページに貼り付けても最盛時にHDモードや720dpiのモードになりません。
コピーしたテキストボックス内のコードを少し編集する必要があります。
例えば、取得したコードが

<object width=”640″ height=”480″><param name=”movie” value=”http://www.youtube.com/v/EqSr5tXVfg4?version=3&hl=ja_JP&rel=0&hd=1″></param><param name=”allowFullScreen” value=”true”></param><param name=”allowscriptaccess” value=”always”></param><embed src=”http://www.youtube.com/v/EqSr5tXVfg4?version=3&hl=ja_JP&rel=0&hd=1″ type=”application/x-shockwave-flash” width=”640″ height=”480″ allowscriptaccess=”always” allowfullscreen=”true”></embed></object>

なるものだったとすると、コード内のURLのあとにきている?version=3の部分を削除してから貼り付ければOKです。
〓武田〓

今年も稲田自治会主催の「稲田夏祭り」に参加させて頂きます。
震災の影響で開催が危ぶまれましたが、無事実施となりました!
以下、実施予定です。
場所/ひたちなか情報電子専門学院
日程/8月20日(土) 14:00~18:30
実施項目
・輪投げ
・射的
・くじ引き
・ストラックアウト
・ヨーヨーすくい
・おばけ屋敷(初!)
・フリーマーケット(※)

※現在、フリーマーケット担当はM先生1人なので、手伝ってくれる方を募集してます!
よろしくお願いいたします。
〓武田〓

現在日時を表示jするプログラムです。
時間に関する構造体tm構造体を使っています。tm構造体は、time.hに宣言されています。
補足説明として、西暦年のtm_yearは、1900年を起点としての年数が戻り値になりますので、1900を足して使用します。
曜日をあらわすtm_wdayは戻り値0~6の数値が日曜日~土曜日に対応します。下のサンプルのように曜日を表す文字配列の添え字として使うといいでしょう。
経過日数のtm_ydayは1月1日を0日としてその年の経過日数を返します。
サマータイムフラグtm_isdstはサマータイムに対応している地域でサマータイム中であれば、1をそうでない場合は0を返します。
// xGetLocalTime.c 現在の日時を表示する
#include <stdio.h>
#include <time.h>
int main(void)
{
time_t timer;
struct tm *t;
int year, month, day, hour, minute, second, wday;
char weekday[][4] = {“Sun”, “Mon”, “Tue”, “Wed”, “Thr”, “Fri”, “Sat”};
/* 現在時刻を取得 */
time(&timer);
/* 現在時刻を構造体に変換 */
t = localtime(&timer);
/* tm構造体の全ての要素を表示してみる */
printf(“tm構造体\n--------------------—-\n”);
printf(“%5d /秒\n”,t->tm_sec);
printf(“%5d /分\n”,t->tm_min);
printf(“%5d /時\n”,t->tm_hour);
printf(“%5d /日\n”,t->tm_mday);
printf(“%5d /月\n”,t->tm_mon);
printf(“%5d /西暦年\n”,t->tm_year);
printf(“%5d /曜日\n”,t->tm_wday);
printf(“%5d /経過日数\n”,t->tm_yday);
printf(“%5d /サマータイムフラグ\n”,t->tm_isdst);
/* 現在日時を表示 */
year = t->tm_year + 1900;
month = t->tm_mon + 1;
day = t->tm_mday;
hour = t->tm_hour;
minute = t->tm_min;
second = t->tm_sec;
wday = t->tm_wday;
printf(“\n%04d-%02d-%02d(%s) at %2d:%2d:%2d”,
year, month, day, weekday[wday], hour, minute, second);
return 0;
}
【実行結果】
tm構造体
--------------------—-
   34 /秒
   50 /分
   15 /時
    1 /日
    5 /月
  111 /西暦年
    3 /曜日
  151 /経過日数
    0 /サマータイムフラグ

最近良く見ているサイトを2つ紹介します。
GIGAZINE(ギガジン)
http://gigazine.net/
私は同名の本を最初に買って読んでから、このサイトを見るようになりました。
基本方針は時系列に色々なニュースを取り上げることのようです。
時どき「コンビニの新商品を食べてみた!」とか「飲食店の新メニューを食べてみた!」的などうでもいいような記事が入ってくるのですが、そこがまたいい味だしてます。おススメです!

痛いニュース(ノ∀`)

http://blog.livedoor.jp/dqnplus/
ライブドアのブログです。
2ちゃんねるてきに「痛いニュース」(いわゆる掲示板で盛り上がれそうなニュース)を取り上げています。
構成が上手です。
取り上げられた「痛いニュース」のあとすぐに続けてそのニュースに対する2ちゃんねるの書き込みが表示されていて、読んでいて自然に一人で盛り上がれます。実際、どのニュースも痛いです!
上のGIGAZINEの記事の写真などは、ニュースにあった写真をFlickr(米Yahoo!が運営する写真共有サービス)上からのリンクで表示している場合があるのですが、そういったホームページの作り方は参考になります。
私もFlickrは利用しています。iPhone4で撮った写真を簡単にFlickr上にアップできるアプリがあるので便利です。
〓武田〓

来年の1月31日に開催される勝田マラソンに、今年も参加しようと思います。
もう5回くらい走っていると思います。
私は10kmの部しか出場したことはありませんが…
ところで、私はマラソン大会の約3ヶ月前から走り始めます。
運動に限らず、何でも3ヶ月位続けると変化が表れてきますね。
たしか、人間の細胞も3ヶ月で新しいものと生まれ変わるとの事でした。
5回ほどマラソンに出場して分かったことは、私は毎日走る練習をしてはだめだと言うことです。
私の場合は、1週間に3回程度走ることが自分にとって丁度いいと分かりました。
あまり続けてしまうと筋肉の疲労がとれず、体を壊してしまいます。
筋肉は使い過ぎると痛くなりますが、これは筋肉が切れて、新しく丈夫な筋肉を作るためだそうです。
筋肉を作るためには睡眠や体を休めることも大事なことなのです。
私の場合は1週間に2~3回位走ることが丁度体のリズムに合っているようです。
一度、練習しすぎてしまい、マラソン大会当日まで疲れがとれず、本当に辛かったときがありました。
反省を踏まえての今です。
人生「太く、短く」とか「細く、長く」などと言いますが、私は自分に合った太さで長く行きたいと思います。
休みながらでも、続けていくことで、何事か成せるのではないでしょうか。
〓武田〓

今日から学生は夏休みに入ります。
1期の授業の終わりに次の課題を出しました。

Q. カレンダーを表示するプログラムを作成せよ。入力は西暦年と月とする。
なお、西暦元年1月1日は月曜日である。

カレンダーを作成するためには、まず閏年(うるうどし)を考慮しなければなりません。閏年の定義は「西暦年が400で割り切れる年」又は「西暦年が4で割り切れ、かつ100で割り切れない年」です。
C言語で書くと、

if (year % 400 == 0){
<閏年である>
}
else if(year % 4 == 0 && year % 100 != 0){
<閏年である>
}

となります。
解答例では、この閏年判定は関数化してあります。
月毎の日数は基本的に2月以外は変化はないため、配列に順番に入れておきます。
2月は閏年ではないときの日数28日とします。

 int month_date[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};

閏年の場合は、1日足して29日としています。

 if(checkUruu(year)) month_date[1]++; // 閏年の2月分

カレンダー風に表示するために1週間(7日分)表示したら改行をして、それっぽく見せます。

  if(cnt % 7 == 0) printf(“\n”);

閏年をチェックする関数(checkUruu)では、閏年だった場合、戻り値を「1」としていますが、これは閏年でない場合の28日に1日足して29日にするために使っています。

 // 日数計算
 for(i=1; i<=year-1; i++){
  total = total + 365 + checkUruu(i);
 }

このときの変数totalは、指定した西暦年の前の年までのトータル日数を計算するために使っています。その後に指定した西暦年の指定月の前の月までの日数をtotalに入れています。

 for(i=0; i<month-1; i++){
  total = total + month_date[i];
 }

total変数の目的は、月の初日が曜日によってずれるため、スペース表示を行うために使っています。
解答例は分かりやすいように月曜日から表示しています。

 for(i=1,cnt=0; i<=total%7; i++, cnt++) printf(” “); // その月の初日の曜日のずれを考慮

【C言語でカレンダー表示をするプログラム】

/*
xCalendar.c 西暦年を月を指定するとカレンダーを表示する
          09/07/07(火) Syuichi Takeda wrote.
*/
#include <stdio.h>
int checkUruu(int);  /* 閏年チェック関数: 閏年なら1を返す */
int main(void)
{
 int year, month;
 int month_date[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
 int total = 0;
 int i, cnt;
 
 // 西暦年入力
 do{
  printf(“西暦年を入力して下さい “);
  scanf(“%d”, &year);
 } while(year < 1);
 
 // 月日入力
 do{
  printf(“月を入力して下さい “);
  scanf(“%d”, &month);
 } while(month < 1 || month > 12);
 
 // 日数計算
 for(i=1; i<=year-1; i++){
  total = total + 365 + checkUruu(i);
 }
 
 if(checkUruu(year)) month_date[1]++; // 閏年の2月分
 
 for(i=0; i<month-1; i++){
  total = total + month_date[i];
 }
 
 // カレンダー表示
 printf(“\n\n\t%d年\n%2d月\n”, year, month);
 printf(” 月 火 水 木 金 土 日\n”);
 for(i=1,cnt=0; i<=total%7; i++, cnt++) printf(”   “); // その月の初日の曜日のずれを考慮
               // 月曜->ずらさない 火曜->1日ずらす
 for(i=1; i<=month_date[month-1]; i++, cnt++){
  if(cnt % 7 == 0) printf(“\n”);
  printf(“%3d”, i);
 }
 printf(“\n”);
 
 return 0;
}
int checkUruu(int year) // 閏年なら1を返す
{
 if (year % 400 == 0){
  return 1;
 }
 else if(year % 4 == 0 && year % 100 != 0){
  return 1;
 }
 return 0;
}

【実行結果】

西暦年を入力して下さい 2000
月を入力して下さい 2
     2000年
 2月
月 火 水 木 金 土 日
   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

意外とこのプログラムWindowsなどのカレンダーより表示できる西暦年の範囲が広くていいですよ。(Windowsのカレンダーだと2009年の時点で1980年からしか表示できない)
この解答例では曜日が月曜から始まっています。
よくあるカレンダー表示みたいに日曜日から始まるようにするには、カレンダー表示の先頭部分を以下のようにします。

 // カレンダー表示
 printf(“\n\n\t%d年\n%2d月\n”, year, month);
 printf(” 日 月 火 水 木 金 土\n”);
 for(i=1,cnt=0; i<=(total+1)%7; i++, cnt++) printf(”   “);

こういったプログラムを作る場合は、実際に紙に書いてみるといいと思います。例えば、西暦元年の1月はどうなるとか、2月になったらどうなるとか言ったように書いてみます。
すると、カレンダーのポイントは月ごとの初日に曜日がずれていくことにあると気づきます。
閏年でない場合は1年間で1日曜日がずれます。
西暦元年の1月1日は月曜日ですが、西暦2年の1月1日は火曜日となります。
閏年だと前の年と比べて、2日ずれます。
とにかく、書いてみることです。
私の場合、まずは学生には曜日を考えずにカレンダーっぽく7日ずつ表示が出来るかどうかを最初に考えさせました。
一度にプログラムすると大変ですが、少しずつプログラムして目的に近づいていくことがベストだと思います。
〓武田〓

学院のテニス大会が催されました。
朝方の雨もどこへやら、日中は日差しがあり、夏の暑さでした。
女子高生の格好あり、本気モードの方あり、試合放棄の方あり、景品のビールを飲みたそうな人あり…と様々な人間模様が繰り広げられていました。
試合が終わる頃には、皆一様に疲れ果て、目も遠くをみておりましたが、爽やかな汗でした。
スポーツっていいですね。
テニスと言うと、高貴なイメージがあります。(学院の中でテニスが上手いK君は「テニスの王子様」と呼ばれ親しまれています。)
貧乏でもテニスはできるんでしょうが、何か合わない気がします。
やはりお金持ちのスポーツだと思います。
私も出来ましたら、いつでもテニスが出来るようにテニスコート付きの家に住みたいものです。その横にプールもあれば何も言うことはありません。
テニスで汗をかき、プールでクールダウンといった感じですか。
私は将来お金持ちになりたいと思いますが、お金持ちになることが先か、テニスが上手くなることが先か今悩んでいます。
〓武田〓

本日、大きく改定された2009年春の情報処理技術者試験を受けてきました。
私は旧ソフトウエア開発技術者試験にあたる応用情報技術者試験(通称AP)を受けました。
前回までは、午後試験が午後Ⅰと午後Ⅱに分かれており、それぞれ2時間と1時間の試験でしたが、今回は午後2時間半のみの試験となり、選択問題となりました。
気持ちとしては、早く試験が終わるので良かったですね。
最近は中国の方の姿も見受けられます。(会話をかわしている言葉で気がつきます。)
やるだけのことはやりましたので、結果が楽しみです。
で、試験の最中にふと思ったのですが、最近一人になる時間があまりなく、久々に一人の時間(試験の間だけですが)を持てました。
いつもなら試験の時間は辛い気持ちになるのですが、なぜか今日はすがすがしい気持ちで、「一人もいいもんだ」などと考えていました。
帰り際、昇降口を出たところにある自転車駐輪場の方から、甲高い歌声で

あ~ わたしの恋は~ みなみのぉ~ 風にのってはし~るわ~

と聴こえてきました。
少し音程もはずれぎみで周囲の笑いを誘っていましたが、皆バカにしたような笑いではなく、微笑ましい雰囲気になっていました。
試験も終わり、ほっとしたところでの歌声でしたので、皆きっと私同様「気持ちはわかるよ」と考えていたのかもしれません。
歌は歌いたいときに歌うものですよね。
〓武田〓

人生に卒業はありませんw
先日、ひたちなか情報電子専門学院での第24回卒業式がありました。
私がこの学院に来てからは11回目の卒業式です。
一体何を卒業するのだろうかと毎度の事ながら思います。
形式上は学校を卒業する訳ですが。
私の好きな歌に尾崎豊の「卒業」があります。
世の中に対する「支配」からの卒業を歌っています。
最近好きな歌にガガガSPの「卒業」もあります。
「別れた彼女」からの卒業を歌っています。
内容は違いますが、どちらも「自立」というキーワードが頭に浮かびます。
ご卒業おめでとうございます。

~ s/卒業|自立/感謝/g

…Perl
〓武田〓