Mostra notizie nelle discussioni
  • Avatar
    ☺
    Scritto da
    il 2013-01-10 02:09:07.0 alle 2013-01-10 02:09:07.0
    Trollate totali: 2001
    Che stampa a voi
    questo codicillo GO?

    package main
    import "fmt"
    
    func main() {
    	ε := 1.0
    	for (ε + 1) > 1 {
    		ε = ε * 0.5
    	}
    	fmt.Println(ε)
    }
    


    A me 1.1102230246251565e-16

    In Python:
    e = 1
    while (1+e) > 1:
      e = e*0.5
    e
    


    In javascript:
    var e=1; while ((e+1)>1) {e = e*0.5} alert(e);
    


    In codice RPN HP:
    « 1
      WHILE DUP 1 + 1 >
      REPEAT .5 *
      END
    »
    


    Per curiosità nel caso della mia HP48GX viene 3.63797880705E-12
    (Spero che il codice per la RPN sia giusto, è da parecchio che non ci programmo però il risultato pare essere credibile)

    **Modificato dall'autore il 10.01.2013 02:27**
    • Avatar
      ☺
      Scritto da
      avvelentani
      Cubicolario
      il 2013-01-10 16:43:35.0 alle 2013-01-10 16:43:35.0
      Trollate totali: 18184
      Re: Che stampa a voi
      Scritto da: Renton Thurston
      > questo codicillo GO?
      >
      >
      > package main
      > import "fmt"
      > 
      > func main() {
      > 	ε := 1.0
      > 	for (ε + 1) > 1 {
      > 		ε = ε * 0.5
      > 	}
      > 	fmt.Println(ε)
      > }
      > 

      >
      > A me 1.1102230246251565e-16

      stessa cosa

      >
      > In Python:
      >
      > e = 1
      > while (1+e) > 1:
      > e = e*0.5
      > e
      > 


      1.11022302463e-16

      >
      > In javascript:
      >
      > var e=1; while ((e+1)>1) {e = e*0.5} alert(e);
      > 


      come go.
      I think happiness is love
      - Vladimir Putin
      • Avatar
        ☺
        Scritto da
        il 2013-01-10 16:57:15.0 alle 2013-01-10 16:57:15.0
        Trollate totali: 2001
        Re: Che stampa a voi
        Scritto da: avvelentani
        > Scritto da: Renton Thurston
        > > questo codicillo GO?
        > >
        > >
        > > package main
        > > import "fmt"
        > > 
        > > func main() {
        > > 	ε := 1.0
        > > 	for (ε + 1) > 1 {
        > > 		ε = ε * 0.5
        > > 	}
        > > 	fmt.Println(ε)
        > > }
        > > 

        > >
        > > A me 1.1102230246251565e-16
        >
        > stessa cosa
        >
        > >
        > > In Python:
        > >
        > > e = 1
        > > while (1+e) > 1:
        > > e = e*0.5
        > > e
        > > 

        >
        > 1.11022302463e-16

        Probabilmente hai dato un "print e" anziché semplicemente e, anche a me usando print ha approssimato il risultato:

        >>> e = 1
        >>> while (1+e) > 1:
        ...  e = e*0.5
        ...
        >>> e
        1.1102230246251565e-16
        >>> print e
        1.11022302463e-16
        


        >
        > >
        > > In javascript:
        > >
        > > var e=1; while ((e+1)>1) {e = e*0.5} alert(e);
        > > 

        >
        > come go.
        >

        Mi chiedo se tutti i proci nei PC odierni danno lo stesso risultato. E Java che ha una sua rappresentazione interna indipendente dal microprocessore sottostante?
<softv>

Pagina generata in 86 millisecondi

Utenti attivi: 11 nell'ultimo minuto, 27 negli ultimi cinque minuti, 51 negli ultimi 15 minuti