PROGRAM Indovina2 IMPLICIT NONE REAL :: x INTEGER :: n=1,m,l,c INTEGER, DIMENSION(:), ALLOCATABLE :: seme CALL SYSTEM_CLOCK(c) CALL RANDOM_SEED(SIZE=l) ALLOCATE(seme(l)) CALL RANDOM_SEED(GET=seme) CALL SYSTEM_CLOCK(c) seme = seme + c CALL RANDOM_SEED(PUT=seme) DO WHILE(n /= 0) PRINT*,"Indovina il numero (intero da 1 a 10) - 0 per terminare:" READ*,n CALL RANDOM_NUMBER(x) m = 10*(x+0.1) IF ( n == m ) THEN PRINT*,"Hai indovinato! N =",n ELSE PRINT*,"Peccato, il numero giusto era ",m ENDIF END DO STOP END PROGRAM Indovina2