高度情報システム科 ブログ

高度情報システム科のブログ一覧 (全197件中 157件目~159件目を表示)

  • 2018.12.01

    先日行われたJavaのプログラミングコンテストでは、高度ITエンジニア科2年の学生が2連覇を達成しました!

    コンテストの様子

    制限時間4時間という限られた時間内でのプログラミングのため、さすがに20問全問正解とはなりませんでしたが、それでも最優秀賞者のソースコードはレベルが違いました。

    そこで彼のソースコードの一部を紹介していきたいと思います。


    問題全体はここでは公開できませんが、例として、ネットワーク関連の問題の要点部分を紹介します。

    文字列 str にIPv4アドレスがサブネットマスクのサフィックス付きで与えられたときに、ネットワークアドレスとブロードキャストアドレスを表示することを考えます。

    たとえば、str に 192.168.61.145/26 が与えられたとき、期待される表示結果は

    192.168.61.128
    192.168.61.191

    となります。


    どのように処理したらいいでしょうか?

    方針は立てられますか?


    まずはコードの冒頭だけ紹介します。

    
    String[] sp = str.split("[\\./]");
    int a = Integer.parseInt(sp[0]);
    int b = Integer.parseInt(sp[1]);
    int c = Integer.parseInt(sp[2]);
    int d = Integer.parseInt(sp[3]);
    int z = Integer.parseInt(sp[4]);
    

    str を分解して数値化しています。当然必要な処理ですね。

    Stringクラスのsplitメソッドは区切り文字を指定して文字列の分割を行い、結果をString型の配列で返します。

    はじめに / で分割し、次に . で分割、と二段階でやりたくなるところですが、split("[\\./]")のように一回でできてしまうんですね。

    細かいところですが、スマートです。

    なおバックスラッシュ(\)が2個並ぶのは、正規表現として . をエスケープするための \ を Java の文字列内で表現するにはさらに \ をつけてエスケープする必要があるからです。


    IPアドレスを8ビット区切りで int 化してa~dに代入したわけですが、普通は(常人は?)配列を用意しループ処理なんかもしたくなるところ。

    でも要素は4つで固定だし、a、b、c、dという変数はかえって分かりやすいのかもしれませんね。

    zという変数も、一番後ろ、という感じが出ています。

    なおJavaでは、変数名は第三者が見てもすぐ分かるようにオブジェクトの意味を直接表す名前にするのが作法です。今回はコンテスト用だと思ってください。


    これで処理の準備は整いました。

    このあとどうするのか?興味のある人は考えてみてください。

    続きは次回までのお楽しみとしたいと思います。

     

  • 2018.11.23

    第2回となるJavaプログラミングコンテスト(2018)を、11/23(金)に実施しました。

    雪が舞う寒い日となりましたが、競技は熱かったです!!

    午前の部、午後の部合わせて4時間、20問の問題を解いていきます。

    リアルタイムで順位が表示されるので、どうしてもテンションが上がります。

    参加したのは学生部門9名、一般部門4名。

    テキストを見たり、ネットで調べたり、何をしてもいいのですがそれでも難しい!

     

    時間ぎりぎりまで粘り、少しでも点数を稼ごうとする人も・・。

    そして結果発表。

    総合優勝は、昨年に引き続き高度ITエンジニア科2年の堤晶吾君。

    またしても断トツでした。

    彼のソースコードを見ましたが、格が違いますねえ。

    学生部門優勝者も、ラストスパートが素晴らしかったです。

    最後に総評と問題の解説です。

    とにかく楽しかった、という声がたくさん聞けました。嬉しいですね。

    このモチベーションを維持していきましょう!

    ひとまず速報でした。

     

     

     

  • 2018.11.16

    本日(11/16)高度ITエンジニア科の学生7名が、にぎわい交流館AUで行われた 「秋田デジタルイノベーション元年」フォーラム に参加してきました。

    秋田県の産業を、第四次産業革命の革新技術であるAIやIoT、ロボット技術等で支えていきます!

    という宣言です。

     

    今日は、ヴイストン株式会社の大和社長をお招きして、熱い講演をしていただきました。

    ヴイストン株式会社は少人数でもロボット開発に精通した会社です!

    去年の学校の創立30周年記念式典でも講演いただきました。

    話の内容はロボットの技術や役割、最近のビジネス状況など多岐にわたりました。

    学生のうち一人は、思わず「面白かったあ」と叫んでいたので、こちらも元気になりました。

     

    デジタルイノベーション元年の宣言では、ロボットSotaも参加。

    ヴイストン株式会社は、Sotaの生みの親です。

    Sotaは本校でもお馴染みですね!

    大勢の人の前でうまく話せるか心配でしたが、完璧でした!

    なぜか見てるこっちが一安心・・・。

     

1 51 52 53 54 55 66
↑