Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Moto G77: display AMOLED e buona autonomia per il midrange economico
Recensione Moto G77: display AMOLED e buona autonomia per il midrange economico
Motorola propone in fascia media il nuovo Moto G77 5G, uno smartphone che punta sul display AMOLED da 1.5K a 120Hz, e sulla fotocamera da 108 MP con stabilizzazione ottica per affrontare la fascia media. Il tutto insieme a una batteria da 5200mAh in soli 7,3 millimetri di spessore, con una scocca certificata con standard militari
DJI Lito 1 e Lito X1 recensione: i nuovi droni per principianti che non si fanno mancare nulla
DJI Lito 1 e Lito X1 recensione: i nuovi droni per principianti che non si fanno mancare nulla
DJI ha appena ufficializzato la serie Lito, la sua nuova gamma di droni entry-level destinata a chi si avvicina per la prima volta alla fotografia aerea. Al centro dell'annuncio ci sono due modelli ben distinti per fascia di prezzo e specifiche tecniche: DJI Lito 1 e DJI Lito X1. Entrambi si collocano sotto la soglia regolamentare dei 249 grammi, che permette di volare con requisiti burocratici più semplici rispetto ai droni più pesanti.
Sony World Photography Awards 2026: i premiati, anche italiani, il punto sulla fotografia di oggi
Sony World Photography Awards 2026: i premiati, anche italiani, il punto sulla fotografia di oggi
Siamo stati a Londra per la premiazione dei Sony World Photography Awards 2026, l'evento a tema fotografia più prestigioso. Fra sorprese e novità, ne approfittiamo per fare il punto sulla fotografia contemporanea, in cui la didascalia è sempre più necessaria a cogliere il senso della quasi totalità degli scatti.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-11-2009, 19:10   #1
Devil!
Senior Member
 
L'Avatar di Devil!
 
Iscritto dal: Feb 2003
Città: Padova
Messaggi: 5905
[Fortran] Indovinello

Chi sa già la risposta è pregato di non rispondere, gli altri provino a indovinare l'output di questo banalissimo programma:

Codice:
	program test
	implicit none
	integer i,j,k
	i=1
	j=3
	do k = i,j
		write(*,*) k
	end do
	write(*,*) k
	end
Forse sarà che sono noob, ma ciò mi lascia basito...
__________________

Devil! è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 20:13   #2
kurts
Senior Member
 
L'Avatar di kurts
 
Iscritto dal: Oct 2009
Città: Varese
Messaggi: 307
non conosco il fortran però mi butto:
1
2
3
3

ho indovinato?
kurts è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 20:18   #3
Devil!
Senior Member
 
L'Avatar di Devil!
 
Iscritto dal: Feb 2003
Città: Padova
Messaggi: 5905
Quote:
Originariamente inviato da kurts Guarda i messaggi
non conosco il fortran però mi butto:
1
2
3
3

ho indovinato?
No, magari fosse come dici te, non avrei perso un sacco di tempo per scoprirlo...
__________________

Devil! è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 20:21   #4
kurts
Senior Member
 
L'Avatar di kurts
 
Iscritto dal: Oct 2009
Città: Varese
Messaggi: 307
ah beh, allora ci stai ingannando!! avevi detto "banalissimo"

P.S.: che brutta sintassi il fortran, non invidio i fisici! (che nella mia università studiano fortran)
kurts è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 20:25   #5
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2789
Provo anch'io dai...
1
3
3

oppure

1
1
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 20:36   #6
kurts
Senior Member
 
L'Avatar di kurts
 
Iscritto dal: Oct 2009
Città: Varese
Messaggi: 307
Quote:
Originariamente inviato da wingman87 Guarda i messaggi
Provo anch'io dai...
1
3
3

oppure

1
1
umh... spiega spiega, non capisco
kurts è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 21:08   #7
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2789
Quote:
Originariamente inviato da kurts Guarda i messaggi
umh... spiega spiega, non capisco
Premetto che non conosco fortran. Dopo aver escluso la tua soluzione per il primo ho pensato: k deve assumere i valori i e j, quindi 1 e 3 e poi all'uscita dal ciclo vale ancora 3.
Per la seconda invece ho pensato: è un do ma senza condizioni (non conoscendo la sintassi del fortran) quindi fa la prima assegnazione k=1, stampa 1 e poi esce dal ciclo e stampa di nuovo 1.
Ora però mi verrebbe da dire anche
3
3
perché potrebbe assegnare a k i ma subito dopo j e sovrascriverla...
Comunque l'ho buttata lì... sinceramente non capisco neanche a cosa serva quel (*,*) nel write
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 21:22   #8
Devil!
Senior Member
 
