MillenniuM の回答履歴

全139件中21~40件表示
  • Linuxコマンド:ファイルを作成日ごとに分類

    こんにちは Linuxのコマンドでファイルを分類したいのですがやり方がよくわかりません。 記述の仕方を教えてください。特に作成日を取得してそこからフォルダを作るループがわかりません。 folderAに100件ほどファイルがあります。 ファイルの作成日に応じてフォルダに振り分け(移動)したいと思います。 1. ファイルの作成日を調べる 2. その作成日のフォルダがあれば調べる(なければ新規作成する) 例:作成日が「2014年6月27日」の場合は「2014年6月27日」というフォルダに入れる/作って入れる 3. 次のファイルをチェックする、以下ループ ファイルは *.{MOV,AVI} です。 終わった後は folderAの下に「2014年6月27日」や「2014年6月20日」などのフォルダができています。 folderAの直下に*.{MOV,AVI}は存在しなくなります。 1つの日付フォルダに複数のファイルが入ってもかまいません。 日付フォルダは抜けがあってもかまいません(20日と22日があって21日がないなど) よろしくお願いします。

  • 配列要素の演算

    初歩的な質問ですみません。Ruby初心者です。 Rubyの配列を使って以下のようなことをしたいのですが可能でしょうか? a = [2, 4, 6] b = 2 c = a / b # => [1, 2, 3] 配列aの全要素を定数bで割ろうとしています。 NArrayを使えば可能なようですが、 Ruby標準の配列でこのようなことはできますか? 可能でしたらその方法をご教授ください。

    • ベストアンサー
    • yosuzume
    • Ruby
    • 回答数3
  • 構造体自体をポインターに入れたい

    構造体自体をポインターに入れて、ポーンターから位置をずらして表示したいものを表示したいのですが、どのようにすればよろしいでしょうか? 現在下記のように書いていますがコンパイルエラーになります static struct{  char *name; //名前  int num; //数 }eat1[5] = {  { "もも" , 1 },  { "みかん" , 2 }, }; static struct{  char *name; //名前  int num; //数 }eat2[5] = {  { "きゅうり" , 1 },  { "ナス" , 2 }, };  int *p;  int mode = 2;  int i;  switch( mode ){   case 1: p = &eat1;   case 2: p = &eat2;  }  for( i = 0; i < 5; i++; ){   printf( "%d\n" , p[i].num );  } エラー内容 c:\documents and settings\user\my documents\visual studio 2008\projects\kami\bese_item_cd.cpp(303) : error C2440: '=' : '<unnamed-type-eat1> (*)[5]' から 'int *' に変換できません。 指示された型は関連がありません。変換には reinterpret_cast、C スタイル キャストまたは関数スタイルのキャストが必要です。 c:\documents and settings\user\my documents\visual studio 2008\projects\kami\bese_item_cd.cpp(304) : error C2440: '=' : '<unnamed-type-eat2> (*)[5]' から 'int *' に変換できません。 指示された型は関連がありません。変換には reinterpret_cast、C スタイル キャストまたは関数スタイルのキャストが必要です。 c:\documents and settings\user\my documents\visual studio 2008\projects\kami\bese_item_cd.cpp(307) : error C2059: 構文エラー : ';' c:\documents and settings\user\my documents\visual studio 2008\projects\kami\bese_item_cd.cpp(308) : error C2228: '.num' の左側はクラス、構造体、共用体でなければなりません 型は 'int' です。

  • c言語のポインタへの文字列入力についてです。

    当方c言語初学者なのですがscanfを使ってポインタに文字列を入力したいのですがバグが発生して進みません・・・どういうことなのでしょうか? #include <stdio.h> int main(void) { char *a; scanf("%s", a); printf("%s", a); return (0); } *aをa[128]; のように配列に変えるとうまくいくことはなんとかわかるのですが・・・助けてください(^_^;)

  • vimでその場でカーソル位置に改行挿入

    vimの使い方について vimでコマンドモードでカーソルが移動できますが、そのカーソル位置から改行を挿入するためにはどうすればよいでしょうか? たとえば下記の*の位置にコマンドモードでカーソルがあって、そこからキーをおすとそこで改行して、挿入モードにする用法です。普通にやると[i+Enter]ですが、一発で行ける方法ありますか? 前:「あいう*えお」 後:「あいう |えお」

  • 以下のサンプルでのthisが指すものについて・・・

    package ya.Sample; import android.app.*; import android.os.*; import android.widget.*; public class Sample2 extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); LinearLayout ll = new LinearLayout(this); setContentView(ll); TextView tv = new TextView(this); tv.setText("ようこそアンドロイドへ!"); ll.addView(tv); } } このサンプルにおいてLinearLayout ll = new LinearLayout(this)のthisの指すものについて質問があります。私がこのthisはSample2を指すんですよねと質問したところ 引数thisは Sample2 を指しますよね 大雑把な理解だなぁ。 Sample2は「型」なのだから、例えば「整数」や「文字列」のような概念だ。 thisは特定のインスタンスを指すのだから、1024とか"abc"とか、そのクラスに属するもののうち、特定の具象を指すものだ。 27や47が整数である、というのと同じ意味で、thisはSample2ではあるのだが、こういう場合は普通「thisはSample2のインスタンスである」と表現する とある方に回答をいただいたのですが 「thisはSample2のインスタンスである」と表現する の部分のインスタンスが理解できません・・・ インスタンスとはClassから製造されたObjectであるはずですからこの場合 Sample2クラスを雛型として作られたObjectをThisは指すとかってに再解釈してしまい、 この引数Thisはオブジェクトのことでありnew LinearLayout(this)において、LinearLayoutは引数にオブジェクトを持っているということでしょうか?そして継承関係よりこのオブジェクトはContextクラス(?)も含んでいるため、LinearLayoutクラスのLinearLayout(Context context)は呼び出しに成功するということなのでしょうか? 今までJavaの引数で見てきたのが実数や文字だったので、引数がオブジェクト(?)なのにちょっと違和感がありまして・・・ 回答していただけたらうれしいですよろしくお願いいたします!!!

  • bsearch関数の呼び出しで

    C言語の深いところまで理解しようとしてます。今まで使わないだろうと思っていた関数へのポインタ なのですが、 2分探索のところで bsearch関数というのが出てきました。 この関数は第5引数に比較関数を引数にするのですが p = bsearch(&ky, x, nx, sizeof(int), (int (*)(const void *,const void *))int_cmp ); という形でサンプルソースには載っています。 この (int (*)(const void *,const void *))int_cmp の部分なのですが、まず戻り値をキャストするなら int (*)ではなく(int *)ではないでしょうか。 それとint_cmpは比較関数なのですが、引数が左側に来る、というところが納得できません。 ちなみにソースファイルをcppのままだとコンパイルできませんでした.cに拡張子を直したらコンパイルできました。 説明が足りないところがあったら指摘してください。お願いします。

  • bsearch関数の呼び出しで

    C言語の深いところまで理解しようとしてます。今まで使わないだろうと思っていた関数へのポインタ なのですが、 2分探索のところで bsearch関数というのが出てきました。 この関数は第5引数に比較関数を引数にするのですが p = bsearch(&ky, x, nx, sizeof(int), (int (*)(const void *,const void *))int_cmp ); という形でサンプルソースには載っています。 この (int (*)(const void *,const void *))int_cmp の部分なのですが、まず戻り値をキャストするなら int (*)ではなく(int *)ではないでしょうか。 それとint_cmpは比較関数なのですが、引数が左側に来る、というところが納得できません。 ちなみにソースファイルをcppのままだとコンパイルできませんでした.cに拡張子を直したらコンパイルできました。 説明が足りないところがあったら指摘してください。お願いします。

  • 【シェル】ループの中で対話処理をしたい

    unix上でシェルを書いています。 ループ内で対話形式で処理をしたいのですが、入力待ちとならないままループしてしまいます。 ループの中で、キーボードからの入力があるまで処理を待たせることは可能でしょうか。   test.txtの内容*** 花子 太郎 二郎 三郎   *************** このテキストを読み込んで年齢を入力してもらうという処理です。 読んだ後の処理はここでは省略します。 while read line; do    echo $line "この人の年齢を入力して下さい。"    read ymd            if [ "$ymd" = "" ]; then      echo "未入力です!"      exit 0        fi done < test.txt これを実行すると、入力をまたずに未入力、未入力、未入力…と標準出力されます。 1行読んだら、年齢を聞いて、入力があるまでは"read ymd"の処理を行わない、という ようにする方法をどうかご教授願います。

  • 【シェル】ループの中で対話処理をしたい

    unix上でシェルを書いています。 ループ内で対話形式で処理をしたいのですが、入力待ちとならないままループしてしまいます。 ループの中で、キーボードからの入力があるまで処理を待たせることは可能でしょうか。   test.txtの内容*** 花子 太郎 二郎 三郎   *************** このテキストを読み込んで年齢を入力してもらうという処理です。 読んだ後の処理はここでは省略します。 while read line; do    echo $line "この人の年齢を入力して下さい。"    read ymd            if [ "$ymd" = "" ]; then      echo "未入力です!"      exit 0        fi done < test.txt これを実行すると、入力をまたずに未入力、未入力、未入力…と標準出力されます。 1行読んだら、年齢を聞いて、入力があるまでは"read ymd"の処理を行わない、という ようにする方法をどうかご教授願います。

  • Ruby 文法 ブロックの中で自クラスの定数を呼ぶ

    以前した質問(http://okwave.jp/qa/q8484921.html)と非常に似てる質問になります。 以前の質問ではブロックの中で、そのクラスのメソッドを呼ぶ時のことでしたが、今回はメソッドではなく、定数にアクセスする時の質問です。 class Hoge VAL=1 def piyo yield end end h=Hoge.new h.piyo do |this| puts Hoge::VAL #<ーココの話 end 上の様に書く時、ブロックの中で、そのクラスの中の定数を参照するとき、上の例だと Hoge::VAL と書いてますが、Hoge::と書くのがとても嫌なので、以下の様に書いてみました。 class Hoge VAL=1 def piyo yield self end def retVal VAL end end h=Hoge.new h.piyo do |this| puts this.retVal #<-Hoge::VALと書かなくてよくなった。 end が、しかし実はVALなどの定数は多数あり、その数の分だけ値を返すメソッドを書くなんて、もっと嫌です。 なんか良い書き方はあるのでしょうか? 以下、蛇足なのですが、そもそもクラスの中でしかアクセスしないマジックナンバー的な定数の定義の仕方が間違っているのでしょうか? moduleに定義して、クラスの中とブロック使うところでincludeするなどの方がスッキリするのかも。。

    • ベストアンサー
    • nomorevup
    • Ruby
    • 回答数1
  • FortranにあってCにない関数?について

    10年間Fortran90でプログラミングをしてきましたが、 C言語を使う必要があって、プログラムを書き直し中の者です。 入門書を数冊読んでいて疑問に思ったのですが、Fortranには、 A=SUM(B) と書けば、配列Bの全ての総和をAに返す、という関数があるのですが、C言語に同じような関数はないのでしょうか?(標準ライブラリに無いという事はないのでしょうか?) Fortranと比べてCは組み込み関数が少ないという印象を持ったのですが実際そうなのでしょうか? また、Fortanでは配列の和をとる時、 do i=0,n a(i)=b(i)+c(i) end do を一行で、 a(0:n)=b(0:n)+c(0:n) と書いても良いですし、もし定義されている全部の配列の要素が対象なら a=b+c と一行で書いても良いのですが、c言語では似たような書き方はできないのでしょうか? つまり、多次元配列を扱う時、Fortranでは単に「a=b+c」と書けば済むところを、Cでは for (i=0,i<=n,i++){ for (j=0,j<=n,j++){ for (k=0,k<=n,k++){ a[i][j][k]=b[i][j][k]+c[i][j][k]; }}} と書かなくてはいけないのか?と悩んでおります。 私がCの機能を知らないだけなのか、Cとはそうゆうことが出来ないのか、浅学なため判断できません。 ご教授ください、どうぞよろしくお願いいたします。

  • javaの数字当てゲーム

    javaで数字当てゲーム作りたいです。 ここまで出来ています。 しかし、もう一度やりますか?というオプションで、yと入力すればもう一回、 nと入力すれば終わるようにしたいです。 それから、最後に何回ゲームを遊んだか、トータルで数字を何回予想したか、という情報も出力したいです。 できれば、正解するまでに平均で何回かかったかと、一番少なかった数も出力したいです。 よろしくお願いします import java.util.*; public class NumberGuess { public static void main(String args[]) { boolean b = true; int computer = (int) (Math.random() * 100) + 1; int player = 0; int count = 0; System.out.println("1~100の数当てゲーム"); if (computer < 0) { computer *= -1;} while (b) { count++; Scanner keyboard = new Scanner(System.in); System.out.print("1~100の数字を入力してください "); player = keyboard.nextInt(); if (computer > player) { System.out.println("CPUが作成した数字はもっと大きいです"); } else if (computer < player) { System.out.println("CPUが作成した数字はもっと小さいです"); } else if (computer == player) { System.out.println( count + "回目で当てました"); } } } } 直すべきところもあれば教えてください。

  • 短め!!C言語プログラミング作成求む!

    以下の数式をプログラミングする方法を模索し続けております。 C言語で答えを教えてくださる方、先輩方ぜひご教授ください。 プログラミングの文自体は短いものではないかと踏んでいますが 素人のためなかなかうまくいきません。 (平文の文字コード)=MOD(POW(暗号の文字コード,95),323) 上式が暗号文作成のルールになっていて、一文字ごとに変換しようとしたのですが平文の分量が膨大で心が折れかけています。 よろしくお願いいたします。

  • 総称型ArrayList<E>への参照はパラメ-タ

    Java初心者です宜しくお願いします。 0から8までの数字をランダムに並べ替えるサブ関数を作成しました。 Eclipse上で単独のプログラムとして動かした場合には、エラーは出ませんが、他のプログラムの サブ関数として動かそうとすると、 「ArrayListはraw型です。 総称型ArrayList<E>への参照は、パラメ-ター化する必要があります。 Listはraw型です。総称型ArrayList<E>への参照は、パラメ-ター化する必要があります。」と いうエラーが出ます。 どのように修正してやればいいのでしょうか。 ================================================================================ public void ShuffleTest() { List c = new ArrayList() ; for ( int i = 0 ; i < 9 ; ++ i ) { c.add( new Integer( i ) ) ; } Collections.shuffle(c); // [?�?�?�?�] int j = -1 ; for ( int i = 0 ; i < 9 ; ++ i ) { // toString(c.get( i )) ; System.out.print( c.get( i ) + " " ) ; int k = j + 1 ; s_Oder[ k ] = i ; System.out.print( "s_Oder["+ k + "] =" + i ) ; } }

  • 計算の途中経過を表示

    以下のようなプログラムで、素数をカウントダウンする事が出来るのですが、このくらいのサイズだとどうしても次の素数が表示されるまで時間がかかります。 そこで以下のものを修正して、今どの数に取りかかっていて、どの約数(i)で割っているのか常に画面に表示されるようにしたいのです。値が画面で目まぐるしく変わってもかまいません。是非助けてください。 def prime(val) maxv = Math::sqrt(val).truncate (2..maxv).each do |i| return false if val % i == 0 end return true end x = 10**17+1 until x<10**16 until prime(x) x=x-2 end puts x x=x-2 end puts x

  • ソースコードの間違いを教えて下さい

    10日で覚えるjava第三版 84-85Pのソースをコンパイルして実行すると Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0 at lesson09.Lesson09.main(Lesson09.java:6) と出てきてしまいます。 6行目に問題があるようですが、私は初心者のために下記で調べてみても http://www.javaroad.jp/faq/faq_error2.htm#q5 配列の何が問題なのか良く分かりません。 どこをどう直したら動くのでしょうか? また、この本は書いてないことが多いような気がします。 他の本で勉強した方が良いでしょうか? 以下、問題のあったソースコードです public class Lesson09 { public static void main(String[] args) { int x,y; //実行引数の受け取りをint型に変換する x = Integer.parseInt(args[0]); y = Integer.parseInt(args[1]); //Pointオブジェクトの生成する java.awt.Point point = new java.awt.Point(); //座標を設定する point.setLocation(x,y); System.out.println("X, Y座標をフィールドで参照します (int) "); //フィールドで座標を取得する System.out.println("X 座標 : " + point.x); System.out.println("Y 座標 : " + point.y); System.out.println("X, Y座標をgetメソッドで参照します(double)"); //getメソッドで座標を取得する System.out.println("X 座標 : " + point.getX()); System.out.println("Y 座標 : " + point.getY()); } }

  • C言語プログラミングについて質問です

    2つの実数のそれぞれの平方根を計算した後にその差を計算し、それを二乗した結果を表示するプログラミングを作り、そしてその関数reverseがmain関数のなかで正しく昨日するか確かめるプログラミングを作る 上のプログラムを教えてください

  • 正規表現のパターン " [^<]*?>"

    正規表現のパターンの " [^<]*?>" これはどういう意味なのでしょうか?

  • DOS版sedでの行末処理について

    DOS版sedで行末文字を置換したいのですが、うまくいきません。 テキストの行末にある半角「L」を全角「」」に差し替えたく、以下のようにやってみましたが、置換が行われません。 sed -e "s/L\$/」/" 入力ファイル名 >出力ファイル名 sedはVectorからダウンロードした 「sed 1.18+mb1.03 フリーソフト マルチバイト文字対応版 GNU sed (96.06.10公開 59K) 」 を使用。 テキストはWindowsで生成したものです。 OSはWindowsXP SP3。 御教授よろしくお願いします。