トップページ⇒tech
675コメント266KB

【Java編】 学校の宿題は俺にやらせろ 【Java編】

■ このスレッドは過去ログ倉庫に格納されています
0001糞すれクリエータNGNG
おい!厨房どもJavaの宿題はここに持って来い!
ただGUIかんけーはめんどクセーから、放置するぞ!

☆丸投げ歓迎 AGE進行☆
0481デフォルトの名無しさんNGNG
>>480
こんな感じでいいんでしょうか?

public class WeekNum {
public static void main(String args[]){
String[] week={"月曜","火曜","水曜","木曜","金曜"};
int[] classNum={1,2,3,4,5};
int sum=0;
for(int i=0;i<classNum.length;i++){
System.out.println(week[i]+"は"+classNum[i]+"コマの講義があります");
sum=sum+classNum[i];
}
System.out.println("全部で"+sum+"コマの講義があります");
System.out.println("平均で一日"+(sum/classNum.length)+"コマの講義があります");
if{(sum>=12 && sum<15) System.out.println("コマ数は普通です");}
else if{(sum>=15) System.out.println("コマ数が多すぎます");}
else{ System.out.println("コマ数が少なすぎます");}

ありがとうございますた。
0482デフォルトの名無しさんNGNG
キーボードで"1"と入力すると"2"と出力されるようなプログラムを作りたいのですがソースはどんな感じになるのでしょうか?
0483デフォルトの名無しさんNGNG
キーボードで1以外が入力されたときの動きはどうでもいいのか?
0484デフォルトの名無しさんNGNG
>>483
いいからさっさと教えろよ
余計なことは考えるな
0485デフォルトの名無しさんNGNG
はい。
public class Main {
  public static void main(String[] args) {
    System.out.println("2");
  }
}
0486デフォルトの名無しさんNGNG
>>485
死ねよ
0487デフォルトの名無しさんNGNG
>>485
キーボードから入力される前に表示されてしまうと思うが
0488デフォルトの名無しさんNGNG
アホばっかかよ(藁
オラ、こんな簡単な問題もできないでどーする?ゲラ
0489デフォルトの名無しさんNGNG
1以外の入力があった場合とか
何も入力が無かった場合とか、
そういう「余計なこと」は一切考えずに、仕様を満たしていると思うが。

少なくともプログラム動作中に1を入力したら、2が表示される。(藁
0490デフォルトの名無しさんNGNG
main()
{

for(;;)
{
 int c = getchar();
 putchar(c == '1' ? '2' : c);
}

}
0491デフォルトの名無しさんNGNG
>>488 ホレ
import java.io.*;

public class NumPlusOne {
public static void main(String[] args) throws Exception {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
int x = Integer.parseInt(new String(bf.readLine()));
System.out.println((x+2));
}
}
0492デフォルトの名無しさんNGNG
>>488
未コンパイルだし当てにするな。

public class OneTwo {
public static void main(String[] args) {
try {
char buf[1];
if (new java.io.InputStreamReader(System.in).read(buf) <= 0)
System.out.println((char)(buf[0] + 1));
System.exit(0);
} catch (java.io.IOException e) {}
}
}
0493492NGNG
恥ずかしい。
s/<=/>/g
0494デフォルトの名無しさんNGNG
「自分でやって面白いと感じられるゲームをアップレットで作れ」というのが出ました。
皆様ならどのようなゲームを作りますか?
また、何か良いアイデアはありますか?テレビゲーム系のゲームでもいいとか言われました。
0495デフォルトの名無しさんNGNG
>>494
エロゲー
0496デフォルトの名無しさんNGNG
無性にDQ1なみのRPG作りたい。
0497デフォルトの名無しさんNGNG
>>494
http://www.kutar.com/game/chan.html
0498494NGNG
ドラクエ1って作るの難しいんじゃないんですか?
皆様くらいのスキルならちょっと休憩にくらいな気分でできちゃうんですか?
0499デフォルトの名無しさんNGNG
>>498
プログラムが必要な部分はともかくとして、グラフィックリソース
や音源リソースが休憩中に作れるのか、君は。すごいね。
0500デフォルトの名無しさんNGNG
>>499
>>498の何処に作れると書いてあるのか(略
0501494NGNG
そうゆう意味で書いたわけでは・・・・。
ドラクエ1を作るのはどのくらいのスキルがあればできるのでしょう?
僕には天を仰ぐような感覚ですが。
0502_NGNG
http://homepage.mac.com/hiroyuki44/
0503デフォルトの名無しさんNGNG
すぎやまこういち並の作曲力と、
堀井雄二並の発想力と、
鳥山明並の絵画力があればできます。
0504デフォルトの名無しさんNGNG
>>503
そんなに厳しいわけないでしょ(ワラ
0505494NGNG
そうゆう意味で言ってるんじゃありませんって〜。
ん〜、何て言えばいいのかな〜。
伝わりません?言いたい事。
このもどかしい感じが・・・・。

なんというか、完璧にドラクエ1でなくていいのでそれに近い感じのゲームを作るにはどのくらいスキルが必要か教えてほしいというかなんというか・・・。
表現するのが難しい質問です。
0506デフォルトの名無しさんNGNG
プログラミングは"難しく"はないだろう。大量のリソースやら
シナリオやらの管理が"面倒くさい"だけですのう。
で、その"大量の各種リソース"を誰が何時どうやって作るのか
という問題がありますのう。
0507494NGNG
なら、短いRPGなら少し勉強すれば作れるようになりますか?
0508デフォルトの名無しさんNGNG
>>507
なるよ。グラフィックスも音もない、自作ショボRPGなら、そこら
へんにいくらでも転がってるでしょ。
0509494NGNG
では、がんばってこの夏にアップレットRPGを製作してみます!
0510デフォルトの名無しさんNGNG
シナリオを書いたり絵を描いたり、システムの構想を練ったりするのが一番時間がかかりそう・・・
RPGツクールを使ってもこの辺は変わらないね。
0511デフォルトの名無しさんNGNG
夏になると回答者にも変なのが混ざるようになるんだよね☆
0512デフォルトの名無しさんNGNG
小学生のときの話で当時MSXを使っていたんだが
友達にゲームを作ろうと言われたんだよな。
当時からプログラミングをしていた俺はそいつに言った。
「ゲームを作るのは大変だ。絵や音楽やシナリオを作らなきゃならないから。」
当時からプログラミングが大変だとは思っていなかった。
最近の子供はここまで考えることが出来ないのかな?
0513デフォルトの名無しさんNGNG
小学生のときの話で当時MSXを使っていたんだが
友達にゲームを作ろうと言われたんだよな。
当時からプログラミングをしていた俺はそいつに言った。
「ゲームを作るのは大変だ。絵や音楽やシナリオを作らなきゃならないから。」
当時からプログラミングが大変だとは思っていなかった。
最近の子供はここまで考えることが出来ないのかな?
0514デフォルトの名無しさんNGNG
絵は僕が書きますよ
0515デフォルトの名無しさんNGNG
http://www.39001.com/cgi-bin/cpc/gateway.cgi?id=ookazujp
http://www.39001.com/cgi-bin/cpc/welcome.cgi?id=ookazujp
http://www.bannerbridge.net/cgi-bin/click.cgi?mid=b000000002&pid=p000000244
http://www.bannerbridge.net/cgi-bin/click.cgi?mid=b000000003&pid=p000000244
http://www.bannerbridge.net/cgi-bin/click.cgi?mid=b000000017&pid=p000000244
http://www.adultshoping.com/index.cgi?id=1057809839
http://www.bannerbridge.net/cgi-bin/click.cgi?mid=b000000008&pid=p000000244

!!!!! ━━━━━━(゚∀゚)b━━━━━━ グッジョブ!!!!!
0516デフォルトの名無しさんNGNG
java言語でタイピングソフトの簡単なプログラム教えてくださいませんか?
アプレットではなくアプリケーションで。
ただ表示された文字を打つだけの簡単なやつでいいので。





0517まことNGNG
プログラム1:整数NとPを入力し、1からNまでの間にあるPの倍数をリストする
0518?NGNG
みてね〜♪
http://www2.free-city.net/home/kojiro/page004.html
0519デフォルトの名無しさんNGNG
>>517
P*1
P*2
P*3
P*4
・
・
P*○
これ全部表示すればいい 終了条件はP*○>Nのとき ちなみに常にP<Nでいいんだよな?
0520教えてくださいNGNG
プログラム1:整数NとPを入力し、1からNまでの間にあるPの倍数をリストする
 
考え方:NがPより小さければ終了(リスト不可能)。そうでなければ、int型の変数iをPから始めてPずつ増やしながら(i=i+P)画面に表示する。iがNを越えたら終了。
println( ) を使うと画面上で改行が入るので、数字を続けてリストするために print( ) を使うこと。
while文、for文のどちらを使ってもよい
0521教えてください2NGNG
プログラム2:10進数の整数の桁数を表示する
例えば "12340" という整数が与えられたとき、5けたの数字であるから "5" を表示するようなプログラムを作れ。
0522_NGNG
http://homepage.mac.com/hiroyuki44/
0523教えてください3NGNG
プログラム3:必要なお札・硬貨の枚数を表示する
1万円札・千円札・100円玉・10円玉・1円玉だけを使ってお金を支払う場合、それぞれが何枚必要かを表示するプログラムを作れ。
ただし、出来るだけ高額なお札・硬貨から順に使っていくものとする。
支払う金額はコマンドライン引数で与える。
0524デフォルトの名無しさんNGNG
>>523
マルチなのか何なのかわかんないけど
そんなもんかんたんだろ

上のけた数引いて全部その桁で割ればいい
0525教えてください3NGNG
ソースが見たいのですが
0526デフォルトの名無しさんNGNG

x:入力値

int a=x/10000;//1万円
int b=(x-a*10000)/1000;//千円
0527516NGNG
だれかタイピングソフトのプログラム教えてください
ランダムに表示された文字をうって、それがあってるか判定できれば
どんなにしょぼいものでもいいので。
アプリケーションでなんとか・・・お願いします
0528デフォルトの名無しさんNGNG
>>527
DOS窓上でいいの?それならなんとか・・
0529デフォルトの名無しさんNGNG
>>527
#include <stdio.h>
#include <stdlib.h>
#include <sys/time.h>
#include <string.h>
char* CreateSample() {
    char* sample = malloc( 100 * sizeof(char) );
    static char* s[] = { "I", "You" };
    static char* v[] = { "love", "hate" };
    static char* o[] = { "hiroko", "megumi", "michiko", "akiko", "satoko" };
    sprintf( sample, "%s %s %s.", s[rand()%2], v[rand()%2], o[rand()%5] );
    return sample;
}
int main( int argc, char* argv[] ) {
    srand( time(0) );
    char* sample;
    char buf[100];
    do {
        sample = CreateSample();
        printf( ">>> %sn### ", sample );
        gets(buf);
        printf( "%sn", strcmp( buf, sample ) == 0 ? "ok." : "miss!" );
        free( sample );
    } while( !feof( stdin ) );
    return 0;
}
0530デフォルトの名無しさんNGNG
//528じゃないけど・・・
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class TypingSoft {

public static void main(String[] args) {
try {
int level = Integer.parseInt(args[0]);
if(level<1)throw new Exception();
new TypingSoft(level);
}
catch (Exception e) {
System.out.println("レベルを1以上の数値で入力してください");
}}
public String create(int digit) {
StringBuffer pass = new StringBuffer(digit);
for (int i = 0; i < digit; i++) {
int choice = (int) (Math.random() * 3);
switch (choice) {
case 0 :
pass.append((char) ((int) (Math.random() * 10) + 48));
break;
case 1 :
pass.append((char) ((int) (Math.random() * 26) + 65));
break;
case 2 :
pass.append((char) ((int) (Math.random() * 26) + 97));
break;
}}return pass.toString();}public TypingSoft(int level){String in=null;System.out.println("Ctrl+Cで終了");try{while(true){String a=create(level);System.out.println(a);
in=new BufferedReader(new InputStreamReader(System.in)).readLine();if(!a.equals(in))System.out.println("×");}}catch(Exception e){}}}
0531529NGNG
Javaスレだた.....
0532516NGNG
みなさんありがとう、参考にさせてもらいます
0533エラーですぎ!!NGNG
>>520>>521>>523
解答のソースを教えてもらえませんか?
0534デフォルトの名無しさんNGNG
>>533
まずは「エラーですぎ!!」というそのソースコードを
だしてみて。話はそれからだ。
0535初心者NGNG
課題なのですが、どなたか教えてください。

●以下の条件を持つプログラムを構築しなさい

○「カード」オブジェクトを定義するCardクラス、(ジョーカーを除く)52枚のカードからなる「デッキ」を定義するDeckクラスを定義しなさい

○アプリケーションあるいはアプレットを利用して、5枚のカードをデッキから取り出すプログラム、(例えばそのプログラムの名前はCardTestクラス)、を作成しなさい

○カードおよびデッキの初期化には静的変数により実施しなさい

○カードクラスの「インスタンスメソッド」として番号とマークを問い合わせるメソッドを用意しなさい

★余力があれば、次の要件を付け加えなさい

○5枚のカードを取り出す際、ランダムになるよう、あらかじめカードをシャッフルする機能をDeckのクラスメソッドとして実現しなさい

○カードのソーティングを実施し、ポーカーの役がわかるようにしなさい

○好きなカードを「ホールド」し、それ以外を引きなおして、再度、役をチェックするようにしなさい。その際、アプレットとAWTなどに用意されている機能を利用しなさい


というものです。
よろしくお願いします
0536デフォルトの名無しさんNGNG
>>カードおよびデッキの初期化には静的変数により実施しなさい
これはどう有意味なのでしょうか??
引数を静的変数を引数に持たせるという意味?
0537535NGNG
すみません、自分もよくわからないのですが、
静的変数のところに

すべてのオブジェクトから共有される変数(クラスそのものに結びついているもの)
→static型で宣言

とメモってありました。
0538デフォルトの名無しさんNGNG
>>535
はげしくやる気のなくなる宿題だなあ。

>○カードおよびデッキの初期化には静的変数により実施しなさい
訳の分からない縛り。

>○アプリケーションあるいはアプレットを利用して、5枚のカードをデッキから取り出すプログラム、(例えばそのプログラムの名前はCardTestクラス)、を作成しなさい
アルゴリズムとGUIをごっちゃに出題するのはどうかと思う。

>○カードのソーティングを実施し、ポーカーの役がわかるようにしなさい
こんなの初心者が「余力」でできるわけないだろう。

>○5枚のカードを取り出す際、ランダムになるよう、あらかじめカードをシャッフルする機能をDeckのクラスメソッドとして実現しなさい
Collections.shuffle()呼んで煙に巻いてやれ。出題者知らないと見た。
0539初心者NGNG
1.以下のような図を作ってください。画面(width x height) = 600 x 600です。

http://a.jmpd.com/upload/show.php?pid=85-A&db=nakama&type=1


2.以下のプログラムは円をdrawLineのみで描くプログラムである。
DsiplayCircle.java
import java.applet.Applet ;
import java.awt.* ;

public class DisplayCircle extends Applet {
float PI=(float)Math.PI ;
int winWidth=300, winHeight=300 ;
float circRadius=100.0f ;
public void init() {
setBackground(Color.lightGray) ;
setForeground(Color.red) ;
resize(winWidth,winHeight) ;
0540初心者NGNG
}
public void paint(Graphics g) {
float r=circRadius,delta,theta,x0,y0,x1,y1 ;
float xc,yc ;
int nPoints =200 ;
xc=winWidth/2 ;
yc=winHeight/2 ;
x0=0.0f ;
y0=0.0f ;
for(int k=0;k<nPoints;k++) {
if(k==0) {
theta=0.0f ;
x0=r*(float)Math.cos(theta)+xc ;
y0=r*(float)Math.sin(theta)+yc ;
}
theta=2.0f*PI*(float)(k+1)/(float)nPoints ;
x1=r*(float)Math.cos(theta)+xc ;
y1=r*(float)Math.sin(theta)+yc ;
g.drawLine((int)x0,(int)y0,(int)x1,(int)y1) ;
x0=x1;
y0=y1;
}
}
}

ここでi,jは整定数、aは実定数(circRaius)。0≦θ≦2π 。つまりrはθとともに変化する。
i,jをいくつか変えたサンプル出力を以下に示す。
http://a.jmpd.com/upload/show.php?pid=87-A&db=nakama&type=1
プログラムは 1≦i≦5、1≦j≦5すべてに完璧に対応できるようにしてください。また最後の文字列は以下のようにコーディングしました。
g.drawString("Leaves i= "+i+" j= "+j,110,275) ;

こんな感じです。お願いできますでしょうか?
0541デフォルトの名無しさんNGNG
>GUIかんけーはめんどクセーから、放置するぞ!
>GUIかんけーはめんどクセーから、放置するぞ!
>GUIかんけーはめんどクセーから、放置するぞ!
0542デフォルトの名無しさんNGNG
>>535
簡単に作ってみました(役判定、Gui抜きですが・・・)
ここに書くには少しコードの量が多いのですがどうしましょうか?
あと私も初心者なので期待しないでください。
0543535NGNG
>>542
ホントですか?
じゃあメールで送っていただけるとうれしいです。
0544デフォルトの名無しさんNGNG
>>535
メアドがジャンピングニーw
0545デフォルトの名無しさんNGNG
>>544
俺は『ジャンピング クンニ』だと思った
どうりで、すごいプレーだなと思いましたよ
0546535NGNG
>>545
よく判りましたねw
0547デフォルトの名無しさんNGNG
宿題じゃあないけど
オブジェクト指向でオセロゲーム

ってもう既出?
0548デフォルトの名無しさんNGNG
public class Card {
private String mark=null;
private int num=0;

public Card(String mark,int num){
this.mark=mark;
this.num=num;
}

public String getMark(){
return mark;
}

public int getNum(){
return num;
}
}
0549デフォルトの名無しさんNGNG
public class Deck {
final static int Num=52;
private static Card[] allCard=new Card[Num];
private String[] mark={"クラブ","ダイヤ","ハート","スペード"};
private Card[] myCard=null;
public Deck(){
for(int i=0;i<mark.length;i++){
for(int j=1;j<14;j++){
allCard[(j-1)+(13*i)]=new Card(mark[i],j);
}
}
}

public Card getCard(int num){
return allCard[num];
}

public static void shuffle(){
Card deckBackup=null;
for (int i=0; i<200; i++){
int myA = (int)Math.floor( Math.random() * 52 );
int myB = (int)Math.floor( Math.random() * 52 );
deckBackup = allCard[myA];
allCard[myA] = allCard[myB];
allCard[myB] = deckBackup;
}
0550デフォルトの名無しさんNGNG
}
public Card[] changeCard(int[] holdNum,int playCount){
Card[] chCard=new Card[5];
for(int i=0;i<chCard.length;i++){
chCard[i]=allCard[(playCount)*5+i];
}

for(int i=0;i<holdNum.length;i++){
chCard[holdNum[i]-1]=myCard[holdNum[i]-1];
}
sortCard(chCard);
myCard=chCard;
return myCard;
}

public Card[] takesCard(){
myCard=new Card[5];
Card deckBackup=null;

for(int i=0;i<myCard.length;i++){
myCard[i]=allCard[i];
}
sortCard(myCard);
return myCard;
}
0551デフォルトの名無しさんNGNG
public void sortCard(Card[] myCard){
Card deckBackup=null;
for (int i=0; i<4; i++){
for (int j=i+1; j<5; j++){
if (myCard[i].getNum() > myCard[j].getNum()){
deckBackup = myCard[i];
myCard[i] = myCard[j];
myCard[j] = deckBackup;
}
}
}
}
}
0552デフォルトの名無しさんNGNG
import java.io.*;
import java.util.*;

public class CardTest {
public static void main(String[] args){
int playCount=1;
Deck deck=new Deck();
Deck.shuffle();
Card[] myCard=deck.takesCard();
for(int i=0;i<myCard.length;i++){
System.out.println((i+1)+":"+myCard[i].getMark()+myCard[i].getNum());
}
while(true){

String in=null;
System.out.print("ホールドしたい番号をすべて半角で空白をあけて入力してください(例・・・1 2 4)>");
try{
in=new BufferedReader(new InputStreamReader(System.in)).readLine();
StringTokenizer st=new StringTokenizer(in," ");
int[] holdNum=new int[st.countTokens()];
int count=0;
while(st.hasMoreTokens()){
holdNum[count]=Integer.parseInt(st.nextToken());
count++;
}
myCard=deck.changeCard(holdNum,playCount);
System.out.println("交換回数:"+(playCount)+"回目");
for(int i=0;i<myCard.length;i++){
System.out.println((i+1)+":"+myCard[i].getMark()+myCard[i].getNum());
}
0553デフォルトの名無しさんNGNG
while(true){
System.out.print("まだ続けますか?(y or n)>");
in=new BufferedReader(new InputStreamReader(System.in)).readLine();
if(in.equals("y")){
break;
}
else if(in.equals("n")){
System.out.println("終了します");
System.exit(0);
}
else{
System.out.println("yかnで入力してください");
}
}
}
catch(NumberFormatException e){
System.out.println("半角整数で半角スペースで入力してください");
playCount--;
}
catch(ArrayIndexOutOfBoundsException e){
System.out.println("1〜5までの整数で入力してください");
playCount--;
}
catch(Exception e){
System.out.println("err");
}
playCount++;
}
}
}

0554デフォルトの名無しさんNGNG
>>535
機能はメール送らなくてスマソ
とりあえず役判定抜きで簡単に作ってみました。
実務経験なしの学生なんでソースの汚さは多めに見てください( ´∀`)
0555デフォルトの名無しさんNGNG
>>535
http://jcp.org/aboutJava/communityprocess/jsr/tiger/enum.html
の Card クラス使ってみるとか。
0556デフォルトの名無しさんNGNG
>>548
suitじゃなくてmarkなあたりに君の英語力の無さが分かった
0557デフォルトの名無しさんNGNG
今日中に出さなければ単位がとれない宿題があるのでおながいしてもよろしいでしょうか?
0558557NGNG
自分でもやってみまふが
取り合えず丸投げするのでどなたか分かったらおながいします。
厨房でスマソ

class Foo {
public static void main(String[] args) {
System.out.println("5: "+limit(5));
System.out.println("15: "+limit(15));
}
// �@
}
// �A
int 型の変数i を引数に持ち、もしi が10 より大きければi を10 にし、i をint 型で返す以下
のメソッドlimit は、上の�@と�Aのどちらに書けばよい?
static int limit(int i) {
if (i > 10) {
i = 10;
}
return i;
}
0559557NGNG
2 ● 演習1-2 int 型の2つの変数a,b を引数に持ち、2 つの和を"2 つの和は"に連結してString
型として返す以下のメソッドtasu を下線部を埋めて追加せよ。またmain メソッドにこのメソッ
ドを呼び出す文を追加し実行せよ。
static tasu( ) {
String s = "2 つの和は"+ (a+b);
s;
}
● 演習1-3 int 型の変数n を引数に持ち、n 個の*と改行を表示する返り値なしの以下のメ
ソッドstar について下線部を埋めて追加せよ。またmain メソッドにこのメソッドを呼び出す文
(引数等は、自分で好きに決めてよい)を追加し実行せよ。
static star(int n) {
for (int i = n; ; i--) {
System.out.print("*");
}
System.out.println();
}
0560557NGNG
● 演習1-4 int 型の変数n を引数に持ち、n 個の*をString 型として返す以下のメソッドstar2
を下線部を埋めて追加せよ。またmain メソッドにこのメソッドを呼び出す文(引数等は、自分
で好きに決めてよい)を追加し実行せよ。
static star2(int n) {
String s = "";
for (int i = n; i > 0 ; i--) {
;
}
s;
}
● 演習1-5 int 型の変数i を引数に持ち、i が10 より大きければi を10 にし、i が0 より小
さければi を0 にしi をint 型として返すメソッドrange を追加せよ。またmain メソッドにこ
のメソッドを呼び出す文(引数等は、自分で好きに決めてよい)を追加し実行せよ。
3
● 演習1-6 int 型の変数n とString 形の変数str を引数に持ち、n 個のstr をString 型とし
て返すメソッドrepeat を追加せよ。またmain メソッドにこのメソッドを呼び出す文(引数等は、
自分で好きに決めてよい)を追加し実行せよ。
● 演習1-7 int 型の変数n を引数に持ち、1 行目からn 行目まで、i 行目ではi 個の*を表示す
る返り値のないメソッドtriangle を追加せよ。ただし、上のメソッドrepeat を使うこと。また
main メソッドにこのメソッドを呼び出す使う文(引数等は、自分で好きに決めてよい)を追加
し実行せよ。(2 点)
例n=3 の場合
*
**
***
0561デフォルトの名無しさんNGNG
以上ですどなたかおながいします・・・
0562デフォルトの名無しさんNGNG
演習1-1
�@

演習1-2
public static String tasu(int a, int b) {
String s = "2 つの和は"+ (a+b);
retrurn s;
}

main メソッドへの追加
System.out.println(tasu(5, 15));

演習1-3
public static void star(int n) {
for (int i = n; i >= 0; i--) {
System.out.print("*");
}
System.out.println();
}

mainメソッドへの追加
star(15);
0563デフォルトの名無しさんNGNG

演習1-4
public static void star2(int n) {
String s = "";
for (int i = n; i > 0; i--) {
s += "*";
}
return s;
}

mainへの追加
System.out.println(star2(15));

演習1-5
public static int range(int i) {
if (i > 10) {
i = 10;
} else if (i < 0) {
i = 0;
}
return i;
}

mainへの追加
System.out.println(range(15));
System.out.println(range(5));
System.out.println(range(-5));
0564デフォルトの名無しさんNGNG

演習1-6
public static void repeat(int n, String str) {
String s = "";
for (int i = n; i > 0; i--) {
s += str;
}
return s;
}

mainへの追加
System.out.println(repeat(15,"+");

演習1-7
public static void triangle(int n) {
for (int i = 1; i <= n; ++i) {
System.out.println(repeat(i, "*");
}
}

mainへの追加
triangle(3);
0565デフォルトの名無しさんNGNG
ありがとうございますだ〜
0566デフォルトの名無しさんNGNG
>>565
増田じゃない
益岡です
0567全然わからないのですがNGNG
>>520>>521>>523
ソース教えてください
0568デフォルトの名無しさんNGNG
public class Ex520 {
public static void main(String args[]){
if(args.length==2){
try{
int N=Integer.parseInt(args[0]);
int P=Integer.parseInt(args[1]);
System.out.println("N:"+args[0]+" P:"+args[1]);
if(N<P){
System.out.println("N<Pなので終了");
}
else{
for(int i=P;i<=N;i+=P){
System.out.print(i+" ");
}

}
}
catch(NumberFormatException e){
System.out.println("引数には数字を入力");
}
}
else{
System.out.println("2つの引数に数字を入力");
}
}

}
0569デフォルトの名無しさんNGNG
public class Ex521 {
public static void main(String args[]){
if(args.length==1){
try{
double count=1.0;
double number=Double.parseDouble(args[0]);
System.out.println("number:"+args[0]);
while(Math.pow(10.0,count)<=number){
count++;
}
System.out.println("桁数は"+(int)count);

}
catch(NumberFormatException e){
System.out.println("引数には数字を入力");
}
}
else{
System.out.println("1つの引数に数字を入力");
}
}
}
0570デフォルトの名無しさんNGNG
>>540 GUIだが首を突っ込んで、問1。
import java.awt.*; import java.awt.event.*;
public class RecursiveRect extends Frame {
public RecursiveRect() {
super("Recursive Rect");
setSize(600, 600);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
System.exit(0);
}
});
}
public void paint(Graphics g) {
g.setColor(Color.red);
drawRect(g, new Point(50, 50), new Point(550, 50), new Point(550, 550), new Point(50, 550), 10);
}
void drawRect(Graphics g, Point p0, Point p1, Point p2, Point p3, int n) {
if ((n --) > 0) {
g.drawLine(p0.x, p0.y, p1.x, p1.y);
g.drawLine(p1.x, p1.y, p2.x, p2.y);
g.drawLine(p2.x, p2.y, p3.x, p3.y);
g.drawLine(p3.x, p3.y, p0.x, p0.y);
drawRect(g,
new Point((p0.x + p1.x) >> 1, (p0.y + p1.y) >> 1),
new Point((p1.x + p2.x) >> 1, (p1.y + p2.y) >> 1),
new Point((p2.x + p3.x) >> 1, (p2.y + p3.y) >> 1),
new Point((p3.x + p0.x) >> 1, (p3.y + p0.y) >> 1), n);
}
}
public static void main(String[] args) { new RecursiveRect().setVisible(true); }
}
0571最後NGNG
>>567
public class Ex523 {
public static void main(String args[]){
if(args.length==1){
try{
System.out.println("amount;"+args[0]);
int totalamount=Integer.parseInt(args[0]);
int[] noso=new int[5];
int[] money={10000,1000,100,10,1};
for(int i=0;i<noso.length;i++){
while((totalamount - (money[i]))>=0){
noso[i]++;
totalamount=totalamount-money[i];
}
}
for(int i=0;i<money.length;i++){
System.out.println(money[i]+"円:"+noso[i]);
}

}
catch(NumberFormatException e){
System.out.println("引数には数字を入力");
}
}
else{
System.out.println("1つの引数に数字を入力");
}
}
}
0572570NGNG
>>568-571
すまん挟んじまった。陳謝m(_ _)m
0573デフォルトの名無しさんNGNG
>>572
3つ目の問題に20分もかけた自分が悪いです( ̄ー ̄)
なかなかいいアルゴリズムが思いつかなくて・・・

どなたか綺麗なソースコードをキボン
0574572NGNG
>>571=573
十分キレイだと思われ。エラー処理が多いだけ。
ちなみに漏れのは、
public class Q523 {
public static void main(String[] args) throws Exception {
if (args.length != 1) { System.err.println("Usage: java Q523 amount"); System.exit(1); }

int amount = Integer.parseInt(args[0]);
int[] types = {10000, 1000, 100, 10, 1};
for (int i = 0; i < types.length; i ++) {
int numMoney = amount / types[i];
System.out.println(types[i] + "yen * " + numMoney);
amount -= types[i] * numMoney;
}
}
}
0575573NGNG
>>574
おー、ありがとうございます。
すごい簡潔にまとまってますね。アルゴリズムもさっぱりしてるし。
てか、int型は小数点以下切捨てでしたね・・・
勉強になりました。出直してきます。それにしても
人の書いたコードっていろんな意味で参考になりますね
0576全然わからないのですがNGNG
ありがとうございました^^
0577デフォルトの名無しさんNGNG
これで十分じゃない?

System.out.println("10000円 " + (amount / 10000));
System.out.println("1000円 " + (amount / 1000) % 10);
System.out.println("100円 " + (amount / 100) % 10);
System.out.println("10円 " + (amount / 10) % 10);
System.out.println("1円 " + amount % 10);

応用できないが、要件は満たしている。
0578課題NGNG
○整数NとPを入力し、1からNまでの間にあるPの倍数をリストする。 
考え方:NがPより小さければ終了(リスト不可能)。そうでなければ、int型の変数iをPから始めてPずつ増やしながら(i=i+P)画面に表示する。iがNを越えたら終了。
println( ) を使うと画面上で改行が入るので、数字を続けてリストするために print( ) を使うこと。
while文、for文のどちらを使ってもよい。
0579デフォルトの名無しさんNGNG
>>568>>569>>574
キー入力どうしたらいいんですか?
0580574NGNG
>579
>支払う金額はコマンドライン引数で与える。>>523
問題嫁〜(・A・)
■ このスレッドは過去ログ倉庫に格納されています