Comment puis-je format d'IMPRESSION ou d'ÉCRITURE de la déclaration de remplacer la ligne actuelle sur l'écran de la console?

Je veux afficher la progression d'un calcul fait avec une boucle sur l'écran de la console. Je peux imprimer les progrès de la variable à la borne comme ceci:

PROGRAM TextOverWrite_WithLoop
IMPLICIT NONE
INTEGER :: Number, Maximum = 10
 DO Number = 1, MAXIMUM   
  WRITE(*, 100, ADVANCE='NO') REAL(Number)/REAL(Maximum)*100     
  100 FORMAT(TL10, F10.2)
  ! Calcultations on Number     
 END DO    
END PROGRAM TextOverWrite_WithLoop

La sortie du code ci-dessus sur l'écran de la console est:

10.00 20.00 30.00 40.00 50.00 60.00 70.00 80.00
90.00 100.00

Tous sur la même ligne, enveloppé seulement par la fenêtre de la console.

La ADVANCE='No' argument et le TL10 (onglet à gauche afin de nombreux espaces) modifier le descripteur fonctionne bien pour remplacer le texte sur la même ligne, par exemple, la sortie du code suivant:

WRITE(*, 100, ADVANCE='NO') 100, 500
100 FORMAT(I3, 1X, TL4, I3)

Est:

500

Au lieu de:

100 500

En raison de la TL4 modifier descripteur.

À partir de ces deux cas, on peut conclure que la radiation de la déclaration ne peut pas remplacer ce qui a été écrit par une autre ÉCRITURE déclaration ou par une exécution précédente de la même ÉCRITURE satement (comme dans une boucle).

Surmonter cela en quelque sorte?

Je suis en utilisant le FTN95 compilateur sous Windows 7 RC1. (Le programme d'installation du compilateur G95 bluescreens Windows 7 RC1, même pensé qu'il fonctionne bien sur Vista.)

Je sais à propos de la question Supressing les sauts de ligne dans le Fortran 95 instructions d'écriture, mais il ne fonctionne pas pour moi, parce que la réponse à cette question implique une nouvelle sortie est ajoutée à la précédente sortie sur la même ligne; au lieu de la nouvelle sortie d'écraser la précédente sortie.

Merci d'avance.

  • Le compilateur et les OS es-tu?
  • compilateur = FTN95, OS = Windows 7 RC1
  • Peut-être que vous devriez accepter une réponse?
InformationsquelleAutor systemovich | 2009-09-07