Programınızın bir dizi boşluk ve ardından bir nokta ve bir yeni satır yazdırması gerekir. Boşluk sayısı, noktanızın 0 <x <30 ile tanımlanan x konumudur
Her yeni çizgi bir dönüş. Programınız 30 tur boyunca çalışır. Programınız rastgele bir x konumu ile başlar ve her tur tanımlanan konumun içinde kalırken bu konumu rastgele 1 sola veya sağa kaydırır. Noktanızın her dönüşü konumunu 1 değiştirmek zorundadır.
Puanınız karakter sayısıdır. Yazdırılan her satır tam olarak 30 karakterden (ve yeni satırdan) oluşuyorsa 10 bonus puanı kazanırsınız. Programınız tanımlanan alanın ortasında kalma eğilimindeyse, 50 bonus puanı kazanırsınız.
Düzenleme: 50 bonus puanı, noktanızı ortaya çekmek için tasarlanmıştır. Örneğin, noktanız x = 20 ise ve% 66 sola gitme ve% 33 sağa gitme şansına sahipse bu geçerlidir. Bu başlangıç noktasından bağımsız olmalıdır ve sadece sol / sağ yüzde değerini dinamik olarak değiştirerek gerçekleşmelidir.
Hiçbir girişe izin verilmez, çıkış yürütme konsolunda olmalıdır!
Daha iyi anlamak için, Java'da size 723 puanı verecek okunabilir bir örnek:
public class DotJumper{
public static void main(String[] args){
int i = (int)(Math.random()*30);
int max = 29;
int step = 1;
int count = 30;
while(count>0){
if(i<=1){
i+=step;
}else if(i>=max){
i-=step;
}else{
if(Math.random() > 0.5){
i+=step;
}else{
i-=step;
}
}
print(i);
count--;
}
}
public static void print(int i){
while(i>0){
System.out.print(' ');
i--;
}
System.out.println('.');
}
}







int i = (int)(Math.random()*30);olması gerektiğini düşünüyorumint i = 1 + (int)(Math.random()*29);. Olduğu gibi, bunun0 >= x > 30yerine bir sayı üretir0 > x > 30.