春めいてきました。
武田です。
3月24日(土)に平成24年度ひたちなか情報電子専門学院の保護者と新入生を招いて、説明会が開催されました。
保護者の皆様にはお忙しいところ、またあいにくの雨の中、ご来院いただきましてありがとうございました。
少し緊張ぎみの新入生のみなさんでしたが、最後のM先生のお話では緊張もほぐれて元気な笑い声も聞こえました。
実は、当学院の先生方も当日の朝からそわそわしていました。みんな初めは一緒です。
当学院は、誤解を恐れずに言うと「へんな学校」です。
言い方を変えると「ユニークな教育」を実践する学校となります。

続きを読む

明日、3月2日は、ひたちなか情報電子専門学院第27回卒業式です。
皆さんは、この学院27回目の卒業生です。
27年前といえば1985年です。
まだ、みなさんも生まれていなかった時代です。
任天堂のファミコンがヒットした時代です。
今はファミコンでヒットしたゲームが携帯電話などに移植されて遊ぶことができます。
古くて良いものが新しい機械や媒体で使えるようになることが最近は多いですが、中身自体はかわっていないとも言えます。
ゲームにしろ本にしろ考え方にしろ、古いもののほうが優れているということは多々あります。
もちろん新しいものを選択することもできます。
日本は世界でもまれにみる「生き方を選択できる自由」があります。
生まれたときから、身分や職業が決まってしまう人も世界を見渡せば多いのです。
生き方を選択できる自由があるということは、素晴らしいことなのです。
「社会にでる」ということは、自分の生き方に責任を持つことでもあると思います。
みなさんには、自由を持っているかわりに、責任もあると思います。
持っている責任はひとりひとり違います。
ひとりひとりが、自分で考えていくことだと思います。
さいごに、緒方洪庵の言葉を送ります。

私利私欲に走りがちであるが、世のため人のために尽くすほうがその人の能力を発揮できるものである。
本来「やる気」とはそういうものだ。

ご卒業おめでとうございます。
〓武田〓

各位
明けまして、おめでとうございます。
お元気ですか?
今年は初めて舞台をワークプラザ勝田の大ホールに移し、卒業研究発表会を実施致します。
卒業生を問わず、ひたちなか情報電子専門学院生がどんなものをパソコンで作っているのか興味のある方はぜひお越しください。
出入りは自由です。
卒業研究発表会
1月29日(日)


時間は9:50~15:30まで自由に出入り可能です。
駐車場有。客席内での食事も可能です。
施設内にはレストランもあります。近くにはミニストップ有。
詳細はコチラ
今年は、スマホ向けのアプリやゲーム、動画と作品も時代に合わせ変わってきています。
ご都合がつきましたらぜひ気軽に見学に来てください。お待ちしています。
当日は勝田マラソンの日と重なってしまいまして、車でお越しの場合は国道6号から下田彦南交差点を入り、大島陸橋を通る道がベストかと思います。勝田マラソン出走されるかたはその足で立ち寄ってもらっても構いません。(笑)私武田は残念ながら今年は勝田マラソンに出ることが出来ません。
それでは、皆様にとって今年が良い年でありますように。
〓武田〓

今年も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日ずつ表示が出来るかどうかを最初に考えさせました。
一度にプログラムすると大変ですが、少しずつプログラムして目的に近づいていくことがベストだと思います。
〓武田〓