【問題と解答】第24回◯◯o◯裏番組シェル芸勉強会

Sat Aug 27 17:29:16 JST 2016 (modified: Sun Oct 1 10:50:27 JST 2017)
views: 1042, keywords: コマンド,勉強会,シェル芸,シェル芸勉強会

  このエントリーをはてなブックマークに追加 

問題のみのページはこちら

イントロ

問題で使うファイル等

GitHubにあります。ファイルは

https://github.com/ryuichiueda/ShellGeiData/tree/master/vol.24

にあります。

クローンは以下のようにお願いします。

環境

今回はUbuntu Linux 16.04で解答例を作りました。

Q1

上のようなQ1ファイルについて、次のような出力を得てください。

解答

AWKの力技になります。力技でない方法を募集。

Q2

次のようなテキストについて、繰り返し出てきた文字の2つ目以降を省いて出力してください。例えばQ2のファイル

の場合、「へのもじ」が正解の出力になります。

解答

Q3

というデータを、

というように第一フィールドをキーにして%%でレコードを区切ってください。awkを使ってできた人は、awkを使わないでやってみてください。

解答

Q4

Q4.xlsxのA1のセルには数字が書いてあります。その数字を出力してください。A4には文字列が書いてあるので余裕がある人はそれも特定してみましょう。

解答

A1のセル(数字の読み方)

A2の文字列の読み方。シートには文字列のIDが書いてあるのでこれで文字列のシートを読んで特定。

Q5

ファイルQ5について、xに好きな数を代入して各行の式を計算してください。

余裕のある人は、例えばxに2を代入したければ、

というようにecho <代入したい数>から始めてワンライナーで解いてみてください。

解答

例えばこれで解けます。(-2)のカッコはQ5ファイルでは不要なようです。

echo <数字>からスタートすると、ややこしくなります。

Q6

「玉子」と「卵」の数を数えて、数が少ない方を数が大きい方で置換してください。

解答

力技です。

Q7

次のseq(あるいはjot等)の出力から、各桁の数字の構成が同じもの(例: 11122と22111等)を重複とみなし、除去してください。

解答

Q8

  1. まず、1〜7を全て含む7桁の整数を全て列挙して、tmpというファイルに出力してください。

  2. 次に、相異なる7以下の正の整数a,b,c,d,e,f,gを用いて、 abcd + efg と表せる素数と、その時のa〜gの数字を全て求めましょう。tmpを用いて構いません。

(参考: 2011年日本数学オリンピック予選第3問から。一部改。http://www.imojp.org/challenge/old/jmo21yq.html

解答

1は力技になります。

2は、うまくwhileとfactorを使って求めます。



prev:第24回◯◯o◯裏番組シェル芸勉強会 next:第24回◯◯o◯裏番組シェル芸勉強会リンク集





このサイトではGoogle AdSenseやその他ソーシャルボタンのためにCookieを使用しています。もし同意いただけない場合はブラウザでクッキーを無効にして閲覧をお願いします。This site uses cookies for Google AdSense and some social buttons. If you cannot accept our use of cookies, please disable cookies on your browser.