Hatena::Groupgeneration1986

ギーク目指してみる?

2008-11-15

なぜか後輩の課題やってる・・・

| 21:22 | なぜか後輩の課題やってる・・・ - ギーク目指してみる? を含むブックマーク

まぁ教えてと言われたからなんだけど。

やってる途中でこんなエラーが出たわけです。

rep22.rb:1: Invalid char `\357' in expression

rep22.rb:1: Invalid char `\273' in expression

rep22.rb:1: Invalid char `\277' in expression

原因はエンコード方式、らしい。


参照 : http://rubyurl.com/Zut4

ukstudioukstudio2008/11/16 06:26参照に書いてあることそのまんまですけど、エディタでUTF-8とUTF-8Nを変換してやれば多分大丈夫です。
この辺ややこしいですよねー。

saitoK-yasaitoK-ya2008/11/16 12:33ややこしかったです;
エディタが、rubyインストールしたときについてくるやつそのまま使ってたらUTF-8Nに変換できなくて、結局普通のテキストエディタでやりましたし;
でも読み込みファイルがSHIFT_JISで書かれてたんで、最終的にはSJISで保存しましたw

ukstudioukstudio2008/11/17 12:31SJISww

蛇足ですが、もし読み込みファイルをUTF-8で扱いたいとかだったら読み込んだ文字列を

require 'kconv'
utf8_str = sjis_str.kconv(Kconv::UTF8, Kconv::SJIS)
で出来ますよ。

saitoK-yasaitoK-ya2008/11/17 12:45おお、そうなんですね!
今度別の組んで試してみます~←
ありがとうございます><

RemziRemzi2013/09/25 10:45Clear, iniomratfve, simple. Could I send you some e-hugs?

VanajaraooVanajaraoo2013/10/18 02:28This site is like a <a href="http://ocjode.com">clrosaosm,</a> except I don't hate it. lol

AsnisaAsnisa2013/10/20 14:53Furrealz? That's maosrleuvly good to know. http://jpphafj.com [url=http://hokbxd.com]hokbxd[/url] [link=http://vmujrjmgb.com]vmujrjmgb[/link]

2008-11-06

初めてのPerl 2章 スカラーデータ 練習問題 (08/09/01)

| 12:59 | 初めてのPerl 2章 スカラーデータ 練習問題 (08/09/01) - ギーク目指してみる? を含むブックマーク

プログラム一行目の「#!perl」は省略してあります。


1. 半径12.5の円の円周の長さを求めるプログラム

$pi = 3.141592654;

$circle = 12.5 * 2 * $pi;

print "半径12.5の円の円周の長さは $circle です。\n";

実行例

半径12.5の円の円周の長さは 78.53981635 です。


2. ユーザが入力した値を半径として円周の長さを求めるプログラム

print "半径を入力してください。\n";

chomp($half = <>);

$pi = 3.141592654;

$circle = $half * 2 * $pi;

print "半径 $half の円の円周の長さは $circle です。\n";

実行例

半径を入力してください。

34

半径 34 の円の円周の長さは 213.628300472 です。


3. ユーザが0より小さい値を入力したら、半径を0として円周の長さを求めるプログラム

print "半径を入力してください。\n";

chomp($half = <>);

if ($half < 0){

$half = 0;

}

$pi = 3.141592654;

$circle = $half * 2 * $pi;

print "半径 $half の円の円周の長さは $circle です。";

実行例 1

半径を入力してください。

  • 5

半径 0 の円の円周の長さは 0 です。

実行例 2

半径を入力してください。

6

半径 6 の円の円周の長さは 37.699111848 です。

※ifのところは、$circle = 0 とするのも可、らしい。


4. 読み込んだ2数の積を求めるプログラム

print "数を入力してください。\n";

chomp($num1 = <>);

print "もうひとつ数を入力してください。\n";

chomp($num2 = <>);

$result = $num1 * $num2;

print "$num1 と $num2 の積は $result です。";

実行例

数を入力してください。

2

もうひとつ数を入力してください。

5

2 と 5 の積は 10 です。


5. 読み込んだ文字列を、入力された回数分だけ繰り返し、一行につき一つずつ表示するプログラム

print "文字列を入力してください。\n";

$str = ;

print "その文字列を表示させたい回数を入力してください。\n";

chomp($num = <>);

$lines = $str x $num;

print "実行結果:\n$lines";

実行例

文字列を入力してください。

赤橙の花

その文字列を表示させたい回数を入力してください。

3

実行結果:

赤橙の花

赤橙の花

赤橙の花

初めてのPerl 2章 スカラーデータ 2.4 ~ 2.5.5 (08/08/14)

| 12:56 | 初めてのPerl 2章 スカラーデータ 2.4 ~ 2.5.5 (08/08/14) - ギーク目指してみる? を含むブックマーク

今回は要約というか自分のためのメモのみ。

2.4

警告を有効にするには、

1. 実行するときにコマンドラインから -w オプションを指定する

2. #! 行に -w オプションを指定する

2通りの方法がある、らしい。が、バージョン違う Perl で実行したときに、元々警告表示されてないプログラムで警告表示されたりとか、その逆もありうるとか。


2.5

$ のあとに Perl 識別子(英文字か下線で始まって、必要ならさらにその後ろに英文字・数字・下線を続けたもの。大文字と小文字は別物扱い)がついてるやつは、スカラー変数。

ちなみに、シェルでは、値を取り出すときには $ をつけるけど、新しい値を代入するときは要らない。awk や C では $ をまったくつけない。

これは PHP とかにも言えることだけど、変数名は用途がわかるようなものにすること。あと、せっかく下線が使えるんだから、変数名は読みやすく、理解しやすくすること。

先頭が大文字なのは特別なケース。大文字のみの名前だったら、その変数は特別なもの。


Perl も代入は = で表す。

ex.) $fred = 17;


代入の両側に同じ変数が現れるような式が出てきたら、二項代入演算子を使う。

ex.) $fred += 5; は $fred = $fred + 5; と等価だし、 $barney *= 3; と $barney = $barney * 3; も等価。文字列だったら、 $str = $str . " "; と $str .= " "; は等価


print()演算子は、 Ruby のときと違って () が不要な代わりに、行末に ; をつける。$ とかの特別な意味を打ち消すときは、これもやっぱり \ を記号の前につける。

文字列の中でスカラー変数を展開するときは、スカラー変数を生のまま書き入れるもよし、 . で繋げるもよし。もし、展開しようとしてるスカラー変数に値が代入されてなければ変わりに空文字列が使われる。変数名を区切るときは、そこで一旦文字列を切ってしまうか、変数名だけを {} で囲むとか。

ex.) print "fred ate $n ${what}s.\n";

初めてのPerl 2章 スカラーデータ 2.1 ~ 2.3 (08/07/29)

| 12:53 | 初めてのPerl 2章 スカラーデータ 2.1 ~ 2.3 (08/07/29) - ギーク目指してみる? を含むブックマーク

授業で Ruby 扱ってたおかげか、演算子の話とか割とするする入ってくる。読めば読むほど RubyPerl から生まれたんだなぁ、と思う。


ぁ、でも文字列を . で繋ぐのはちょっと吃驚かも。ぇ、そんだけでいいの!? って感じがちょっとする。

あと、 x で文字列繰り返せるのも面白いなぁ。「"hollow ataraxia" x 3」だったら「"hollow ataraxiahollow ataraxiahollow ataraxia"」になるってことか。可換ではないってのは注意しなきゃかも。


2.3.4 が面白かったなぁ。

"12" * "3" と "12fred34" * " 3" が等価だってこととか、 "Z" . 5 * 7 は "Z35" になるとか。これは Ruby にはなかったかも。

初めてのPerl 1章 Perl 入門 (08/07/28)

| 12:53 | 初めてのPerl 1章 Perl 入門 (08/07/28) - ギーク目指してみる? を含むブックマーク

17p より。

Unix 以外のシステムでは、1行目に #!perl と書くのが慣例になっています。

ぇー、そうなんだー、という感じ。そうか、 Windows でやるときには #!/usr/bin/perl でなくていいのか。ある意味ショック。でも長いほうの書き方でも実行されるっぽいし、そっちでやっとこうかなぁ。システムによって書き方変えるのはなんだかなぁ。


これは 19p より。

しかし、ウェブ上で実行するプログラム――1分間に数百~数千回実行されるもの――は、この例外となることがあります。(中略)jこれらのプログラムの多くは実行時間が非常に短いので、コンパイルにかかる時間が無視できなくなります。あなたのケースがこれに該当するなら、プログラムを起動してから次に起動するまでの間、メモリに常駐させるというテクニックを利用することができます。お使いのウェブサーバのドキュメントを調べるか、身近にいるエキスパートに質問してみましょう。

1つの可能性として http://perl.apache.org が紹介されてたりする。PHP のでなんとなく Apache 苦手なんだよなぁ・・・。


練習問題(解答のみ)

1

Hello, world!


2

=over 8

=item atan2 Y,X

X<

Returns the arctangent of Y/X in the range -PI to PI.

For the tangent operation, you may use the C<Math::Trig::tan>

function, or use the familiar relation:

sub tan { sin($_[0]) / cos($_[0]) }

Note that atan2(0, 0) is not well-defined.

=back


3

=over 8

=item atan2 Y,X

Atan2 Arctangent Tan Tangent

Returns the arctangent of Y/X in the range -PI to PI.

For the tangent operation, you may use the Math::Trig::tan

function, or use the familiar relation:

sub tan { sin($_[0]) / cos($_[0]) }

Note that atan2(0, 0) is not well-defined.

=back


あそんでみた (08/03/04)

| 12:43 | あそんでみた (08/03/04) - ギーク目指してみる? を含むブックマーク

独習PHP 48 ページのスクリプトを書き換えてみた。

<form action="get_test.php">

Name :

<input type="text" name="name" size="15" />

<?php urlencode(name); ?>

<br />

Sex :

<input type="text" name="sex" size="15" />

<?php urlencode(sex); ?>

<br />

で、ここに出てくる get_test.php はこんな感じ

Name : <?php print(urldecode($_GET['name'])); ?<>br />

Sex : <?php print(urldecode($_GET['sex'])); ?><br />

こうやって遊べるのかー。なかなか楽しいなぁ。

こないだのエラー (08/03/02)

| 12:41 | こないだのエラー (08/03/02) - ギーク目指してみる? を含むブックマーク

エラーっていうかバグ?

あれ、どうも text.value には変数は1つしか代入できなくて、 each ブロックを使って書き足そうとすると上書きされちゃうってのが原因だったみたい。

気づいてみればなんてことないことでしたー、という話。

課題2 (08/02/18)

| 12:40 | 課題2 (08/02/18) - ギーク目指してみる? を含むブックマーク

動いてるっぽいけどなんかおかしい。

最初は

text.value = メソッド

で、メソッドの中に print 入れてあったんだけど、それだとコマンドプロンプトにも出力されて変になるっていうことで

配列 = メソッド

配列.each{ |要素|

text.value = 要素

}

に書き換えてみたら、今度は検索結果が複数件あるはずの条件入力しても 1 件しか出なくなった。しかも前のだったら繰り返し検索かけるのも可能だったのが、それもできなくなってる。なんでだー!

おかしい。気になる。ゆっくり直したい。しかしバイトorz

今日の遣り残し (08/02/14)

| 12:38 | 今日の遣り残し (08/02/14) - ギーク目指してみる? を含むブックマーク

・演習8-12

・おまけ×2

インストール&Apacheとの連携完了 (08/02/08)

| 12:38 | インストール&Apacheとの連携完了 (08/02/08) - ギーク目指してみる? を含むブックマーク

なぜか日本語を入力したときにうまく反映されなかったので、いろんなサイトや本をみて、httpd.confにいくつか追加してみた。

LoadModule php5_module c:/php/php5apache2_2.dll

PHPIniDir "C:/php"

DirectoryIndex index.html index.php

AddType application/x-httpd-php .php


参考にしてるのは、独習PHPなんだけど、これだと

AddDefaultCharset none

という行を追加することになってて、で、実際追加してみたら日本語が反映されなかった。おかしいなぁ。日本語を扱う場合に重要とか書いてあったよ?



独習PHP

独習PHP

昨日の授業中にやれなかったこと (08/02/08)

| 12:34 | 昨日の授業中にやれなかったこと (08/02/08) - ギーク目指してみる? を含むブックマーク

1. 青空文庫データの目録もどきでタイトルと著者名で条件に合うものだけを表示(一部の例外への対応)

2. 何行にも渡るテキストを表示・編集するウィンドウ(ファイル読み出しをしようとするとウィンドウがフリーズ)

3. ウィンドウで条件入力→結果表示など、GUIと検索の組み合わせ

1/31の授業ついでにつけてた記録 (08/02/08)

| 12:31 |  1/31の授業ついでにつけてた記録 (08/02/08) - ギーク目指してみる? を含むブックマーク

今日の演習課題 (おまけ)

コマンドプロンプトのスクロール防止方法はどうすればいいか


とりあえずプログラム書く段階で表示する文字数が少なくなるようにしてみた。

でもコマンドプロンプトにコマンド入力してどうにかできないかな、と思って検索かけたらこんなサイト見つけた。

そしてめっけた。

ページ単位で画面表示 ~ MOREコマンドのパイプ機能

たとえばC:¥Documents and Settings¥ユーザ名>dir c:¥windowsを実行した場合,膨大なファイル量のためにコマンドプロンプトの画面が猛スピードで走り出してしまいます。

こんなときに,コマンドの実行結果をページ単位で表示する「パイプ機能」をご紹介します。

実行結果をページ単位で表示するには,次のように通常のコマンドラインの後ろに [半角スペース][ | ][半角スペース][more]と打ち込みます。

C:¥Documents and Settings¥ユーザ名>dir c:¥windows | more

こうしてコマンドを実行すると,ページの終わりで画面が停止し,[ -- More -- ]が表示されます。


素敵な機能だ!

hogeloghogelog2008/11/06 19:31chomp($half = );
などと表示されてる部分は
chomp($half = <>);
ですよね。<>がタグと認識されてしまい、削除されています。

はてなダイアリーでソースコード貼るときはpreタグかはてな記法のpre記法など使わないとこのように表示が変になると思います。
http://generation1986.g.hatena.ne.jp/hogelog/20081106

hogeloghogelog2008/11/06 19:37あと
<、>、&などの文字は
&lt;、&gt;、&amp;
と実体参照に置き換えて書くという方法がありますね。めんどうなのであんまりしませんけど。

saitoK-yasaitoK-ya2008/11/16 12:35ぁ、ありがとうございます!
他のとこちゃんと書き換えてたのに見落としてました;

StephaneStephane2013/01/16 08:50A silmpe and intelligent point, well made. Thanks!

txvbpxtydxtxvbpxtydx2013/01/18 10:25NOVgbf , [url=http://jpensbhwhyyf.com/]jpensbhwhyyf[/url], [link=http://wjmwnjvhpozi.com/]wjmwnjvhpozi[/link], http://xhndyjmzxsae.com/

2008-09-23

自己紹介的な何か

| 12:15 | 自己紹介的な何か - ギーク目指してみる? を含むブックマーク

88年末に生まれたちっこめの腐ってるおなごです。


最近は ritsuca (りっか)を名乗ることも増えてきました。

saitoK-ya (西東空哉) でもどっちでも適当にお呼びください←


本・音楽が好き。ゲームは、音楽つながりでやるのはジャンル無節操だけど、音楽関係なくやるのはパズルゲームくらい。


はてなid:saitoK-ya

twitter : @ritsuca

skype : k-ya.saito


※未成年だけどパソコン使用歴約10年でワードプロセッサもWindows95もいじったことある、と言ったらそれは腐女子ではなくオタクだと言われたので、とりあえずここのタイトル変えてみました。ほんとに目指すかは謎← (11/6)

忍blogでやってたやつをとりあえず移してきてます。で、続きはもうこっちで更新してくつもりです。 (11/6)