L'Avatar di Devil!
 
Iscritto dal: Feb 2003
Città: Padova
Messaggi: 5905
write(*,*) serve solo per stampare a video, nulla di esotico

comunque non avete indovinato
__________________

Devil! è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 21:30   #9
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Quote:
Originariamente inviato da Devil! Guarda i messaggi
write(*,*) serve solo per stampare a video, nulla di esotico

comunque non avete indovinato
Scrive K per il numero di cicli in do, ... da quel che ricordo 1,3 sono i valori iniziali e finali da porre nel contatore (K).

Quindi teoricamente scrive il valore di K (il contatore) ad ogni ciclata (deduco siano 2, da 1 a 3).
Sbaglio?
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 21:33   #10
Devil!
Senior Member
 
L'Avatar di Devil!
 
Iscritto dal: Feb 2003
Città: Padova
Messaggi: 5905
Quote:
Originariamente inviato da michele.broggi Guarda i messaggi
Scrive K per il numero di cicli in do, ... sbaglio?
cioè? intendi così?
k
k
k
k

no, scrive 3 numeri, i primi 3 li ha indovinati kurts ma l'ultimo è quello interessante
__________________

Devil! è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 21:34   #11
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Quote:
Originariamente inviato da Devil! Guarda i messaggi
cioè? intendi così?
k
k
k
k

no, scrive 3 numeri, i primi 3 li ha indovinati kurts ma l'ultimo è quello interessante
Ovvio che non stampa le K ma il valore che prende... da 1 a 3... (quindi se mi dici che stampa tre numeri considera anche la terza posizione nello stato del ciclo )

Quindi 1 3 3 dici?
L'ultimo... è quel write (*,*) k fuori dal ciclo.
Bisogna sapere come il linguaggio gestisce le variabili..
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 21:36   #12
Devil!
Senior Member
 
L'Avatar di Devil!
 
Iscritto dal: Feb 2003
Città: Padova
Messaggi: 5905
Quote:
Originariamente inviato da michele.broggi Guarda i messaggi
Ovvio che non stampa le K ma il valore che prende... da 1 a 3...
Hai editato, prima non avevo capito

Quote:
Originariamente inviato da michele.broggi Guarda i messaggi
L'ultimo... è quel write (*,*) k fuori dal ciclo.
Bisogna sapere come il linguaggio gestisce le variabili..
Esatto, il problema è proprio qua, la soluzione è poco intuitiva
__________________

Devil! è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 21:39   #13
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Quote:
Originariamente inviato da Devil! Guarda i messaggi
Hai editato, prima non avevo capito
Lo so, avevo spiegato malissimo!

Quote:
Originariamente inviato da Devil! Guarda i messaggi
Esatto, il problema è proprio qua, la soluzione è poco intuitiva
Non so come alloca le variabili il linguaggio.
Secondo me o resta a (null) è dichiarato ma non ha un valore di riferimento, o assume l'ultimo valore del ciclo (3)... o non lo so. Io punto alla prima (null)
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 21:40   #14
Devil!
Senior Member
 
L'Avatar di Devil!
 
Iscritto dal: Feb 2003
Città: Padova
Messaggi: 5905
Quote:
Originariamente inviato da michele.broggi Guarda i messaggi
Secondo me o resta a (null) è dichiarato ma non ha un valore di riferimento, o assume l'ultimo valore del ciclo (3)... o non lo so. Io punto alla prima (null)
Nè (null) nè 3

Vi do la soluzione?
__________________

Devil! è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 21:41   #15
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Quote:
Originariamente inviato da Devil! Guarda i messaggi
Nè (null) nè 3

