DÜZENLİ YAZDIRMA ve OKUMA - BİÇİMLENDİRME
Formatlı WRITE komutunu kullanabilmek için formatsız WRITE(*,*) daki
ikinci asterisk yerine bir rakam veya karakter sabiti veya bir
format değişkeni kullanılabilir. Format Çıkış verilerinin nasıl düzenleneceğini
gösterir. Format, tamsayı, gerçel sayı, mantıksal ve karakter verilerinin
sayfa üzerindeki konumunu belirler.
Formatla ilgili olarak gerekli çizelge aşağıda verilmektedir.
| FORMAT tanımlayıcısı | Kulanımı |
| A Aw | karakter verisi |
| Ew.d | gerçel veriler üstel formda |
| ESw.d | Gerçel verile bilimsel formda |
| Fw.d | Gerçel değişkenler ondalıklı formda |
| Iw Iw.m | Tamsayı |
| Lw | Mantıksal veri |
| Tc | Tab: belirtilen satırda c sütununa gidilir |
| nX | yatay olarak n tane boşluk |
| / | düşey boşluk, 1 satır atlatma |
| yukarıda kullanılan : c | sütun sayısı |
| d | virgülden sonraki hane sayısı |
| m | gösterilebilecek minimum hane sayısı |
| n | boşluk sayısı |
| w | karakter alanının genişliği |
Programlama Öğütleri-3
1. Herhangi bir çıktı satırında ilk sütun kontrol karakteri için ayrılır.
Bu yüzden ilk sütuna herhangi bir şey yazdırılmaya çalıştırılmamalıdır.
Birinci sütuna herhangi birşey yazdırmaya çalışan format konutunu
kullanmayınız. Aksi durumda bu hataya neden olabilir.
2. WRITE komutunda kullandığınız veriler için formatta uygun format
tanımlayıcıları kullanınız. Integer bir veri formatta I ile, gerçel sayılar
ise E, ES veya F format tanımlayıcıları kullanınız. Logical veriler için L
tanımlayıcısını, karakter verileri için A format tanımlayıcını kullanınız.
Veri tipi ile format tanımlayıcısının farklı olması çalışan programın
istem dışı durmasına neden olabilir.
3. Sayısal verileri üstel formda göstermek istiyorsanız E göstergeci yerine
ES format tanımlayıcısını kullanınız.
4. Standart giriş ve çıkış işlemlerinde girdi ve çıktı üniteleri için
rakam yerine * karakterini kullanınız. Ünite numaraları işletim sistemine
göre değişmektedir. Bu yöntem yazmış olduğunuz programın başka platformlarda
kolay kullanımını sağlar.
5. Girdi dosyalarını daima STATUS='OLD' olarak açılmasını sağlayınız. Bu
tanımdan dolayı klasör içinde olmayan bir dosya için bir hata oluşacak ve
bu hata kodundan yararlanarak olmayan dosya oluşturulur. Dosya var ise zaten
sorun yoktur. Ayrıca dosyalar ACTION='READ' modunda açılırsa dosyaların
yanlışlıkla silinmesi olasılığı ortadan kalmış olur.
6. Çıktı dosyalarını daima yeniden oluşturulmasını istiyorsanız, dosyaları
STATUS='NEW' veya STATUS='REPLACE' olarak açınız (Kullandığınız
derleyicinin kullanım klavuzuna bakınız). Programınızın çalışmasını
bitirdikten takas dosyalarının silinmesini istiyorsanız STATUS='SCRATCH'
deyimini kullanınız. Bu durumda dosya kapatıldığı anda oluşan dosyalar
silinir.
7. Dosya ile ilgili işlemlerinizde daima IOSTAT=durum işlemini kullanarak
dosya sonu veya hata yakalama işlemlerinde başarılı olursunuz.
Dosya işlem komutları:
BACKSPACE [UNIT=lu] Örnek : BACKSPACE [UNIT=8]
CLOSE (kapama_listesi) Örnek : CLOSE (UNIT=8)
Örnek : CLOSE (UNIT=22, STATUS='DELETE',IOSTAT=istat)
Örnek : CLOSE (UNIT=22, STATUS='KEEP',IOSTAT=istat)
etiket FOMAT(format tanımlayıcısı, ...)
Örnek :
100 FORMAT('Test sonucu:', I)
READ (birim, format) giriş_listesi
Örnek :
READ (1, 100) zaman, hiz
100 FORMAT(F10.4, F18.4)
READ(1, '(I6)') indis
WRITE(birim, format) çıktı_listesi
Örnek :
WRITE(*,100)i, j, egim
100 FORMAT(1X, 2I10, F10.2)
WRITE(*,'(1X, 2I10, F10.2)')i, j, egim
OPEN (çıktı_listesi)
Örnek :
--------
OPEN(UNIT=8, FILE='IN', STATUS='OLD', ACTION='READ', &
IOSTAT=ihata)
UNIT - negatif olmayan tamsayıOPEN komutu ile belirtilen UNIT numarasında dosya açılır.
REWIND komutuREWIND(UNIT=lu) Örnek : REWIND(UNIT=8)