- ベストアンサー
【Ruby初心者】簡単なプログラムが実行しない
ki073の回答
ruby 2.0.0p353 で実行しましたが、質問欄をそのままコピーをすると test.rb:4: unterminated string meets end of file test.rb:4: syntax error, unexpected end-of-input, expecting ')' とエラーがでます。 puts("正の数です!”) の”が全角になっています。 puts("正の数です!") で実行してみてください。 それでも駄目でしたらruby -vでバージョンを確認してください。 1.8.7なら require 'jcode' $KCODE="u" 最初に加えてみてください。
関連するQ&A
- Rubyのファイルを実行できません(初心者)
【環境】 デバイス:MacBookAir エディタ:CotEditor ***************** プログラミング初心者です。 MacにてRubyを独学で学ぼうと思い『たった2日でできるRuby』にある puts("Hello,Ruby.") という1行だけ書いたCotEditorで作成した hello.rb というファイルをターミナルで実行するステップで早くもつまづいております。 テキスト通り cd ruby と記述しても -bash: cd: ruby: No such file or directory とでてきてしまいます。 どなたかご教授お願いできますでしょうか? 画像なしですみません、何故か画像がアップできません。 ファイルサイズ全然余裕なんですけどもね・・・。
- 締切済み
- Ruby
- Ruby の実行について
Ruby初心者です。 メモ帳で puts "hello world"と打ち、名前をsample.rbにし、c:\Users\rbというファイルに保存しました。次にコマンドプロンプトで c:\Users\rb>ruby sample.rb と入力したんですが、'ruby'は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。といわれました。 どうすればいいのですか? 本を見てもネット上のサイトをみても >ruby ●●.rb なんです。
- ベストアンサー
- Ruby
- Ruby vim 実行の仕方
Rubyをvimで書いたので、実行しようとしたのですが、実行できないです。何がダメなのでしょうか? 手順としては、 vimで puts("Hello World!")と書きました。 w hello_ruby.rbと書いて保存しました。 コマンドプロンプトを開いて、hello_ruby.rbと入れて、Enterを押したのですが、 ’hello_ruby.rb’は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。 と出ます。 コマンドプロンプトで、ruby -v と入れると、Rubyのバージョンは出てきます。 何がいけないのでしょうか?修正の仕方を教えてください。 詳しい方いらっしゃいましたら、よろしくお願い致します。
- ベストアンサー
- Ruby
- Ruby初心者です。
以下の練習問題をやっているのですが、どうもうまくいきません。 (1)担当名が"end"になる迄、担当名と売上を入力する。 (2)売上合計を求める。 (3)各担当の売上が売上合計の何%になるかの比率の計算を行う。 (4)担当名、売上、比率を表示する。 どこがいけないのがご教授頂けますでしょうか。 よろしくお願い致します。 *********************************** #! ruby -E Windows-31J:utf-8 # coding: utf-8 kensu = 0 uriage = 0 goukei = 0 uriage_t = [20] tanto = [10] tanto = [20][10] puts("担当名がendで終了") print(kensu = kensu + 1, "人目の担当名は") tanto = $stdin.gets.chomp! tanto.gsub!("\n", "") print("売上") uriage = $stdin.gets.chomp!.to_i while tanto != "end" kensu = kensu goukei = goukei + uriage uriage_t = uriage tanto_t = tanto print(kensu = kensu + 1, "人目の担当名は") tanto = $stdin.gets.chomp! tanto.gsub!("\n", "") if tanto != "end" print("売上") uriage = $stdin.gets.chomp!.to_i end end kensu = kensu + 1 goukei = goukei + uriage uriage_t = uriage tanto_t = tanto, "合計" puts "________________________________________" puts " 担当 売上 比率 " puts "________________________________________" for i in kensu kensu += i ritu = uriage * 100 / goukei puts "担当名は#{tanto} 売上は#{uriage_t}円 比率は#{ritu}%" end
- 締切済み
- Ruby
- プログラム実行中に強制停止させる方法
再び失礼します。 現在以下のようなソースコードを実行しています。 while true do print "commando?\n" command = gets if command == "end" then break end end ループから抜け出すために、getsメソッドを用いて、 endと入力されればループを抜けるという感じにしたいのですが うまく抜け出せず、無限ループに陥ってしまいます。 質問内容は、このように、getsメソッド実行中(?)にプログラムの強制停止を したいのですが、そのような方法はありますでしょうか。(例えばctrl+???とか) 実行環境は、terapadを使用してソースコードを書き、rubyコマンドプロンプトで rubyコマンドを使って実行しています。 それではよろしくお願いいします。 ※投稿確認したのですが、ソースコードにうまくインテンドが挿入されていません・・ 見づらくて申し訳ございません
- ベストアンサー
- Ruby
- rubyで標準入力とファイルからのgets
ActiveScriptRuby v1.8.5でやっています。 実行時にコマンドラインでファイル名を与えてファイルの内容を取得した後、氷人出力からも入力をとろうとしています。しかしファイルの内容を読み出したあとのgetsがnilを返すだけで標準入力から入力をとれません。以下のようなコードでやっています。 ##stdin.rb while line = gets do print line break if line.chomp.empty? end puts' - ' print gets #ここで標準入力から文字をとりたい 実行時は ruby stdin.rb moji.txt という感じで読ませたいファイル名を渡しています。 マニュアルには 最後まで ARGF を読み込んだ後、再度 ARGF から内容を読むと (ARGV が空なので)標準入力からの読み込みとなります。 とありますが、どこがおかしいのかさっぱりわかりません。 アドバイスなどよろしくお願いします
- ベストアンサー
- その他(プログラミング・開発)
- Rubyの初心者ですが壁にぶちあたっております
『初めてのプログラミング』を読んでRubyを勉強しています。その中にある問題でp.127の『ローマ数字をアラビア数字に変換するプログラム』を書け、というのがありまして、最初に入力したローマ数字を弾く部分を書いているのですが…(以下コード) puts 'Enter roman numeral.' roman = gets.chomp.upcase roman_array = roman.to_a def char_checker(char) parts = ['I', 'V', 'X', 'L', 'C', 'D', 'M'] parts.each do |part| if part != char char = false elsif part == char char = true return char end end puts char_checker('X') (以上コード) このchar_checker, なぜかpartsを返してきます。返してほしいのはcharのtrueかfalseなのに泣 書いたコードに間違いがあるのはわかっているのですが、どこで間違っているのかがどうしてもわかりません。わかる方回答よろしくお願いします。ちなみに環境はMac OS X 10.5.4でrubyのバージョンはバンドルされている1.8.6です。
- ベストアンサー
- その他(プログラミング・開発)
- Rubyについて
Rubyの環境について: ●Rubyのダウンロード(ruby186-26.exe) 環境変数を設定しました。 テキストエディタを利用せずにRDEをインストールしました。 ●RDEの最新版のファイルをダウンロード(RDE1.1.1_setup.exe) RDEでプログラムの作成と実行してみます。 RDE画面のエディタウィンドウに日本語を入力すると、文字化けになります。そこで、実行してみます。コンソールウィンドウでは、入力した文字が文字化けせずに表示されました。 どうしましたら、エディタウィンドウは文字化けせずに日本語が表示されますか? 困ってます。 ご指導お願いいたします。
- ベストアンサー
- その他(プログラミング・開発)
- 3つほどプログラムをおしえてください。
(1)100までの整数をいくつか入力し、10刻みでの個数を表示し、負の数が入力されると整数の入力を終わるプログラムです。各範囲の個数は配列に格納する。 実行結果 65 30 21 95 5 -1 0--- 9 : 1 10--- 19 : 0 20--- 29 : 1 30--- 39 : 1 40--- 49 : 0 50--- 59 : 0 60--- 69 : 1 70--- 79 : 0 80--- 89 : 0 90---100 : 1 (2)数字の文字列を入力し、その文字列に含まれる各数字(文字)'0','1',~'9'の個数を表示するプログラムの作成。 実行結果 1231234567 0: 0 1: 2 2: 2 3: 2 4: 1 5: 1 6: 1 7: 1 8: 0 9: 0 (3) 変数xは、0~1までの0.01刻みの値(101個)を取るとする。このとき、2次関数 f(x)=3x^2+2x+1の値が2.0<f(x)<3.0となるxの値をの個数を求めるプログラムの作成。ただし、xを引数としf(x)の値を返す関数を作成して、それを使用する。 実行結果 number=21 やってるうちにわけがわからなくなってしまいます。どなたかよろしくおねがいします。
- ベストアンサー
- C・C++・C#
お礼
迅速な回答ありがとうございました!!助かりました^^