Vi do la soluzione?
SPARA
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 21:47   #16
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2789
Quote:
Originariamente inviato da Devil! Guarda i messaggi
no, scrive 3 numeri, i primi 3 li ha indovinati kurts ma l'ultimo è quello interessante
Ah ok, io mi ero concentrato sul do... Beh, visto che 'sto do funziona tipo un ciclo for all'uscita k potrebbe valere 4 e quindi stampare 4.
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 21:48   #17
Devil!
Senior Member
 
L'Avatar di Devil!
 
Iscritto dal: Feb 2003
Città: Padova
Messaggi: 5905
1
2
3
pi greco






scherzo
1
2
3
4

E ora, secondo indovinello.
Secondo voi, quanto ci ho messo io, niubbo che programma in Python da una decina di giorni e che conosce poco il Fortran e soprattutto era all'oscuro di questo arcano mistero, a tradurre questa subroutine da Fortran a Python???????
Tenete conto bisogna sistemare tutti gli indici perchè Python inizia a contare da 0, Fortran da 1 e perchè Python non elabora l'ultimo valore nel ciclo, mentre Fortran sì...

Codice:
      subroutine kersh(iout,nequ,nterm,ia,ja,sysmat,prec)

      implicit none

      integer  iout,nequ,nterm
      integer  ia(nequ+1),ja(nterm)

      integer  i,j,k,kk,k1,i1,j1,k2

      real*8   prec(nterm),sysmat(nterm)
      real*8   a,zero

      parameter (zero=0.0)

      do k=1,nterm
         prec(k) = zero
      end do

      do kk=1,nequ-1

         k = ia(kk)
         a = sysmat(k) - prec(k)
         if(a.le.zero) then
            write(iout,100) k,a
            write(iout,101) prec(ia(kk-1))
            a = (prec(ia(kk-1)))**2
         end if
         prec(K) = sqrt(a)
 
         i = ia(kk) + 1
         j = ia(kk+1) - 1


         do k1 = i,j
            prec(k1) = (sysmat(k1)-prec(k1))/prec(k)
         end do

         do k2 = i,j-1

            j1 = ia(ja(k2))
            prec(j1) = prec(j1) + prec(k2)**2
            i1 = k2 + 1
            j1 = j1 + 1
            do while(j1.lt.ia(ja(k2)+1).and.i1.le.j)
               if(ja(j1).eq.ja(i1)) then
                  prec(j1) = prec(j1) + prec(k2)*prec(i1)
                  i1 = i1 + 1
                  j1 = j1 + 1
               else if (ja(j1).lt.ja(i1))then
                  j1 = j1 + 1
               else if (ja(j1).gt.ja(i1))then
                   i1 = i1 + 1
               end if
            end do

         end do

         if(j.ge.i)
     1        prec(ia(ja(j))) = prec(ia(ja(j))) + prec(k2)**2

      end do

      k = ia(nequ) 
      a = sysmat(k)-prec(k)
      if(a.le.zero) then
         write(iout,100) nequ ,a
         write(iout,101) prec(ia(nequ-1))
         a = (prec(ia(nequ-1)))**2
      end if
      prec(k) = sqrt(a)

      return
100   format('*** Subroutine Kersh: diagonal',
     1       ' element <= zero at position: ',I5,2X,E16.5)
101   format('***** using previous diagonal value: ',E16.8)
      end
__________________

Devil! è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 21:54   #18
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2789
Quote:
Originariamente inviato da Devil! Guarda i messaggi
1
2
3
pi greco

Ci sono cascato... burlone!
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 22:29   #19
ndakota
Senior Member
 
L'Avatar di ndakota
 
Iscritto dal: Oct 2006
Città: milano
Messaggi: 1439
Quote:
Originariamente inviato da Devil! Guarda i messaggi
1
2
3
pi greco






scherzo
1
2
3
4

E ora, secondo indovinello.
Secondo voi, quanto ci ho messo io, niubbo che programma in Python da una decina di giorni e che conosce poco il Fortran e soprattutto era all'oscuro di questo arcano mistero, a tradurre questa subroutine da Fortran a Python???????
Tenete conto bisogna sistemare tutti gli indici perchè Python inizia a contare da 0, Fortran da 1 e perchè Python non elabora l'ultimo valore nel ciclo, mentre Fortran sì...

