TODOS・何でも情報交換TOPから是非ご覧ください。
一番下の投稿フォームへ > スレッド一覧 > 記事閲覧
o6asanさんのJAVAトライ・その1
日時: 2013/09/21 08:41
名前: りり

問題
入力された正の整数を積算し、その結果を出力するプログラムを作りなさい
ただし、積算の結果が、100を超えると、プログラムを終了させること。
例えば、最初に5を入力すると、結果は、1*5=5ある。
次に3を入力すると、5*3を計算する。結果は、15である。
次に10を入力すると、15*10を計算する。結果は、150である。
計算の結果が100を超えたので、この時点でプログラムを終了する。

…で、JavaとCのどちらでしょうか? という確認があり

javaです。publicとかsysytem.out.printlnとか的確に書いてください。
たまにscafとかわからないプログラムする人いるんで  
…との補足がありました。
メンテ

Re: o6asanさんのJAVAトライ・その1 ( No.1 )
日時: 2013/09/21 09:20
名前: o6asan

追記:
動作確認は,jdk-7u40-nb-7_3_1-windows-i586.exeでやっています。

一応,動くプログラムは書いていますが,当面は,エラー回避ルーチン抜きで行きます。
もっとも,java.io.* をインポートした場合, throws IOException 入れておかないと,
コンパイルが通らないようですので,おまじないで入れておきます。 try , catch を
書けるようになるのは,もう少し先になりそうです。

また, JAVA の素人ですので,この書き方は JAVA らしくないというのがありましたら,
指摘してください。そこまでマニアックに書くつもりはありませんが,一応, JAVA の
方言にも通じるようにはなりたいと思っていますので。

よろしくお願いします。

----------------------------------------------------------------------------------
りりさん,さっそくどうも。

> たまにscafとかわからないプログラムする人いるんで

これは,scanfのことですか。

ところで,エラー処理抜きですが,下記で動きます。

import java.io.*;
public class Sample1
{
public static void main (String[] args) throws IOException
{
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
int a = 0;
int p = 1;
while( p <= 100 ){
System.out.print("正の整数を入力してください: ");
String buf = br.readLine();
a = Integer.parseInt(buf);
p = p*a;
System.out.println("積 = "+ p);
}
System.out.print("積が 100 を超えました。終了します。");
}
}

ちょっと,手直ししました。
メンテ
Re: o6asanさんのJAVAトライ・その1 ( No.2 )
日時: 2013/09/21 09:34
名前: りり

うわっ、はやっいっーーー

o6asanさんには、簡単すぎたかな。でも、他のこれから始める方の参考になるでしょうから、順番に出していきます。


>> たまにscafとかわからないプログラムする人いるんで

>これは,scanfのことですか。

そうかもしれません。私は、JAVAは、出来合いのアブレッド入れるのを調べた程度ですから、その辺は、わかりません。本人のコメント写しただけで。しかし…人に助けて貰うのに、「的確に書いてください。」も無いですよね…「まだよく分からないので、そういうことも分かり易く教えてください。」なら、理解しますが。


あと、ちょっとごめんなさいね。今、パソコンとネットの設定して欲しいという依頼があり、パソコンも選んであげたり、資料も作ったり、ちょっと仕事ができたので、自分では試せません。
また、じっくり私も勉強させて貰いますね。

では、次の問題をさっそく2としてスレッドを立てます。

他にも、こうできるとか、「エラー処理やってみた」とか、複数で、あぁだこうだやりとりすると面白いと思うので、皆様も、よろしくお願いします。

2が書けたら、この下にリンクを貼ります。
メンテ
Re: o6asanさんのJAVAトライ・その1 ( No.3 )
日時: 2013/09/21 09:49
名前: りり

はい。2が書けました。
http://todos.xsrv.jp/2patioospro/todos.cgi?no=53

画像が鮮明で無いので、読み取るのが大変です。
読み取りミスはないと思いますが、不合理がありましたらお知らせください。
一応、問題の筋は通っていると判断しました。
メンテ
Re: o6asanさんのJAVAトライ・その1 ( No.4 )
日時: 2013/09/21 10:12
名前: o6asan

りりさんも,素早いですね。

書き忘れです。

動作確認は,jdk-7u40-nb-7_3_1-windows-i586.exeでやっています。
先日書いたように,この間
http://todos.xsrv.jp/2patioospro/todos.cgi?no=51
で書いたのが,人生初のJAVAのプログラムなので,バージョンの違いでの動きがわかりません。
そういうわけなので,No.1にも追記しましたが,今後は必ず動作確認をしたプログラムを書いておこうと思います。
私のことですから,新しいのが出たら,すぐにアップデートするに決まっていますから。

それから,当面,私が書くプログラムはエラー回避ルーチンは抜きで行きます。
書いていると,私自身こんがらがるので,他の初心者の方にもそのほうがわかりやすいかと思います。

ところで,今から出かけてきます。
第2問は帰宅後チャレンジします。
メンテ
Re: o6asanさんのJAVAトライ・その1 ( No.5 )
日時: 2013/09/21 18:35
名前: o6asan

帰ってきてから,No.1を手直ししました。

InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);

をループの中に入れていたんですが,これは外でいいみたいです。

それから,
import java.io.*;
この間, http://todos.xsrv.jp/2patioospro/todos.cgi?no=51 のを書いた時のままなのですが,
1つ1つ書くと,
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
になります。これを,*でまとめた書き方です。
メンテ
Re: o6asanさんのJAVAトライ・その1 ( No.6 )
日時: 2013/09/21 23:04
名前: o6asan

こんばんは。

りりさんが,うちに貼ってくれたリンク先の回答プログラムを参考に
p = p*a; を p *= a;
みたいな感じに書き直してみました。確かに,こういう書き方をよく見かけます。

それと,この欄に,プログラムを貼ると,インデントが消えてしまいますので,
うちのほうにファイル置き場を作り,そこに入れることにしました。
訂正したものは,これです。
http://o6asan.com/blog-j/files/JAVA/TODOS/Sample1_1.txt

実際に,試してみようと思う方は,ダウンロードもできます。
ただし,拡張子をtxtにしてアップしてますので,これをjavaに変更後コンパイルしてください。
メンテ
Re: o6asanさんのJAVAトライ・その1 ( No.7 )
日時: 2013/09/27 08:48
名前: o6asan

>> たまにscafとかわからないプログラムする人いるんで
> これは,scanfのことですか。

と書きましたが, JAVA に scanf はないらしいです??

もしかしたら, Scaffold のことかも。
メンテ
Re: o6asanさんのJAVAトライ・その1 ( No.8 )
日時: 2013/09/29 21:39
名前: りり

実行の動画をご紹介します。
http://todos.xsrv.jp/uploader/upl/AGDRec.wmv
メンテ

楽しい交流と情報交換のTODOS・アップローダーも用意。ぜひTOPからもご覧ください。
ご参考になりましたら、お気軽に一筆お書き込みくださいませ。
題名 スレッドをトップへソート
名前
画像添付
JPEG
GIF
PNG



参照ボタンを押して、PCの画像を指定ください。3枚まで指定できます。縮小画像はクリックで拡大されます。
パスワード (好きなパスワードを。投稿後、右下のスパナマークをクリックし、そのパスワードを入れて修正できます。)
コメント

   クッキー保存
スレッドTOPへ***スレッド一覧