シェルスクリプトマガジン

test

香川大学SLPからお届け!(Vol.93掲載)

投稿日:2024.11.25 | カテゴリー: コード

著者:原口 莉奈

 私は最近、RPG(Role-Playing Game)の戦闘シーンをC++言語で作成しました。作成には、無償で利用できるゲーム開発用ライブラリ「DXライブラリ」(https://dxlib.xsrv.jp/)を用いています。今回は、その一部であるコマンド選択画面の実装について紹介します。

シェルスクリプトマガジン Vol.93は以下のリンク先でご購入できます。

図2 ビルド用のバッチファイル「build.bat」に記述する内容

図3 「Main.cpp」ファイルに記述するコード

図5 「Main.cpp」ファイルに記述するコード

図6 「Status.h」ファイルに記述するコード

図7 「Battle.h」ファイルに記述するコード

図9 「Status.h」ファイルにHpDraw()関数の記述を追加

図10 「Battle.h」ファイルのBattleDraw()関数定義部分をこのように書き換える

Markdownを活用する(Vol.93掲載)

投稿日:2024.11.25 | カテゴリー: コード

著者:藤原 由来

本連載では文書の装飾・構造付けを手軽に行える記法であるMarkdownを用いて、さまざまな文書や成果物を作成する方法を紹介します。今回は、プレゼンテーション用のスライドを作成するためのプレゼンテーションアプリ「Marp」について解説します。

シェルスクリプトマガジン Vol.93は以下のリンク先でご購入できます。

図1 Marp用にMarkdownで記述したテキストの例

図8 見出しレベル1をスライドの区切りにしたMarkdown形式のテキスト例

図11 スライドの背景や文字色を変更したMarkdown形式のテキスト例

図13 背景画像表示とぼかしフィルタ適用のMarkdown形式のテキスト例

図15 背景画像の横並びと縦並びのMarkdown形式のテキスト例

図20 ChatGPTが生成したMarkdown形式のテキスト

Pythonあれこれ(Vol.93掲載)

投稿日:2024.11.25 | カテゴリー: コード

著者:飯尾 淳

本連載では「Pythonを昔から使っているものの、それほど使いこなしてはいない」という筆者が、いろいろな日常業務をPythonで処理することで、立派な「蛇使い」に育つことを目指します。その過程を温かく見守ってください。皆さんと共に勉強していきましょう。第23回では、機械学習ライブラリ「scikit-learn」で何ができるのかを紹介した上で、データを二つのクラスに分類するPythonプログラムを作成します。

シェルスクリプトマガジン Vol.93は以下のリンク先でご購入できます。

図9 テストデータを作成するPythonコード

図10 LinearSVCを用いて学習と分類をするPythonコード

図11 分離面を描画するPythonコード

図13 NuSVCを用いて学習と分類をするPythonコード

図15 SVCを用いて学習と分類をするPythonコード(その1)

図17 SVCを用いて学習と分類をするPythonコード(その2)

特集1 Streamlitで作るデータ分析Webアプリ(Vol.93記載)

投稿日:2024.11.25 | カテゴリー: コード

著者:邑川 真也

「Streamlit」は、OSS(オープンソースソフトウエア)のPython向けフレームワーク(ライブラリ)です。データの可視化機能や分析機能、ダッシュボードなどを備えるWebアプリケーションを、Pythonを使って迅速かつ容易に作成できます。本特集では、さまざまなWebアプリケーションを実際に作成しながら、基本的なデータの可視化方法から、ノーコードでデータ分析を実現する方法まで、Streamlitのさまざまな活用方法を紹介します。

シェルスクリプトマガジン Vol.93は以下のリンク先でご購入できます。

図2 HTMLとCSS、JavaScriptを用いて棒グラフを描くコードの例

図3 Streamlitを用いて棒グラフを描くコードの例

図6 シンプルなWebアプリケーションのコード

図9 架空の株価データを生成して表示するコード

図14 「data.csv」ファイルに記述するデータ(抜粋)

図15 ダッシュボードアプリのコード

図17 「config.toml」ファイルに記述するテーマ設定の例

図18 「pygw_test.py」ファイルに記述するコード

レポート1(Vol.93掲載)

投稿日:2024.11.25 | カテゴリー: コード

著者:末安 泰三

クジラ飛行机氏は2024年11月7日、手軽にGUIを作成可能なPythonライブラリ「TkEasyGUI」のバージョン1.0系列をリリースした。バージョン1.0系列では、複数項目を入力できるフォームダイアログが追加されるなどの機能拡充やバグ修正が施されている。

シェルスクリプトマガジン Vol.93は以下のリンク先でご購入できます。

図1 個人情報を入力させるウィンドウを作成するコードの例

図3 フォームダイアログを表示するコードの例

シェルスクリプトマガジンvol.93 Web掲載記事まとめ

投稿日:2024.11.25 | カテゴリー: コード

004 レポート Python用の国産GUIライブラリ公開 コード掲載
005 レポート Open Source Summit + AI_dev開催
製品レビュー 組み込み機器「ラズパイ AI HAT+」
007 NEWS FLASH
008 特集1 Streamlitで作るデータ分析Webアプリ/邑川真也 コード掲載
018 特集2 Oracleデータベース入門/宮本拓弥、百木和美、武井菜々子、北村海人
034 イベントレポート「第35回 プロコン」/塩田哲也
036 Raspberry Pi Pico W/WHで始める電子工作/米田聡
040 Pythonあれこれ/飯尾淳 コード掲載
046 Markdownを活用する/藤原由来 コード掲載
056 中小企業手作りIT化奮戦記/菅雄一
062 香川大学SLPからお届け!/原口莉奈 コード掲載
068 これだけは覚えておきたいLinuxコマンド/大津真
076 Techパズル/gori.sh
077 コラム「仕組みを作るSE」/シェル魔人

Vol.93

投稿日:2024.11.25 | カテゴリー: バックナンバー

 産業界のDX(デジタルトランスフォーメーション)が叫ばれている現在、さまざまなデータの価値に注目が集まっています。それらのデータをグラフなどで可視化できるオープンソースのPythonフレームワーク(ライブラリ)が「Streamlit」です。特集1では、初心者にも分かりやすいように、実際に手を動かすという形で、Streamlitによるグラフ作成方法を紹介しています。
 特集2では、オラクルのクラウドサービス「Oracle Cloud Infrastructure」(OCI)上で動作するデータベース管理システム「Oracleデータベース」を解説しています。OCI上でもOracleデータベースの全機能が利用できます。さらに「Autonomous Database」というサービスを利用すれば、日常的な運用管理を自動化できます。
 このほか、連載「Pythonあれこれ」では、機械学習ライブラリ「scikit-learn」について紹介しています。また、イベントレポートとして「第35回 全国高等専門学校プログラミングコンテスト」も掲載しています。
 今回も読み応え十分のシェルスクリプトマガジン Vol.93。お見逃しなく!

※記事掲載のコードはこちら。記事の補足情報はこちら

※読者アンケートはこちら

Vol.93 補足情報

投稿日:2024.11.20 | カテゴリー: コード

特集1 Streamlitで作るデータ分析Webアプリ

p.13の図15で示したコードで使用するデータファイル「data.csv」をここからダウンロードできます。

連載 香川大学SLPからお届け!

記事で紹介したコードを拡張して、コンピュータとの簡単な対戦ができるゲームを作成しました。ソースコードをまとめたアーカイブファイルはここからダウンロードできます。

情報は随時更新致します。

香川大学SLPからお届け!(Vol.92掲載)

投稿日:2024.09.25 | カテゴリー: コード

著者:池内稜來斗

各都道府県の都道府県庁所在地を尋ねるクイズを出題するWebサイトをPHPで作成しました。今回は、そのWebサイトの概要や作成手順などを紹介します。PHPの実行環境や、各種サーバーソフトウエアは、「XAMPP」(https://www.apachefriends.org/)を使ってインストールします。

シェルスクリプトマガジン Vol.92は以下のリンク先でご購入できます。

図2 「db.sql」ファイルに記述するSQL文

図3 「index.html」ファイルに記述するコード

図4 「question.php」ファイルに記述するコード

図5 「answer.php」ファイルに記述するコード

図6 「result.php」ファイルに記述するコード

Markdownを活用する(Vol.92掲載)

投稿日:2024.09.25 | カテゴリー: コード

著者:藤原 由来

本連載では文書の装飾・構造付けを手軽に行える記法であるMarkdownを用いて、さまざまな文書や成果物を作成する方法を紹介します。今回は前回に引き続き、Markdownを用いて書籍を制作できる組版アプリ「Vivliostyle」について解説します。特に、技術同人誌の制作方法と、印刷所へ入稿する際の注意
点について説明します。 

シェルスクリプトマガジン Vol.92は以下のリンク先でご購入できます。

図7 書き換えたVivliostyleの設定ファイル

図8 扉のindex.mdファイル

図9 奥付のcolophon.mdファイル

図11 my-theme.cssファイル内のCSSを反映する設定

図12 扉と奥付用のCSS

図13 扉のindex.mdファイルの変更

図14 奥付のcolophon.mdファイルの変更

図17 目次を自動設定する設定

Pythonあれこれ(Vol.92掲載)

投稿日:2024.09.25 | カテゴリー: コード

著者:飯尾 淳

本連載では「Pythonを昔から使っているものの、それほど使いこなしてはいない」という筆者が、いろいろな日常業務をPythonで処理することで、立派な「蛇使い」に育つことを目指します。その過程を温かく見守ってください。皆さんと共に勉強していきましょう。第22回では、機械学習ライブラリ「PyTorch」を使って、画像内の、歩行者が写っている領域を自動認識するPythonプログラムを作成します。

シェルスクリプトマガジン Vol.92は以下のリンク先でご購入できます。

図3 47番のデータを確認するPythonコード

図5 PennFudanDataSetクラスを定義するPythonコード

図6 get_model_instance_segmentation()関数を定義するPythonコード

図7 get_transform()関数を定義するPythonコード

図8 追加学習の準備をするためのPythonコード

図9 物体認識と領域セグメンテーションを実施するPythonコード

図11 Penn-Fudanデータセットを用いて追加学習するPythonコード

特別企画 イノシシ撃退機を作る ソフト作成編(Vol.92記載)

投稿日:2024.09.25 | カテゴリー: コード

著者:米田 聡

「Interface」「CQ ham radio」「トランジスタ技術」などの雑誌を出版するCQ出版社の電子部品セット「イノシシ撃退機部品セットVer.1」を組み立て、ソフトウエアに一工夫を加えてイノシシ撃退機を作ります。今回は完成したハードウエア向けにソフトウエアを作成します。

シェルスクリプトマガジン Vol.92は以下のリンク先でご購入できます。

図18 PWM機能の初期化

図20 割り込みハンドラ

図21 ダブルバッファを使用する修正

シェルスクリプトマガジンvol.92 Web掲載記事まとめ

投稿日:2024.09.25 | カテゴリー: コード

004 レポート 仮想化ソフト「VirtualBox」の新版リリース
005 レポート マイコンボード「Raspberry Pi Pico 2」登場
006 製品レビュー 組み込み機器「CH32V003ボード」
007 NEWS FLASH
008 特集1 古いRaspberry Piを復活させる/麻生二郎
016 特集2 統合運用管理ソフトウエア Hinemos入門/倉田晃次、加藤達也
026 特別企画 イノシシ撃退機を作る ソフト作成編/米田聡 コード掲載
036 特別企画 Rocky Linux 9のインストール/麻生二郎
042 Pythonあれこれ/飯尾淳 コード掲載
048 Markdownを活用する/藤原由来 コード掲載
058 中小企業手作りIT化奮戦記/菅雄一
062 香川大学SLPからお届け!/池内稜來斗 コード掲載
068 これだけは覚えておきたいLinuxコマンド/大津真
078 Techパズル/gori.sh
079 コラム「SEの働き方の新しい仕組みを作る」/シェル魔人 

Vol.92

投稿日:2024.09.25 | カテゴリー: バックナンバー

 小型コンピュータボード「Raspberry Pi」が登場して約12年が過ぎました。現在では、AI(人工知能)処理ができ、パソコン並みの性能を持つものに進化しています。ただ、センサーなどの制御、液晶や有機ELなどのパネルへの出力といった分野では、初期のRaspberry Piでも十分活躍できます。特集1では、初期のRaspberry Piを復活する方法を紹介しています。具体的には、無線通信機能を付加して使い勝手を向上します。
 特集2では、NTTデータ最先端技術が開発する統合運用管理ソフトウエア「Hinemos」を解説しています。同ソフトウエアは、オープンソースであり、誰でも無料で利用できます。サーバーやネットワークなどのシステムの監視やジョブ管理、運用の自動化を実現します。
い。
 特別企画では、前号に引き続きイノシシ撃退機、加えてCentOS Linuxの代替となるLinuxディストリビューション「Rocky Linux」を扱っています。
 このほか、連載「Pythonあれこれ」では機械学習ライブラリ「PyTorch」でAIによる歩行者認識の実現方法を紹介しています。
 今回も読み応え十分のシェルスクリプトマガジン Vol.92。お見逃しなく!

※記事掲載のコードはこちら。記事の補足情報はこちら

※読者アンケートはこちら

Vol.92 補足情報

投稿日:2024.09.19 | カテゴリー: コード

連載 香川大学SLPからお届け!

記事中で作成したクイズWebサイト用のコードや、データベースへのデータ入力用のファイルをまとめたアーカイブファイルがここからダウンロードできます。

情報は随時更新致します。

これだけは覚えておきたいLinuxコマンド(Vol.91掲載)

投稿日:2024.07.25 | カテゴリー: コード

著者:大津 真

本連載では、Linuxの初心者に覚えておいてほしいコマンドを紹介していきます。ここで紹介するコマンドさえ押さえておけば、基本的な操作に困ることはなくなるでしょう。第2回では、主にテキストファイルを処理するための基本コマンドについて解説します。

シェルスクリプトマガジン Vol.91は以下のリンク先でご購入できます。

図6 「members.csv」ファイルの内容

中小企業手作りIT化奮戦記(Vol.91掲載)

投稿日:2024.07.25 | カテゴリー: コード

著者:佐藤 楓真

今回は、「焼きなまし法」と呼ばれる手法で、すべての都市を1回訪問して出発地点に帰るまでの最短経路を求める「巡回セールスマン問題」を近似的に解いてみます。焼きなまし法のベースとなる「山登り法」についても解説します。使用するプログラミング言語は、C++です。

シェルスクリプトマガジン Vol.91は以下のリンク先でご購入できます。

図3 図1の巡回セールスマン問題を山登り法で解くC++プログラムの例

図4 都市数「5000」のテスト用データを作成するC++プログラム

図5 テスト用データに基づく巡回セールスマン問題を山登り法で解くC++プログラムの例

図7 テスト用データに基づく巡回セールスマン問題を焼きなまし法で解くC++プログラムの例

Markdownを活用する(Vol.91掲載)

投稿日:2024.07.25 | カテゴリー: コード

著者:藤原 由来

本連載では文書の装飾・構造付けを手軽に行える記法であるMarkdownを用いて、さまざまな文書や成果物を作成する方法を紹介します。今回は、Markdownを用いて書籍を制作できる組版アプリ「Vivliostyle」の導入と、書籍作成の基本について説明します。

シェルスクリプトマガジン Vol.91は以下のリンク先でご購入できます。

図11 chap1.mdファイルの内容

図12 chap2.mdファイルの内容

Pythonあれこれ(Vol.91掲載)

投稿日:2024.07.25 | カテゴリー: コード

著者:飯尾 淳

本連載では「Pythonを昔から使っているものの、それほど使いこなしてはいない」という筆者が、いろいろな日常業務をPythonで処理することで、立派な「蛇使い」に育つことを目指します。その過程を温かく見守ってください。皆さんと共に勉強していきましょう。第21回では、「ハノイの塔」の解法「GDHP(Gniibe Distributed Hanoi Protocol)」の手順をアニメーションで表示するPythonアプリを作成します。

シェルスクリプトマガジン Vol.91は以下のリンク先でご購入できます。

図2 GDHPの手順をアニメーションで表示するJavaScriptコード

図3 Pygameを用いて描画ウィンドウを表示するPythonコード

図5 GDHPの手順をアニメーションで表示するPythonコード

特集2 ChatGPTで手軽に実現(Vol.91記載)

投稿日:2024.07.25 | カテゴリー: コード

著者:佐藤 秀輔

対話型AIサービス「ChatGPT」が注目を集めています。特に、2023年3月に登場した「GPT-4」という大規模言語モデル(LLM)を利用可能になってからは自然言語の理解力が飛躍的に向上し、指示に基づいて、さまざまな処理を自動化できるようになっています。本特集では、ChatGPTを個人で活用する例として、家計簿レビューをさせる方法と、API(Application Programming Interface)を利用してWebスクレイピングをさせる方法を紹介します。

シェルスクリプトマガジン Vol.91は以下のリンク先でご購入できます。

図1 ランダムな家計簿データを生成するPythonスクリプト

図10 Webスクレイピング対象となるWebページの例

図11 Webスクレイピング用のPythonスクリプトの例

シェルスクリプトマガジンvol.91 Web掲載記事まとめ

投稿日:2024.07.25 | カテゴリー: コード

004 レポート 統合開発環境「Theia IDE」正式版リリース
005 レポート サイバーエージェントがVLM、新LLM公開
006 製品レビュー パソコン「ASUS Vivobook S 15 S5507QA」
007 NEWS FLASH
008 特集1 Oracle Cloud Infrastructure入門/福島耕平、中村峻大
020 特集2 ChatGPTで手軽に実現/佐藤秀輔 コード掲載
028 特別企画 イノシシ撃退機を作る ハード製作編/米田聡
036 Pythonあれこれ/飯尾淳 コード掲載
042 Markdownを活用する/藤原由来 コード掲載
052 香川大学SLPからお届け!/佐藤楓真 コード掲載
058 中小企業手作りIT化奮戦記/菅雄一
064 これだけは覚えておきたいLinuxコマンド/大津真 コード掲載
073 ユニケージレポート/田中湧也
076 Techパズル/gori.sh
077 コラム「要求工学を取り入れる」/シェル魔人

Vol.91

投稿日:2024.07.25 | カテゴリー: バックナンバー

 オラクルといえば、基幹システムでも利用されるリレーショナルデータベース管理システム(RDBMS)製品を開発・販売する企業というイメージがあります。しかし、それだけではありません。「AWS」(Amazon Web Services)や「Microsoft Azure」、「GCP」(Google Cloud Platform)と同等のクラウドサービスとして「Oracle Cloud Infrastructure」(OCI)を提供しています。
 特集1では、このOCIの特徴を分かりやすく解説しています。また、30日間無料で試せる「OCI Cloud Free Tier」を利用してIaaS(Infrastructure as a Service)によるコンピュートインスタンスの立ち上げ方法も紹介しています。実際に触ってみて、データベースだけでないOCIの魅力を感じてください。
 特集2では、生成AIチャット「ChatGPT」の実用例として、支出を分析する「家計簿レビュー」と、Webページから必要な情報を抽出する「Webスクレイピング」の二つを紹介しています。前者は対話形式で分析、後者はAPI(Application Programming Interface)を用いて情報を抽出しています。話題のChatGPTの能力を体験してみてください。
 特別企画では、「Interface」「CQ ham radio」「トランジスタ技術」などの雑誌を出版するCQ出版社の協力を得て、同社が販売する「イノシシ撃退機部品セットVer.1」の組み立て方を紹介しています。農業分野でもITを活用することで、さまざまなメリットが生まれます。このイノシシ撃退機は、イノシシの鳴き声を使うため、安全にイノシシを追い払えます。
 このほか、ユニケージレポートでは、長崎県で2024年6月12~14日に開催された「ソフトウェア・シンポジウム2024」でのユニケージ技術発表と、シェルやシェルスクリプトに関するワークショップを紹介しました。
 今回も読み応え十分のシェルスクリプトマガジン Vol.91。お見逃しなく!

※記事掲載のコードはこちら。記事の補足情報はこちら

※読者アンケートはこちら

Vol.91 補足情報

投稿日:2024.07.19 | カテゴリー: コード

特集2 ChatGPTで手軽に実現

 クラウド型家計簿アプリ「Dr.Wallet」のサンプルデータがここからダウンロードできます。家計簿を付けていない人は、こちらを利用してください。なお、本サンプルデータ中のショップ名、電話番号、住所の情報はすべて架空のものです。実在の企業や事業者とは関係ありません。

情報は随時更新致します。

Pythonあれこれ

投稿日:2024.05.25 | カテゴリー: コード

筆者:飯尾 淳

本連載では「Pythonを昔から使っているものの、それほど使いこなしてはいない」という筆者が、いろいろな日常業務をPythonで処理することで、立派な「蛇使い」に育つことを目指します。その過程を温かく見守ってください。皆さんと共に勉強していきましょう。第20回では、データの可視化などにも活用できるWebアプリケーションフレームワーク「Streamlit」の、より進んだ使い方を紹介します。

シェルスクリプトマガジン Vol.90は以下のリンク先でご購入できます。

図4 プルダウンメニューでサブページに移動できるようにしたコード

図8 「1_edit.py」ファイルに記述するコード

図11 「2_new.py」ファイルに記述するコード

図11 「2_new.py」ファイルに記述するコード

香川大学SLPからお届け!(Vol.90掲載)

投稿日:2024.05.25 | カテゴリー: コード