Codice:
      subroutine kersh(iout,nequ,nterm,ia,ja,sysmat,prec)

      implicit none

      integer  iout,nequ,nterm
      integer  ia(nequ+1),ja(nterm)

      integer  i,j,k,kk,k1,i1,j1,k2

      real*8   prec(nterm),sysmat(nterm)
      real*8   a,zero

      parameter (zero=0.0)

      do k=1,nterm
         prec(k) = zero
      end do

      do kk=1,nequ-1

         k = ia(kk)
         a = sysmat(k) - prec(k)
         if(a.le.zero) then
            write(iout,100) k,a
            write(iout,101) prec(ia(kk-1))
            a = (prec(ia(kk-1)))**2
         end if
         prec(K) = sqrt(a)
 
         i = ia(kk) + 1
         j = ia(kk+1) - 1


         do k1 = i,j
            prec(k1) = (sysmat(k1)-prec(k1))/prec(k)
         end do

         do k2 = i,j-1

            j1 = ia(ja(k2))
            prec(j1) = prec(j1) + prec(k2)**2
            i1 = k2 + 1
            j1 = j1 + 1
            do while(j1.lt.ia(ja(k2)+1).and.i1.le.j)
               if(ja(j1).eq.ja(i1)) then
                  prec(j1) = prec(j1) + prec(k2)*prec(i1)
                  i1 = i1 + 1
                  j1 = j1 + 1
               else if (ja(j1).lt.ja(i1))then
                  j1 = j1 + 1
               else if (ja(j1).gt.ja(i1))then
                   i1 = i1 + 1
               end if
            end do

         end do

         if(j.ge.i)
     1        prec(ia(ja(j))) = prec(ia(ja(j))) + prec(k2)**2

      end do

      k = ia(nequ) 
      a = sysmat(k)-prec(k)
      if(a.le.zero) then
         write(iout,100) nequ ,a
         write(iout,101) prec(ia(nequ-1))
         a = (prec(ia(nequ-1)))**2
      end if
      prec(k) = sqrt(a)

      return
100   format('*** Subroutine Kersh: diagonal',
     1       ' element <= zero at position: ',I5,2X,E16.5)
101   format('***** using previous diagonal value: ',E16.8)
      end
Ma solo a me non sembra Python?
ndakota è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 22:31   #20
Devil!
Senior Member
 
L'Avatar di Devil!
 
Iscritto dal: Feb 2003
Città: Padova
Messaggi: 5905
Quote:
Originariamente inviato da ndakota Guarda i messaggi
Ma solo a me non sembra Python?
appunto, è Fortran, io volevo tradurre la subroutine da Fortran a Python
__________________

Devil! è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Moto G77: display AMOLED e buona autonomia per il midrange economico Recensione Moto G77: display AMOLED e buona auto...
DJI Lito 1 e Lito X1 recensione: i nuovi droni per principianti che non si fanno mancare nulla DJI Lito 1 e Lito X1 recensione: i nuovi droni p...
Sony World Photography Awards 2026: i premiati, anche italiani, il punto sulla fotografia di oggi Sony World Photography Awards 2026: i premiati, ...
Una settimana con Hyundai Ioniq 5 N-Line: diverte e convince Una settimana con Hyundai Ioniq 5 N-Line: divert...
Recensione OPPO Find X9 Ultra: è lui il cameraphone definitivo Recensione OPPO Find X9 Ultra: è lui il c...
Panasonic presenta il nuovo obiettivo Lu...
Panasonic Lumix S9 Black Titanium Editio...
Thales Alenia Space risponde alle critic...
Intel aggiorna i driver Arc Pro: fino al...
La Cina blocca l'acquisizione di Manus d...
Le batterie al sodio di CATL raggiungono...
Samsung rischia 36 giorni di stop totale...
Huawei annuncia l'arrivo della serie Wat...
L'auto elettrica più veloce del m...
ASUS ha rilasciato il cavo salva-GPU: 50...
TeamViewer Intelligent Agent si rinnova ...
Il conflitto in Iran fa salire i prezzi ...
B05 di Leapmotor in Italia: hatchback el...
Addio app? OpenAI prepara lo smartphone ...
MacBook Air 13" con chip M5 in offerta s...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 22:11.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v