こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

Javaの問題

(1)

/*
CarApp.java
*/

public class CarApp{
public static void main(String[] args){
Car c2 = new Car(4,45,5);
System.out.println("乗員数:"+c2.getPeple());
System.out.println("タイヤ数:"+c2.getTire());
System.out.println("ガソリン残量:"+c2.getGas());
c2.setPeople(8);
c2.ridePeople(10);
c2.ridePeople(3);
for(int i=0; i<179; i++) c2.speedUp();
for(int i=179; i<182; i++){
c2.showSpeed();
c2.speedUp();
}
for(int i=0; i<179; i++) c2.speedDown();
for(int i=179; i<182; i++){
c2.showSpeed();
c2.speedDown();
}
}
}

____________________________________

/*
Car.java
*/

class Car{
private int tire , people , speed ; //タイヤ数、乗員数、速度
private int 【****】,【***】;
private double gas; //ガソリン
public Car(int tire, double gas, int people){
this.tire = tire;
this.gas = gas;
this.people = people;
speed = 180;
nowPeople = 0;
nowSpeed = 0;
}
public double getGas(){ 【****】}
public int getPeople() { 【****】 }
public int getTire() { 【****】 }
public int getSpeed() { 【****】 }
public void setSpeed(int speed){ this.speed = speed; }
public void speedUp( ) {
if(speed < nowSpeed+1 ){
【****】
【****】
} else{
nowSpeed++;
}
}
public void speedDown( ) {
if(nowSpeed-1<0){
【****】
else{
nowSpeed--;
}
}
public void showSpeed( ) {
【****】
}
public void setPeople(int people){
【****】
showPeople( );
}
public void ridePeople(int ride) {
int tmp = nowPeople + ride;
if(【****】 ) {
【****】;
} else {
【****】;
}
showPeople( );
}
public void showPeople( ) {
System.out.println(【****】) ;
}
public void show(){
System.out.println("タイヤ数" + tire);
System.out.println("ガソリン" + gas);
System.out.println("乗員数:" + people);
}
}


実行結果
>java CarApp2
ガソリン残量:45.0
定員数:8 現在の乗員数:0
定員オーバーです
定員数:8 現在の乗員数:0
定員数:8 現在の乗員数:3
速度:180 現在の速度:179
速度:180 現在の速度:180
最大速度です
速度:180 現在の速度:180
最大速度です
速度:180 現在の速度:1
速度:180 現在の速度:0
既に停止しています
速度:180 現在の速度:0
既に停止しています

___________________

(2)
/*
RaceCarApp2.java
*/

public class RaceCarApp2{
public static void main(String[] args){
RaceCar2 rc2 = new RaceCar2("JapanTour", "TouringCar",350);
System.out.println("乗員数:" + rc2.getPeople());
System.out.println("タイヤ数:" + rc2.getTire());
System.out.println("ガソリン残量:"+rc2.getGas());
rc2.show();
for(int i=0; i<349; i++) rc2.speedUp();
for(int i=349; i<352; i++){
rc2.showSpeed();
rc2.speedUp();
}
for(int i=0; i<349; i++) rc2.speedDown();
for(int i=349; i<352; i++){
rc2.showSpeed();
rc2.speedDown();
}
}
}
_______________________________

class RaceCar2 extends Car{
String raceName;
String type;
public RaceCar2( String raceName, String type , int speed ){
【****】; //親のコンストラクタ
this.raceName = raceName;
this.type = type;
【****】; //スピード設定
}
public void show(){
【****】;
【****】;
【****】;
}
}

実行結果
>java RaceCarApp2
乗員数:0
タイヤ数:4
ガソリン残量:30.0
Type:TouringCar
RaceName:JapanTour
タイヤ数4
ガソリン30.0
乗員数:1
速度:350 現在の速度:349
速度:350 現在の速度:350
最大速度です
速度:350 現在の速度:350
最大速度です
速度:350 現在の速度:1
速度:350 現在の速度:0
既に停止しています
速度:350 現在の速度:0
既に停止しています
__________________________

この様になるように【****】部分を埋め回答せよという問題です。
途中まで自分でやってみましたが、エラーが出てしまうため断念してしまいました。

回答お願いします。

投稿日時 - 2013-01-13 18:01:23

QNo.7890007

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

質問文において,(2)の実行結果の★の箇所が異なっているのは間違いでしょう。
--------
>java RaceCarApp2
乗員数:0 ★
タイヤ数:4
ガソリン残量:30.0
Type:TouringCar
RaceName:JapanTour
タイヤ数4
ガソリン30.0
乗員数:1 ★
--------
質問文の(2)では,setPeople()で乗車定員を変化させている箇所はありませんから,★はどちらも同じ値が出力されるはずです。

投稿日時 - 2013-01-15 00:25:27

ANo.2

(1)
public void speedUp( ) {
if(speed < nowSpeed+1 ){
System.out.println("最大速度です");
} else{
nowSpeed++;
}
}
public void speedDown( ) {
if(nowSpeed-1<0){
System.out.println("既に停止しています");
} else{
nowSpeed--;
}
}
public void setPeople(int people){
this.people = people;
showPeople( );
}
public void ridePeople(int ride) {
int tmp = nowPeople + ride;
if(people >= tmp) {
nowPeople = tmp;
} else {
System.out.println("定員オーバーです");
}
showPeople( );
}

投稿日時 - 2013-01-15 00:03:35

ANo.1

>途中まで自分でやってみましたが、エラーが出てしまうため断念してしまいました。

その途中までやったことやエラーの内容を書かれないのはなぜでしょうか?
回答だけ聞いて何が原因だったのか自分で理解できるようになれますか?

投稿日時 - 2013-01-13 18:19:24

補足

エラーはこちらで対処出来ました。

class Car {
private int tire , people , speed ;
private int nowPeople,nowSpeed;
private double gas;
public Car2(int tire, double gas, int people){
this.tire = tire;
this.gas = gas;
this.people = people;
speed = 180;
nowPeople = 0;
nowSpeed = 0;
}
public double getGas(){ return gas;}
public int getPeople() { return people; }
public int getTire() { return tire; }
public int getSpeed() { return speed; }
public void setSpeed(int speed){ this.speed = speed; }
public void speedUp( ) {
if(speed < nowSpeed+1 ){
nowSpeed = speed ; //**
speed ++;//**
} else{
nowSpeed++;
}
}
public void speedDown( ) {
if(nowSpeed-1<0){
nowSpeed=0;
System.out.println("既に停止しています"); //**
}else{
nowSpeed--;
}
}
public void showSpeed( ) {
System.out.println("速度:"+speed+"現在"+nowSpeed); //**
}
public void setPeople(int people){
//****
showPeople( );
}
public void ridePeople(int ride) {
int tmp = nowPeople + ride;
if(tmp >= nowPeople){//if(【****】 ) {
nowPeople++; //【****】;
} else {
System.out.println("定員オーバーです"); // 【****】;
}
showPeople( );
}
public void showPeople( ) {
System.out.println("定員数:"+people+" 現在の乗員数:"+nowPeople) ; //***
}
public void show(){
System.out.println("タイヤ数" + tire);
System.out.println("ガソリン" + gas);
System.out.println("乗員数:" + people);
}
}
/*実行結果
乗員数:5
タイヤ数:4
ガソリン残量:45.0
定員数:5 現在の乗員数:0
定員数:5 現在の乗員数:1
定員数:5 現在の乗員数:2
速度:180現在179
速度:180現在180
速度:181現在180
速度:181現在2
速度:181現在1
速度:181現在0
既に停止しています
*/
________
class RaceCar2 extends Car{
String raceName;
String type;
public RaceCar2( String raceName, String type , int speed ){
super(4,30,0); //【***】;
this.raceName = raceName;
this.type = type;
setSpeed(speed); //【***】;
}
public void show(){
System.out.println("Type:"+type); //【***】;
System.out.println("RaceName:"+raceName); //【***】;
super.show(); //【***】;
}
}
/*
乗員数:0
タイヤ数:4
ガソリン残量:30.0
Type:TouringCar
RaceName:JapanTour
タイヤ数4
ガソリン30.0
乗員数:0
速度:350現在349
速度:350現在350
速度:351現在350
速度:351現在2
速度:351現在1
速度:351現在0
既に停止しています
*/

現状ではこうなっています。

投稿日時 - 2013-01-14 01:32:06

あなたにオススメの質問