Program Deyimlerinin Yazılması

Slides:



Advertisements
Benzer bir sunumlar
Bölüm 11 Metin Dosyaları Metin Dosyaları Dosya Açma ve Kapama
Advertisements

STRİNG FONKSİYONLARI.
Prof. Dr. Eşref ADALI Yrd. Doç. Dr. Şule Gündüz Öğüdücü Sürüm-A
Değişkenler ve bellek Değişkenler
KLAVYE KULLANIMI.
Bilgisayar Programlama (Yrd. Doç. Dr. İbrahim ASRİ)
Ayrık Yapılar Matlab Notları
Bölüm 2 C Dilinin Temelleri
String Diziler(Katarlar)
Atama ve Girdi/Çıktı Komutları
Elektrik-Elektronik Mühendisliği Bölümü DİZİLER C Programlama Dili Yaz Stajı Cengiz TEPE SAMSUN 2007.
BPR152 ALGORİTMA VE PROGRAMLAMA - II
MATLAB’ de Programlama
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 4: Diziler
Fonksiyonlar ve Alt Programlar
7. DİZİLER Diziler birçok değişkene aynı adla ulaşmayı sağlayan bir grup veri yapısıdır. Bir dizi aynı tipte ve aynı adı paylaşan bir grup değişken demektir.
Tek Tablo İçinde Sorgulamalar
Bölüm 3 – Yapısal Programlama
Nesneye Yönelik Programlama
Fortran PROGRAMLAMA DİLİ
Bölüm 2 C Dilinin Temelleri Genel Kavramlar
PHP-Dosya ve Dizinler Internet Tabanlı Programlama Dr. Erman Yukselturk.
Yapısal Program Geliştirme – if, if-else
Fortran Proglama Dili’nin Esasları
Format Deyimleri Örnekleri;
Serbest (Basit) Giriş/Çıkış İşlemleri Formatlı Giriş/Çıkış İşlemleri Temel Kütüphane Fonksiyonları (Intrinsic Functions) Karşılaştırma Operatörleri ve.
MYSQL 4. HAFTA. mySQL veri türleri INTTamsayı: 'den kadar değişen diziye "signed" (işaretli), 0'dan 'e kadar değişenine.
6. HAFTA
Formül Hazırlama ve Kullanma
Veri Yapıları Veri, her türlü değer demektir. Veri yapılarının tasarlanma ve oluşturulma amacı; “verinin işlenmesini kolaylaştırmak ve bu işlemi daha verimli.
PROGRAMLAMA VE ASSEMBLY DİLİ
8. VİSUAL BASİC İLE TEMEL DOSYALAMA İŞLEMLERİ
Görsel C# Programlama Güz 2009 (6. Hafta).
C ile Programlamaya Giriş
DEĞİŞKENLER.
Programlamaya Giriş ve Algoritmalar
Diziler Adres Kavramı Nesnelerin Adresleri sizeof Operatörü
C PROGRAMLAMA DİZİLER (ARRAYS).
JAVA’DA DİZİLER Dr.Galip AYDIN.
Bölüm 3: Diziler BTEP 102 – Veri Yapıları ve Programlama
Bilgisayar Programlama. Tek bir değişken tanımlamak için aşağıdaki gibi bir yazım yeterlidir. int i; Hatırlanacağı gibi bu tarz bir tanımlamada.
DİZİLER Arrays.
Excel’de VBA programlama (Visual Basic Application) Ders 5
BİLGİSAYAR PROGRAMLAMA Ders 6: Diziler Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar Mühendisliği.
VERİ ve BELLEK & DEĞİŞKENLERİN SAKLANMASI Asst.Prof.Dr.Misket YEKTAY Gizem AYIK.
Bölüm 2 C Dilinin Temelleri Genel Kavramlar Yazım ve Noktalama Kuralları C Kütüphaneleri C Dilindeki Sözcükler Değer Sabitleri Veri Tipleri Değişkenler.
Programlamaya Giriş-I Bölüm-1. Algoritma Algoritma günlük yaşamımızda yaptığımız işler sırasında sıklıkla kullandığımız bir yöntemdir. Algoritma, bir.
7. HAFTA.
Fonksiyonlar ve Diziler
BİLGİSAYAR PROGRAMLAMA Ders 6: Diziler
STRING FONKSİYONLARI Dim ders As String
C Programlama Dili Bilgisayar Mühendisliği.
BİLGİSAYAR PROGRAMLAMA Ders 10: Dosyalama İşlemleri
4. GİRİŞ/ÇIKIŞ DEYİMLERİ 4.1. Giriş
Bilgisayar Programlamasına ve Veri Analizine Giriş
Prof. Dr. Eşref ADALI Doç. Dr. Şule Gündüz Öğüdücü Sürüm-B
FORTRAN PROGRAMLAMA DEYİMLERİ
C++ Programming:. Program Design Including
Bilgisayar Programlamasına ve Veri Analizine Giriş - VII
Uygulama-2   Yukarıdaki matrisi bir dosyaya kaydedin ve bu dosyadan matris değerlerini okuyarak matrisin 2. satır değerlerini.
Uygulama-2   Yukarıdaki matrisi bir dosyaya kaydedin ve bu dosyadan matris değerlerini okuyarak matrisin 2. satır değerlerini.
BÖLÜM 2 FORTRAN PROGRAMLAMA DİLİNE GİRİŞ
7. DİZİLER Bir dizi, aynı tipteki elemanların yan yana sıralanışı ile elde edilen bir bilgi kümesidir. Matematikte kullanılan doğal sayılar (1,2,3,..),
Program Deyimlerinin Yazılması
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
DO- CONTINUE Deyimi: Bir programda yer alan belirli işlemlerin, önceden bilinen bir düzende ve sayıda yenilenmesi amacı ile kullanılır. Deyimin genel yapısı:
NİŞANTAŞI ÜNİVERSİTESİ
Uygulama-1   Yukarıdaki matrisi bir dosyaya kaydedin ve bu dosyadan matris değerlerini okuyarak ekrana yazdıran bir.
NİŞANTAŞI ÜNİVERSİTESİ
Sunum transkripti:

