■ Java による作成例
import java.io.*;
class Program06
{
public static void main(String[] args) throws IOException
{
BufferedReader br = new BufferedReader(
new InputStreamReader(System.in));
System.out.print( "月着陸船を、無事、月面に軟着陸させてください。\n" );
System.out.print( "月の重力は地球の約1/6です。1秒毎にエンジンを燃焼させて落下速度を調整してください。" );
System.out.print( "燃料を1ユニット燃焼すると0.1m/s落下速度が減少します。1回で最大50ユニットまで燃焼できます。\n" );
System.out.print( "月面に1.0m/s以下の速度で到達すると着陸成功です。\n" );
System.out.print( "-----------------------------------------------------------\n" );
int reply;
do{
double altitude = 100.0;
double velocity = 0.0;
int fuel = 250;
while (altitude > 0.0){
for ( int i = 0; i < (int)(altitude / 2.0); i++)
System.out.print(" ");
System.out.print(">□\n");
System.out.print("高度:" + altitude
+ "m 速度:" + velocity
+ "m/s 残燃料:" + fuel + "\n");
int max_fuel = 50;
if (fuel < max_fuel)
max_fuel = fuel;
do
{
System.out.print(
"何ユニット燃焼しますか?(0~"
+ max_fuel + ")");
reply = Integer.parseInt(br.readLine());
} while (! (0 <= reply && reply <= max_fuel));
velocity += 1.62;
velocity -= ((double)reply * 0.1);
fuel -= reply;
altitude -= velocity;
}
if (velocity > 1.0)
System.out.print("残念! 着陸船は速度" + velocity
+ "m/sで月面に激突しました。\n");
else
System.out.print(
"おめでとう! 無事、月面に軟着陸できました。\n");
System.out.print("もう一度やりますか?(Yes:1 No:0)");
reply = Integer.parseInt(br.readLine());
} while (reply != 0);
}
}