Domanda

Quindi stavo leggendo in un libro di un certo paradosso: dicono che sei in una stanza con una porta di fronte a voi. Al fine di lasciare, però, si deve percorrere metà della distanza c'è ogni volta. Quindi il primo passo si effettua metà della distanza, e il secondo passo che fai una volta e mezzo, e così via (1/2 + 1/4 + 1/8), ecc L'affermazione è che se si potrà mai raggiungere la porta se si continua come questo. Questo è credo facile da dimostrare mediante calcolo, ma sarebbe interessante per simulare questo in Java o qualsiasi altro programma con una palla che inizia sul lato sinistro, e si fa strada verso il lato destro viaggiando metà della distanza di volta in volta, mentre mostra il numero di 'passi' adottate finora e il suo progresso. Mi piacerebbe farlo io, ma io sono ancora un principiante in Java e non so programmazione GUI. Qualcuno può simulare questo?

(Scusate se questa non è una domanda 'reale'. Sono solo molto curioso di quanti passi ci vorrebbe per la palla a look ancora come se fosse quasi.)

È stato utile?

Soluzione

Vedere questo grafico, che visualizza il paradosso:

http://www.wolframalpha.com/input/?i=1-1/(2^n)+for+0<n<10

Altri suggerimenti

verrà eseguito in limiti di numeri molto prima si esegue in l'altra porta. astratta è:

var Distance=100;
var Traveled=0;
var Remaining=Distance/2

while(Traveled < Distance){
  echo Remaining
  Traveled=Traveled+Remaining
  Remaining=Remaining/2

}

l'esecuzione di questo su una delle mie scatole che utilizzano PHP ha portato ..
50
25
12.5
6.25
3.125
1.5625
0.78125
0.390625
0.1953125
0.09765625
0.048828125
0.0244140625
0.01220703125
0.006103515625
0.0030517578125
0.00152587890625
0.000762939453125
0.0003814697265625
0.00019073486328125
9.5367431640625E-5
4.7683715820312E-5
2.3841857910156E-5
1.1920928955078E-5
5.9604644775391E-6
2.9802322387695E-6
1.4901161193848E-6
7.4505805969238E-7
3.7252902984619E-7
1.862645149231E-7
9.3132257461548E-8
4.6566128730774E-8
2.3283064365387E-8
1.1641532182693E-8
5.8207660913467E-9
2.9103830456734E-9
1.4551915228367E-9
7.2759576141834E-10
3.6379788070917E-10
1.8189894035459E-10
9.0949470177293E-11
4.5474735088646E-11
2.2737367544323E-11
1.1368683772162E-11
5.6843418860808E-12
2.8421709430404E-12
1.4210854715202E-12
7.105427357601E-13
3.5527136788005E-13
1.7763568394003E-13
8.8817841970013E-14
4.4408920985006E-14
2.2204460492503E-14
1.1102230246252E-14
5.5511151231258E-15

un po 'di analisi numerica in Java. dare un'occhiata alla questo

Questa è una delle di Zeno paradossi Dipende da quello che la tua definizione di "quasi" è. Da un punto di vista abbastanza lontano, può sembrare che è quasi arrivati ??non importa quale sia la distanza reale è.

Per quanto riguarda un programma per fare questo, la tua domanda è troppo ampia - potrebbe essere attuato in diversi modi. L'elemento chiave è aggiornare la distanza della palla a muro per essere la metà di quello che era in "frame" precedente o iterazione.

Se si vuole fare in C ++ ecco il codice:

float Distance;

cout << " Enter distance value :" << endl;
cin >> Distance;

while (Distance > 0){
    cout << Distance << endl;
(Distance = Distance /2);
}


return 0;

}

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top