Program Deyimlerinin Yazılması Program deyimleri 80 karakterlik bir alana belirli bir düzen içerisinde yazılır, 1.~5. kolon; İlk 5 kolona varsa deyim numarası yazılır. Deyim numaraları en çok 5 rakamlı işaretsiz tamsayılardan oluşur, eğer deyim numarası yoksa bu alan boş bırakılır. 1.kolona C harfi yazıldıktan sonra bunu takip eden 2.~72. kolonlara istenilen açıklayıcı bilgiler yazılır 6.Kolon; devam satırıdır. 6.kolona geçerli bir karakter yazarak deyimin devamını bir alt satıra yazabiliriz. 7.~ 72. Kolon; Bu alana FORTRAN deyimleri yazılır. Deyimi yazmaya alan içerisinde istenilen herhangi bir yereden başlanabilir. 73.~80. Kolon; Bu alan bilgi alanıdır, bu alandaki bilgiler derlenmez ama program listesinde görünür. Bazı tanımlayıcı bilgiler bu alana kaydedilir veya bu alan boş bırakılır.

Yardımcı Bellek (Dosya(FILE)) Kullanımı Giriş – Çıkış deyimleri, bilgisayarın merkez işlem birimi ile “dış ortam”, ve/veya “yardımcı bellek birimleri” arasında bilgi alışverişini sağlayan deyimlerdir. Genel Gösterimi; READ(k,n) (Değişkenler) WRITE (k,n) (Değişkenler) şeklindedir. k: giriş/çıkış biriminin veya dosyanın(FILE) numarasını gösteren tamsayıdır. n: Okunacak veya yazılacak değişkenlerin türünü ve dış ortamda yerleşme biçimini gösteren ilgili FORMAT deyiminin numarası Değişkenler: Okunacak veya yazılacak basit veya indisli değişkenlerin listesidir

Dosya (FILE) Açma Fortranda yardımcı bellek (Dosya/FILE) yaratma yada yaratılmış olan bir dosyayı açma işlemi için OPEN deyimi kullanılır. Genel Gösterimi: OPEN (UNIT=nof, FILE=‘fname’, STATUS=‘st’, ACCESS=‘ac’, FORM= ‘ft’, RECL=rl) şeklindedir......

