2019-01-01から1年間の記事一覧
とあるRubyのソースコードを見ていて、「||=」といった謎の演算子が出てきた。 なんだこりゃ?? ||= は通称「nilガード」 調べてみると、どうやら変数を初期化したいときに使われる演算子で、Ruby界隈では「nilガード」と呼ばれているらしい。 たとえば、pr…
お題 以下のファイルの単語数を取得せよ wcコマンドを使い単語数が合っているかチェックすること wcコマンドのカウント方法に合わせる sample.rb sample sample sample sample sample 回答 file = 'sample.rb' file_words = File.read(file).split.size p fi…
お題 下記のファイルの容量(バイト数)を求めよ できたらwcコマンドを使い容量が合っているかチェックすること sample.rb sample sample sample sample sample 回答 file = 'sample.rb' p File::Stat.new(file).size => 34 wcコマンドの-cオプションを使い…
お題 「Ruby基礎問題100本ノック#4 摂氏温度を華氏温度に変換する」とは逆に、華氏を摂氏に変換するメソッドfahr_to_celsを定義せよ 摂氏1度から摂氏100度まで1度きざみに華氏温度との対応を出力すること 回答 def fahr_to_cels(fahr) (fahr - 32) / 1.8 end…
お題 ターミナルから-a,-l,-r,-alrのオプションを引き取り、それぞれのオプションで条件分岐をしてメソッドを設定せよ メソッドはputs '適当な文字列'でOK -alrに関しては-ralや-lraなどのように順番を変えても同じメソッドが動作すること 回答 require 'opt…
お題 次のファイルの行数を取得せよ。 test test test test test ファイル名test_file.rb (ファイル場所は実行ファイルと同一ディレクトリにあるものとする) 回答 str = File.read("./test_file.rb") p str.lines.count 説明 ファイルの内容を取得する方法…
お題 とある配列の、後ろから1〜3番目の数字それぞれに対応する文字列を、用意されたハッシュから取り出して連結で表示せよ。 例えば、["1", "2", "3", "4", "5", "6"]といった配列があり、次のようなハッシュがあったとする。 hash = { "0" => "---", "1" =…
お題 摂氏温度を華氏温度に変換するcels_to_fahrメソッドを定義せよ。 回答 華氏と摂氏を変換する公式は次のとおり。 華氏 = 摂氏 × 9 ÷ 5 + 32 つまりこのままコードにすればいいだけ。 def cels_to_fahr(cels) cels * 9 / 5 + 32 end 実行してみると cel…
前回に引き続き、今度は単語ではなく文字の個数を数えてみる。 Ruby基礎問題100本ノック#2 文字列から単語をカウントしてハッシュで表現する - ゴリラよりオランウータン派 お題:文字列の各文字数を数えてハッシュで表現せよ 問題:文字列no pain no gainの…
お題:文字列に出現する単語数を数えてみよう 問題:文字列no pain no gainに出てくる単語の個数を数えて、ハッシュで表現しよう 問題については以下の記事を参考にした。 qiita.com 回答 string = 'no pain no gain' hash = Hash.new(0) string.split(' ').…
何をするか 今日から、Rubyの基礎問題を解いていくことにした。 目的:プログラミング脳を鍛えるため 目的はこちら。 プログラミング脳を鍛える 自分でロジックを組む力 詰まったときの思考的な対処法を身につける メンタル的なバランスをとる きっかけは、…
たとえば以下のような2次元配列があり、それぞれの要素を掛け算する場合。 tateyoko = [ [20,40], [50,20], [40,90], ] menseki = [] tateyoko.each do |tateyoko| length = tateyoko[0] width = tateyoko[1] menseki << length * width end p menseki mense…
require_relativeでファイルを読み込む場合 自分のファイルが存在するディレクトリがパスの起点になる。 . ├── bar │ └── ruby.rb └── foo └── test.rb ruby.rbからfooにあるtest.rbを取得する場合は require_relative '../foo/test' となる。 つまり、bar/r…
プログラミングの初級問題として有名なFizzBuzz問題をRubyで書いてみた。 FizzBuzz問題とは 3で割り切れる数字ならFizz 5で割り切れる数字ならBuzz 3と5で割り切れる数字ならFizzBuzz を表示する問題のこと。 今はさすがに慣れたが、初心者の頃は「ふぁ!?…
記事の内容 Rubocopとは、Rubyのコードを自動修正してくれるフォーマッター インストール方法 gem install する場合 bundlerでインストールする場合 Rails本家が採用している設定を自分にも設定する 試しに自動修正してもらう 失敗したやり方 問題 原因 解決…
やりたいこと 使用するもの 流れ VirtualBoxをダウンロード Vagrantをインストール Ubuntuをインストールする ディレクトリ共有設定 日本語化など その他参考になる記事 やりたいこと Macに仮想環境を作りたい 使用するもの VirtualBox Vagrant これでLinux…
Gistを作るにはこちらへアクセス。 gist.github.com GitHubアカウントを持っていれば入れる。 Gistの作り方 Gist description:そのGistについての説明 Filename including extension:ファイル名 を記入し、コードを挿入する。 最後に非公開(secret Gist)…
やりたいことは? なぜするのか? 環境 MacOS に最新 の Ruby をインストールする方法 rbenvをインストールする Ruby をインストールする 特定のディレクトリで Ruby のバージョンを変更したい場合 rbenv-communal-gems は使わないほうがいい 参照 やりたい…
やりたいこと virtualhostとは? 環境 流れ 1. ドメイン取得 2. ネームサーバーに登録する方法 2-1. お名前ドットコムでネームサーバーの変更の設定 2-2. さくらVPSでネームサーバーの設定 3. Virtualhost 設定 3-2. HTMLを作成する 3-3. 設定ファイルの作成…
やりたいこと MacOSのバージョンをターミナルからさくっと確認したい 方法 次のコマンドをターミナルに打つ。 $ sw_vers 結果 ProductName: Mac OS X ProductVersion: 10.14.6 BuildVersion: 18G87 「画面左上のりんごマーク > このMacについて」からでもバ…
nginxをLinux(Debian)からアンイストールする方法 $ sudo apt-get remove nginx 以上。 再度インストールする場合は以下の記事を参照。 k-koh.hatenablog.com
やりたいこと Nginxをインストールしたので、自分で作ったHTMLを表示させてみたいッッ 環境 MacOS Mojave 10.14.6 さくらVPS OS: Linux Debian 10.1 前提 Nginxインストール済み Nginxを起動済み 参考: k-koh.hatenablog.com 流れ まずはLinux(ここではDeb…
記事の対象者 さくらVPSなどのサーバーではなく、VirtualBox + Vagrantの環境にNginxをインストールした人 Webブラウザで表示確認がしたい すること ポートフォワーディングをするために、Vagrantfileを書き換える 前提 Virtualboxをインストールしている Va…
やりたいこと 環境 Linux(Debian)にNginxをインストールする流れ 失敗したときは Vagrant + Linux で Nginx を設定したい場合 感謝の参照 やりたいこと Linux(Debian)に最新版のNginxをインストールしたい 環境 MacOS Mojave 10.14.6 さくらVPS OS: Linux De…
作った背景 当方のバックグラウンドはSEOやメディア運営なのだが、もともとプログラミングに興味があった。そこで、ドワンゴが運営する「N予備校」でプログラミングの勉強を始め、アウトプットのためにウェブアプリケーションを初めて作った。 N予備校:http…
背景 練習でSequelizeライブラリを使用して簡単なウェブアプリケーションを作っていた。updateを使用して、データベースをアップデート(書き換え)しようとしたら、次のエラーが出た。 Unhandled rejection AssertionError [ERR_ASSERTION]: Missing where …
VirtualBoxのアンイストールで少しつまづいたのでメモ。 背景:「やべぇ、仮想環境がバグった・・・」 なにかをどうかして仮想環境がバグり、vagrant sshをしてもUbuntu-bionicの文字が白色のまま。lsコマンドもできなくなっている・・・。おそらく、パスを…
Node.jsの勉強でちょっとつまづいたのでメモ。 課題:Node.jsでCSS、画像、JSなどが読み込まれない Node.jsでウェブサーバーを立ててウェブサイトを表示したいが、HTMLだけ表示されてCSSや画像ファイルが読み込まれない。 結論 CSSやJS、画像(JPG、SVG、PNG…
この記事の対象者 JavaScriptをすこし勉強した初心者 「そろそろ何か実践的な技術を使ってみたいなぁ〜」「Web APIとか使ってみたいのぉ〜」てな人 郵便番号から住所を検索するAPIを使ってみる 郵便番号を入力すると住所が自動的に表示されるアプリケーショ…
スマホ画面で画像をいい感じにサイズ調整する方法のメモ。具体的なシチュエーションとしては、ヘッダーに表示したい背景画像を縦横同じ長さで表示するときなど。 結論 結論からいうと、次のようにスタイルをあててあげればOK .画像セレクタ { width: 100%; h…