fname: Yaratılacak ya da açılacak dosya (FILE) adıdır. OPEN (UNIT=nof, FILE=‘fname’, STATUS=‘st’, ACCESS=‘ac’, FORM= ‘ft’, RECL=rl) nof : Yaratılacak ya da açılacak dosyanın (FILE) numarasıdır. Bulunması zorunludur. fname: Yaratılacak ya da açılacak dosya (FILE) adıdır. st : Herhangi bir dosya (FILE) daha önce yaratılmış ya da ilk defa yaratılacak olabilir. OPEN deyiminde st yerine NEW yazılırsa dosyanın(FILE) yeni yaratılmakta olduğu, OLD yazılırsa daha önce yaratılmış olan bir dosyanın (FILE) açılmakta olduğu anlaşılır. ac : FILE’a (Dosyaya) erişim sıralı ya da doğrudan olabilir. Belirtilmezse sıralı erişim vardır. ft : Dosya (File) ile ilgili yapılacak okuma ya da yazma işlemlerinde format kullanılıp kullanılmayacağı belirtilir. Belirtilmezse formatsız olarak yapılır. rl : Kayıtların uzunluklarını tanımlamakta kullanılır. En uzun kayıt uzunluğu alınır. OPEN(5,FILE=‘D:GEO1.DAT') OPEN(13, STATUS='NEW', ACCESS='SEQUENTIAL', FORM='FORMATTED', RECL=15)

Dosya (FILE) Kapama Açılmış olan dosyaların (FILE) kapanması işlemi CLOSE deyimi kullanılarak gerçekleştirilir. Genel Gösterimi CLOSE (Unit=nof) şeklindedir, CLOSE (Unit=nof, STATUS=‘st’) şeklinde de yazılabilir, burada st Dosya kapatma türünü gösterir. (DELETE ve/veya KEEP durumları söz konusu olabilir. Dosyayı silmek için DELETE, saklamak için KEEP yazılır. CLOSE (11) veya CLOSE (11, STATUS=‘KEEP’)

DOSYA (FILE)’dan Okuma Dosya (FILE) dan okuma yapılması işlemi READ deyimi ile olur. Genel Gösterimi; READ (UNIT =nof, fno, END =sst, ERR =hst, REC =m) Değişken Listesi şeklindedir.  nof : Okuma yapılacak dosyanın numarasını fno: Okuma için kullanılan formatın deyim numarasını sst : Okuma işlemi bittiğinde ya da dosya sonunda devam edilecek deyim numarasını hst : Okuma sırasında ortaya çıkabilecek hatalar durumunda devam edilecek deyim numarasını m : Dosyada okuma yapılan kaydın numarasını Değişkenler Listesi: Birbirinden virgülle ayrılmış değerleri okutulacak değişkenleri gösterir.

READ (1,10,END = 20)GR,LR,NRM 10 FORMAT (f4. 2,I4,I5). READ(8,. ) DATE READ (1,10,END = 20)GR,LR,NRM 10 FORMAT (f4.2,I4,I5) ........ READ(8,*) DATE ......... DO 101 I=1,1440 READ(8,*,end=998)HOUR,MINUTE, FDATA(I) ........... 998 CALL PLOT(0.,0.,999)

ALAME=0. 35D12 SENSI=2. 0D-10 TAIGI=5. 0D-3 C PI=3 ............... .............. ALAME=0.35D12 SENSI=2.0D-10 TAIGI=5.0D-3 C PI=3.141592653589793D0 OPEN(15,FILE=‘mag1.dat',status='old') OPEN(26,FILE='res1.dat') READ(15,553) UN,R,F,P 553 FORMAT(4F10.0)

Dosya’ya (FILE) yazma Herhangi bir dosyaya veri girilmek ya da yazılmak istendiğinde WRITE değimi kullanılır. Genel yazılışı: WRITE(UNIT=nof, fn, ERR=sst,REC=m) Değişkenler listesi biçimindedir. nof: Yazılacak dosya numarası Fn : Format deyim numarası sst : Yazma hataları durumunda devam edilecek deyim numarasını gösterir m : Dosyada yazılacak kaydın numarasını gösterir WRITE(1,10, ERR=100, REC=5)D,E,F

WRITE(*,150) write (*,'(a\)' ) 'Enter File Name for daily average ' read (*,'(a14)' ) fnm11 c 150 FORMAT(1X,//) open ( 11, file=fnm11 , status='NEW') c ----------------------------------------------------------- c main routine NDAY=0 ....... WRITE(11,350) STN,dt1,dt2,npp write(*,350) stn,dt1,dt2,npp c WRITE( *,350) STN,f2,HH,NN4 350 FORMAT(1X,A4,3X,2(F15.5,3X),I5) C c CLOSE(10) CLOSE(11) STOP END

BİLDİRİ DEYİMLERİ Bildiri deyimleri, değişkenleri tanımlamak, değişkenlere başlangıç değeri vermek, programda kullanılan indisli değişkenler için bellekte ayrılacak alanları belirlemek ve ortak kullanılacak alanlar hakkında derleyiciye bilgi vermek için kullanılan deyimlerdir. İndisli değişkenlerin kullanıldığı programlarda, boyut sayısı, maksimum eleman sayısı programın başında bir bildiri deyimi ile verilmelidir. Bildiri deyimleri, programın başında ve uygulanabilir diğer deyimlerden önce yazılmalıdır.

Fortran Dilinde kullanılan temel bildiri deyimleri şunlardır; DIMENSION COMMON EQUIVALENCE Tip (Tür) Bildiri Deyimleri; DATA IMPLICIT EXTERNAL

DIMENSION Deyimi Bu deyim indisli değişkenlerin boyutlarını ve her boyuttaki maksimum eleman sayılarını tanımlamak için kullanılır Genel Gösterimi: DIMENSION X(K1), Y(K2),Z(K3) X,Y,Z indisli değişkenlerin adları, K1,K2, K3 ise bunların boyutlarını ve maksimum boyut sayısını belirleyen ve birbirlerinden virgüller ile ayrılan bir veya daha fazla tamsayı sabitleridir.

DIMENSION deyimi kullanılırken dikkat edilmesi gereken hususlar Bir indisli değişken bir programda sadece 1 kez kullanılmalıdır. Bir programda birden fazla DIMENSION komutu bulunabilir DIMENSION deyimi ile aynı türden olmayan indisli değişkenlerde tanımlanabilir. DIMENSION deyiminde tanımlanan indisli değişkenin tüm elemanları aynı türden olmalıdır. Dizinin her bir elemanı belleğe aynı türden bir değişken olarak atanır.

DIMENSION N(50), F(40,10) DIMENSION LAT(40), LON(40), SON(15,20,4) DIMENSION GH(120),SV(120),P(66),Q(66) DIMENSION DJ(101,101,60,3),DH(41,41,3) DIMENSION BVJ(101,101,60)

COMMON Deyimi COMMON deyimi, ana program ile alt programlarında veya çeşitli alt programlarda bulunan basit veya indisli değişkenlerin bellekte aynı yeri paylaşmaları istenilen durumlarda kullanılır. COMMON deyimleri isimli veya isimsiz olarak kullanılabilir. Genel Gösterimi: COMMON A1,A2,..... COMMON /LK1/BLK,F,S common /blk5/DJ(101,101,60,3),DH(41,41,3)

COMMON deyimi kullanılırken dikkat edilmesi gereken hususlar COMMON Deyimi, aynı alanı paylaşması istenilen değişkenlerin bulunduğu bütün ana ve alt programlarda yazılmalıdır. Ana program ve alt programda görülen COMMON deyimi listelerinin sayı, sıra ve tür bakımından uyumlu olmaları gerekir. İndisli değişkenler için kullanılan COMMON deyiminde boyutlar belirtilmiş ise ayrıca DIMENSION deyimi kullanılmaz......

C PROGRAM OF THE MAGNETIC ANOMALY C. C. VER. 1. 0 1995. 07. 19. C. c C PROGRAM OF THE MAGNETIC ANOMALY C ********************************* C ****** VER. 1.0 1995.07.19 ****** C ********************************* c ****** Ver. 3.001 2001.12.20 revised *** C ****** again to the uniform version *** C ************************************* C *** THE NEW PROGRAM OF 3D MOGI MODEL *** C IMPLICIT DOUBLE PRECISION(A-H,O-Z) DIMENSION DX(2),DY(2),DZ(2) c DIMENSION DJ(101,101,60,3),DH(41,41,3) c DIMENSION BVJ(101,101,60) DIMENSION SMTRX(3,3),DVJ(3),VJ(3) COMMON /BLK1/ALAME,F,S COMMON /BLK2/UN,LM,LN,LM2 COMMON /BLK3/DMGD,DMGW,DMGL,DMGH common /blk5/DJ(101,101,60,3),DH(41,41,3) common /blk6/BVJ(101,101,60)

EQUIVALENCE Deyimi Bu deyim yardımıyla aynı değişken alanına birden çok değişken yerleştirebilmemizi sağlar. Genel Gösterimi; EQUIVALENCE (X1),(X2),(X3),,,,, X(N) Her X, aynı yeri paylaşmaları istenilen ve virgüllerle ayrılmış olan iki veya daha fazla değişkenlerin listesidir.

EQUIVALENCE deyimi kullanılırken dikkat edilmesi gereken hususlar EQUIVALENCE deyimi yardımı ile dizinin tüm elemanları diğer bir veya birkaç dizinin elemenları ile özdeşlenebilir. Bu durumda dizinin sadece ilk elemanlarının özdeşlenmesi yeterlidir. DIMENSION H(10),D(10), Z(10) EQUIVALENCE (H(1),D(1),Z(1))

Tek boyutlu dizi elemanları, birden fazla boyutlu dizi elemanları ile özdeşlenebilir, böylelikle çok boyutlu diziler tek boyutlu dizi haline dönüştürülebilir. DIMENSION A(5), B(5,5) EQUIVALENCE ( A(1), B(1,1)) Aynı yeri paylaşmaları istenilen indisli değişkenlerin türü aynı olmalıdır.

Aynı yeri paylaşmaları istenilen indisli değişkenlerin birden çok elemanı EQUIVALENCE deyimindeki listede bulunamaz. Aynı yeri paylaşmaları istenilen indisli değişkenlerin boyut ve eleman sayıları EQUIVALENCE deyiminde belirtilmeksizin sadece adları kullanılmış ise birinci elemanlar özdeşlenir.

EQUIVALENCE deyiminde çok boyutlu dizi elemanları yerine bunların tek boyutlu karşılıkları kullanılabilir. DIMENSION H(19), D(15,12) EQUIVALENCE (H(3), D(3,4)) Yerine EQUIVALENCE (H(3), D(8)) kullanılabilir.

CMPLX(1)=(1.0,2.0) CMPLX(2)=(3.0,4.0) Çıktı: TC(3)=C TC(4)=D CMPLX(1)=(1.0,2.0) CMPLX(2)=(3.0,4.0) PROGRAM EQUIV COMPLEX*16 CMPLX(2) REAL*8 TAMPON(4) CHARACTER*8 STR CHARACTER*1 TC(8) EQUIVALENCE (TAMPON(1), CMPLX(1)) EQUIVALENCE (STR, TC(1)) STR = 'ABCDEFGH' DO 10 I=1,4 TAMPON(I)=I 10 CONTINUE PRINT *, 'TC(3)=', TC(3), ' TC(4)=', TC(4) PRINT *, 'CMPLX(1)=', CMPLX(1), ' CMPLX(2)=', CMPLX(2) END 8 karakterden oluşan STR değişkeni hafızada yine 8 karakterden oluşan TC dizini ile aynı yeri paylaşacaktır 8 gerçel sayıdan oluşan TAMPON değişkeninin 4 elemanı CMPLX dizininin 2 elemanı ile eşleşmiştir. CMPLX (1)‘in Gerçel ve Sanal kısımları TAMPON(1) ve TAMPON(2) ile aynı yeri paylaşmaktadır < CMPLX(1) >< CMPLX(2) > Memory ..==><===========><===========><==========><===========><==... < TAMPON(1) >< TAMPON(2) >< TAMPON(3) >< TAMPON(4) >

TİP (TÜR) Bildiri Komutları; Tip bildiri komutları, değişkenlerin, dizilerin ve fonksiyonların türlerini tanımlamak için kullanılırlar. Değişkenler tamsayı veya ondalıklı sayı türde iseler bunları programın başında tanımlama zorunluluğu yoktur, ancak I,J,K,L,M,N karakterlerinden herhangi birisiyle başladığı halde bir değişkeni program içerisnde ondalıklı sayı değişkeni olarak tanımlamak veya I,J,K,L,M,N dışındaki herhangi bir karakter ile başladığı halde bir değişkeni tamsayı değişkeni olarak tanımlamak gerekirse bu durum mutlaka program başında belirtilmelidir.

Ayrıca, programda kullanılan çift duyarlıklı, mantıksal (Logical), karmaşık (complex), ve alfabetik değişkenler de mutlaka programın başında tip bildiri deyimleri ile tanımlanması gerekir. Genel Gösterimi; 1. INTEGER Değişken Listesi 2. REAL Değişken Listesi 3. COMPLEX Değişken Listesi 4. LOGICAL Değişken Listesi 5. CHARACTER Değişken Listesi 6. DOUBLE PRECISON Değişken Listesi Değişken Listesi; virgüller ile ayrılmış değişken adları, deyim fonsiyonları veya dizi adları olabilir Bir değişken adının mutlaka program başında ve DATA deyiminden veya uygulanabilir deyimlerden önce tanımlanması gerekir.

INTEGER X,Y,Z REAL J,K,L,M COMPLEX C,F LOGICAL AB, CD(20,20) CHARACTER BETA, U, TOTAL DOUBLE PRECISION H(4,4) [DOUBLE PRECISION; Ondalık hane sayısı çok fazla olan sayılar için kullanılan bir deyimdir. Sayısal işlemler sonucu sayının ondalık kısmı normal hane sayısından fazla rakamlardan oluşmuşsa sayı yuvarlatılır ve bu nedenle bir yuvarlatma hatası meydana gelir. Böyle durumlarda sayı programın başında çift duyarlıklı (double precision) olarak tanımlanırsa bellekte ayrılan yer iki katına çıkartılmış olur. Bu tip sabitlerin kullanılması durumunda üs E harfi yerine D kullanılır, 13D-1, -5.36D+30, .745D-17 gibi....]

DATA Deyimi Data deyimi, program içerisinde kullanılan basit veya indisli değişkenlere başlangıç değe vermek için kullanılır. Genel Gösterimi: DATA Liste1/D1,D2,D3,....DN/,Liste2/D2,..Dm/.. Burada, liste1 ve liste2 başlangıç değerleri verilmesi istenilen indisli veya indissiz değişkenler listesi olup birbirlerinden virgül ile ayrılmış olarak yazılırlar. D1,D2,... Sabitleri gösterir,

c X AND Y AXIS LENGTHS DATA XAX/8. 0/, YAX/4. 8/ C C c X AND Y AXIS LENGTHS DATA XAX/8.0/, YAX/4.8/ C C... NUMBER OF DATA POINTS DATA N1/ 8/ C... X ORDINATE VALUES DATA XP1/0.0,1.0,2.0,3.0,4.0,5.0,6.0,7.0,0.0,0.0/ C... Y ORDINATE VALUES DATA YP1/37.57, 18.90, 9.691, 5.310, 3.502, 1 3.036, 3.0002, 3.0000, 2 45.03, 22.57, 11.39, 5.9179, 3.381, 3 2.430, 2.420, 2.238,0.0,0.0/ c................ DATA MONTH/31,28,31,30,31,30,31,31,30,31,30,31/

DATA Deyimi kullanılırken dikkat edilmesi gereken kurallar; Değişkenler ve sabitler arasında sayı ve tür yönünden birebir uyum olmalıdır Bir COMMON deyiminde kullanılan değişken DATA deyiminde gösterilemez DATA I,J,H/35,46,5.9/X,Y/6.8,89.56/

Fonksiyonlar ve Alt Programlar