Standart matematik fonksiyonları ve pascal prosedürleri. Pascal prosedürleri ve işlevleri. Pascal ABC'de tam sayı türleri

  • 31.10.2019

Programlamada, herhangi bir bilimde olduğu gibi (aynı zamanda bir sanat olmasına rağmen), tarihsel zaman boyunca deneyim birikir, çeşitli problemleri çözme yöntemleri. Birçok sorunun çözümü oldukça çok yönlüdür. Yıllar önce yazılmışsa ve programcı topluluğu tarafından onaylanmışsa, onu çözmek için her seferinde bir algoritma yazmaya gerek yoktur. Bu tür algoritmalar, fonksiyonlar ve modüller şeklinde tasarlanır ve daha sonra burada ve şimdi yazılan programlarda kullanılır.

Bir işlev veya prosedür, programlama dilinin kendisine zaten dahil edilmiş olabilir veya programa "bağlanması" gereken bir modüle dahil edilmiş olabilir.

Pascal programlama dilinin standart (dilde bulunan) işlevleri aşağıda açıklanmıştır.

aritmetik fonksiyonlar

Aritmetik fonksiyonlar sadece tamsayı ve gerçek değerlerle kullanılabilir.

İşlev Randevu Sonuç türü
abs (x) argümanın mutlak değeri argümanın türüyle eşleşir
kare (x) argüman karesi argümanın türüyle eşleşir
kare (x) argümanın karekökü gerçek
çünkü (x) argümanın kosinüsü gerçek
günah (x) argüman sinüsü gerçek
arktan (x) argümanın arktanjantı gerçek
deneyim (x) eski gerçek
ln (x) doğal logaritma gerçek
int (x) sayının tamsayı kısmı gerçek
frak (x) bir sayının kesirli kısmı gerçek

Tür dönüştürme işlevleri

Bu işlevler, nicelik türlerini, örneğin karakterden tamsayıya, gerçekten tamsayıya vb. dönüştürmek için tasarlanmıştır.

Farklı türlerde ortak işlemleri ve veri dönüşümlerini gerçekleştirmek için STANDART adı verilen önceden tanımlanmış işlevler vardır. Bir işlevi çağırmak için, adını ve parantez içinde bir argüman (parametre) listesi belirtmelisiniz.

Standart işlevlere geçmeden önce, kullanım kurallarını tanıyalım:

  • 1. Fonksiyonun adı Latin alfabesinin büyük harfleriyle yazılır.
  • 2. İşlev argümanı, işlev adından sonra parantez içinde yazılır.
  • 3. İşlev argümanı bir sabit, bir değişken veya aynı türden bir aritmetik ifade olabilir.

Şimdi bazı standart fonksiyonlara bakalım:

İşlev Eylem Türü X Dönüş türü

SQRT (X), X gerçek gerçek argümanının karekökünü hesaplar

SQR (X), X tamsayı gerçek tamsayı gerçek argümanının karesini hesaplar

RANDOM (X) rasgele bir sayı döndürür, işlevi çağırmadan önce, rasgele sayı üreteci tamsayısının rasgele başlatılmasını içeren programda RANDOMIZE operatörünün kullanılması önerilir, pozitif değeri alan değişkenin türüne karşılık gelir

SIN (X), X gerçek gerçek argümanının sinüsünü hesaplar

COS (X), X gerçek gerçek argümanının kosinüsünü hesaplar

ABS (X), X tamsayı gerçek tamsayı gerçek argümanının mutlak değerini (modülü) hesaplar

ODD (X), X'i eşlik uzun boole tamsayı için kontrol eder

ORD (X), geçerli bir uzun tamsayı dışında herhangi bir tür olan X karakterinin sıra numarasını belirtir.

CHR (X), X bayt karakter sıra numarasındaki karakteri tanımlar

PRED (X), geçerli aynı türden başka herhangi bir türe göre önceki değeri belirtir.

SUCC (X), aynı türden geçerli bir tür dışında herhangi bir tür X ile ilişkili olarak sonraki bir değeri belirtir.

ARCTAN (X), X'in gerçek olduğu argümanının arktanjantını hesaplar

EXP (X), X gerçek gerçek argümanının üssünü hesaplar

LN (X), X reel real'in doğal logaritmasını hesaplar

TRUNC (X), X'in tamsayı kısmını gerçek bir uzun tamsayı bulur

ROUND (X) X'i en yakın gerçek uzun tam sayıya yuvarlar

INT (X), X geçerli geçerli argümanının tamsayı kısmını döndürür

FRAC (X), X geçerli gerçek argümanının kesirli kısmını döndürür

DEC (X, N), X değişkeninin değerini, gerçek aynı tür hariç herhangi bir türde verilen bir N sayısı kadar azaltır

INC (X, N), X değişkeninin değerini, gerçek aynı tür hariç herhangi bir türde belirli bir N sayısı kadar artırır

PI bir sayının değerini döndürür - geçerli

  • 1. ORD ('R') = 82; ORD (5) = 5;
  • 2. CHR (68) = 'D'; fonksiyon argümanı sabit ise bu fonksiyonu # ile çağırabilirsiniz (# 68 = "D");
  • 3. PRED ('N') = 'M'; ÖNCEDEN (87) = 86;
  • 4. SUCC ('S') = 'T'; SUCC (87) = 88;
  • 5. PI = 3.141592653897932385;
  • 6. YUVARLAK (3.1415) = 3;
  • 7. LN (1) = 0.000;
  • 8. SQRT (36) = 6.000;
  • 9.SIN (90 * pi / 180) = 1.000.

Yorum:

Trigonometrik fonksiyonlarda, argüman sadece açının radyan ölçüsünde belirtilmelidir.

ÖRNEK: Karakter değerlerini işleyen basit bir program yazalım.

VAR c: Karakter; n: Bayt;

CONST Boş = ""; Boşluk: Karakter = Boş;

YAZMAYA BAŞLAYIN ("bir karakter girin"); OKUYUN (c);

WRITELN ("bir karakter girdiniz", Boşluk, c, Boşluk, "sayısı =", Ord (c));

WRITELN ("bitişik karakterler:", Boşluk, Pred (c), Boşluk,

"ve", Boşluk, Succ (c));

YAZILI ("UpCase (", c, ") =", UpCase (c)); YAZILI;

Space: = "" "; WRITE (" şimdi 33 ile 255 arasında bir sayı girin "); READ (n);

WRITELN ("sayılı karakter", n, "is", Boşluk, Chr (n), Boşluk);

Aritmetik veriler için, ör. sayısal sabitler, değişkenler ve sayısal işlevler için altı aritmetik işlem tanımlanmıştır:

Ek

Çıkarma

* çarpma işlemi

/ gerçek bölme

Bölmenin DIV tamsayı kısmı

MOD bölümün kalanı

İlk dört operatör, hem tamsayı hem de gerçek herhangi bir işlenen için tanımlanır ve "/" operatörünün sonucu, her iki işlenen de tamsayı olsa bile, her zaman gerçek bir sayıdır. DIV ve MOD işlemleri yalnızca tamsayı işlenenleri için tanımlanır. Ek olarak, ikiye değil, bir işlenene uygulanan "-" tekli işlem tahsis edilir, örneğin: -x.

Genel olarak konuşursak, Pascal dili bir ifadede farklı işlenen türlerinin kullanılmasını yasaklar, ancak aritmetik veriler için bir istisna yapılmıştır. Bir aritmetik işlem gerçekleştirmeden önce, bir veya her iki işlenen otomatik olarak aynı türe dönüştürülür ve ardından ifadeye değiştirilir. Herhangi bir ifadenin değeri her zaman belirli bir türe sahiptir - aynı türe dönüştürdükten sonra işlenenlerle aynı. Tamsayı türlerini dönüştürme kuralları Tablo 2'de gösterilmiştir.

Tablo 2

Tür dönüştürme kuralları

işlenenler Bayt KısaInt Kelime tamsayı UzunInt
Bayt tamsayı tamsayı Kelime tamsayı UzunInt
KısaInt tamsayı tamsayı UzunInt tamsayı UzunInt
Kelime Kelime UzunInt Kelime UzunInt UzunInt
tamsayı tamsayı tamsayı UzunInt tamsayı UzunInt
UzunInt UzunInt UzunInt UzunInt UzunInt UzunInt

Bir ifadenin bir işleneni bir tamsayı türüne sahipse ve ikincisi gerçekse, ilki otomatik olarak gerçek bir türe dönüştürülür ve ifadenin değeri gerçek olur. Tamsayı değerler gerçek bir değişkene atanabilir, ancak gerçek değerler bir tamsayı değişkenine atanamaz! Bir tamsayı değişkene ve sabite değer atarken, bu değerin değişkenin geçerli değer aralığının dışına çıkmadığından emin olmalısınız. Pascal'da bir tamsayı değerini herhangi bir tamsayı türüne dönüştürmek mümkündür; bunun için Byte, ShortInt, Word, Integer ve LongInt adlı standart işlevler kullanılır. Örneğin, Word türünde bir değişkeni Tamsayı türüne dönüştürelim:

YAZILI (x, "", Tamsayı (x));

YAZILI (x, "", Tamsayı (x));

Programın çıktısı:

İlk durumda, dönüşüm doğru bir şekilde gerçekleşir ve ikincisinde - değerde bir değişiklik olur.

Bir aritmetik ifade, herhangi bir sayıda işleneni ve buna bağlı olarak, önceliklerine göre belirlenen sırada gerçekleştirilen herhangi bir sayıda işlemi içerebilir; *, /, DIV, MOD işlemleri + ve - işlemlerinden daha yüksek önceliğe sahiptir. Aynı önceliğe sahip işlemler soldan sağa doğru yapılır. İşlemlerin gerçekleştirilme sırasını değiştirmek için ifadede parantez kullanabilirsiniz. Örneğin, X'i A, B ve C'nin toplamına bölme oranını hesaplayalım:

Pascal dilinde yerleşik matematiksel işlevler kümesi küçüktür, şunları içerir:

1. Abs (x) - sayının mutlak değeri.

2. Int (x) - bir gerçek sayının tamsayı kısmı.

3. Frak (x) - gerçek bir sayının kesirli kısmı.

4. Trunc (x) - LongInt türüne dönüştürülmüş gerçek sayının tamsayı kısmı.

5. Yuvarlak (x) - bir tam sayıya yuvarlanmış, LongInt türüne dönüştürülmüş gerçek bir sayı.

6. Kare (x) bir sayının karesidir.

7. Sqrt (x) - karekök.

8. Exp (x) - üs.

9. Ln (x) doğal logaritmadır.

10. Pi - pi sayısı.

11. Günah (x) - sinüs.

12. Cos (x) - kosinüs.

13. Arctan (x) - arktanjant.

Diğer tüm matematiksel fonksiyonlar bu temel set kullanılarak elde edilebilir; örneğin: ondalık logaritma - Ln (x) / Ln (10), tanjant - Sin (x) / Cos (x), vb. İşlev bağımsız değişkenleri herhangi bir aritmetik ifade olabilir ve işlev adından sonra parantez içinde belirtilir, Sin ve Cos işlev bağımsız değişkenleri radyan cinsinden ifade edilir. 70 derecenin sinüsünün karesini hesaplayın: Sqr (Sin (Pi / 180 * 70))

Yukarıda listelenen matematiksel fonksiyonlara ek olarak, Pascal çeşitli amaçlar için birkaç daha kullanışlı sayısal fonksiyon ve prosedür sağlar:

14. Yüksek (tamsayı türü) - Verilen türün olası en yüksek değerini döndürür.

15. Düşük (tamsayı türü) - Verilen türün olası en küçük değerini döndürür.

16. SizeOf (tür)

SizeOf (değişken) - Belirtilen türün veya belirtilen değişkenin bayt cinsinden boyutunu döndürür. SizeOf işlevi, yapılandırılmış türler - diziler, kayıtlar ve aşağıda tartışılacak olan diğerleri dahil olmak üzere herhangi bir türe uygulanabilir.

17. Rastgele (Aralık: Kelime) - 0 ile Aralık-1 aralığında bir tamsayı rasgele sayı döndürür.

18. Rastgele - bir segmentten gerçek bir rastgele sayı döndürür.

19. Randomize - mevcut sistem zamanını kullanarak rasgele sayı üretecini başlatan bir prosedür

0 ile 99 arasında değişen bazı rasgele sayılar yazdıralım:

YAZILI (Rastgele (100));

YAZILI (Rastgele (100));

YAZILI (Rastgele (100));

Programın ilk başlangıcında, ikinci çalıştırmada - 63, 99, 6, üçüncü çalıştırmada - 23, 87, 92 13, 38, 48 rakamlarını gösterdi. Bu Randomize prosedürünün eylemidir - çünkü her başlatmada, DOS işletim sistemi tarafından sayılan sistem zamanı farklıydı, her seferinde farklı bir rasgele sayı dizisi aldık. Şimdi Randomize operatörünü programdan çıkaralım; ve birkaç kez çalıştırın - her seferinde 0, 3, 86 üçlü sayılarını alacağız.

Çağrı ifadesinde prosedürün kullanıldığına ve ifadede fonksiyonun kullanıldığına dikkat edin. Rastgele (100) kayıt; Random bir işlev olduğundan yanlıştır, ancak WRITELN (Randomize); ayrıca yanlıştır. Bir prosedür ve bir fonksiyon arasındaki farkı, prosedürün belirli bir eylem dizisini gerçekleştirmesi ve fonksiyonun bir değeri hesaplaması bakımından düşünebilirsiniz. READ ve WRITE'ın da prosedürler olduğunu unutmayın.

Çift baytlı tam sayıların (Word veya Tamsayı gibi) dahili ikili gösterimiyle çalışmak için işlevler vardır:

20. Lo (x) - bağımsız değişkenin en az anlamlı baytını döndürür.

21. Merhaba (x) - bağımsız değişkenin en önemli baytını döndürür.

22. Swap (x) - düşük ve yüksek baytları değiştirir.

İkili sayı sistemi hakkında bir arasöz yapalım. Bilgisayarın belleğindeki tüm veriler ikili bir sistemde kodlanmış olarak saklanır. Herhangi bir değişken bir tamsayı bayt kaplar ve her bayt 8 ikili basamak - bit dizisidir. Örneğin, 11'e eşit Bayt türündeki bir değişkenin değeri, 0000 1011 bit dizisi olarak depolanır ve değişken Word türündeyse, değeri 0000 0000 0000 1101, 1024 bayt (veya 2'den 2'ye kadar) olarak kodlanır. 10. güç) adlarına sahiptir - bazen kilobayt olarak da adlandırılan 1K bayt; 1024K bayta megabayt denir. Word t değişkeni 40000 veya ikili olarak 1001 1100 0100 0000 değerine sahip olsun, o zaman Lo (t) işlevi 64 (= 0100 0000), Hi (t) işlevi 156 (= 1001 1100) döndürür ve Takas (t) işlevi 16540 (= 0100 0000 1001 1100) döndürür.

Tamsayı değişkenleri için prosedürler tanımlanır:

Burada x bir değişken adıdır, d herhangi bir tamsayı ifadesidir. Inc prosedürü değişkenin değerini d kadar artırır ve Dec prosedürü onu d kadar azaltır; bu prosedürlerin ikinci argümanı atlanabilir, o zaman 1'e eşit olduğu varsayılır. Örneğin, a operatörleri yerine: = a + 3; b: = b-1; c: = c + a + b; Inc (a, 3); Aralık (b); Inc (c, a + b); ve bu şekilde yazma tercih edilebilir.

S.A. Grigoryev

6. Karakter veri türü

Sembolik bilgileri Pascal'da saklamak için özel bir veri türü Char sağlanır. Bu türden değişkenlere, türlenmemiş ve türetilmiş sabitlere izin verilir. Karakter verileri 1 bayt bellek kaplar. Adsız sembolik sabitler programda "sembol" veya #sayı olarak yazılır. Mevcut tüm karakterler 0'dan 255'e kadar numaralandırılmıştır, 0'dan 31'e kadar olan karakterler görünmezdir, kural olarak ekranda görüntülenmezler, 32. karakter bir boşluktur. Diğer bazı sembollerin numaralarını da verelim (bu sayıları hatırlamaya gerek olmasa da):

"0"..."9" - 48...57,

"A" ... "Z" - 65 ... 90,

"a" ... "z" - 97 ... 122,

"A" ... "Ben" - 128 ... 159,

"a" ... "p" - 160 ... 175,

"p" ... "i" - 224 ... 239.

Yararlı bulabileceğiniz bazı görünmez semboller: sembol # 7 - "bip", çıktı alırken bip sesi çıkarır; karakter # 10 - "satır sonu", çıktı verirken mevcut çıktı konumunu bir satır aşağı kaydırır; karakter # 13 - "satır başı" - geçerli çıkış konumunu geçerli satırın başına taşır. Enter tuşunun iki karakter oluşturduğunu unutmayın - # 10 ve # 13, bu daha sonra işinize yarayabilir.

Karakter verileri OKUMA ve YAZMA prosedürleri ile giriş ve çıkış yapılabilir; giriş ve çıkış yapıldığında karakter değerleri kesme işareti olmadan görüntülenir. Sembolik değerler için aşağıdaki fonksiyonlar tanımlanmıştır:

25. Ord (c) - sembolün numarasını döndürür.

26. Pred (c) - 1'den küçük bir sayıya sahip bir karakter döndürür.

27. Succ (c) - 1'den büyük bir sayıya sahip bir karakter döndürür.

Ancak bu işlevler yalnızca semboller için değil, herhangi bir sıralı veri türü için de tanımlanır. Sıralı bir tür, tüm kabul edilebilir değerleri 0'dan bazı N'ye kadar numaralandırılabilen bir türdür (matematikte, sayılabilir bir küme kavramı bu kavrama yakındır). Bildiğimiz türlerin tüm tamsayı türleri sıralıdır: Byte, ShortInt, Word, Integer, LongInt - ve tüm gerçek türler sıralı değildir. Sayısal bir bağımsız değişkenin Sıra işlevi değeri, bu bağımsız değişkenin kendisine eşittir, Öncül (x) x-1 değerini ve Succ (x) x + 1 değerini verir. İşlev

bir anlamda Ord'un tersidir: belirli bir sayısal argüman n için, karşılık gelen sayıya sahip karakteri döndürür. Inc ve Dec. prosedürleri, sembolik değişkenler için (aynı zamanda sıralı türden herhangi bir değişken için) tanımlanmıştır. Karaktere özgü başka bir işlev:

Argümanın değerini, küçük bir Latin harfiyse, karşılık gelen büyük harfe dönüştürür. Ne yazık ki, işlev Rus harfleri için çalışmıyor.

31.01.2019 Pascal öğren

Pazar günü sitede yeni bir bölüm açıldığından - problem çözme, matematiksel işlemlerin, fonksiyonların ve prosedürlerin ana bölümünü hızlı bir şekilde incelememiz gerekiyor.

Bir fonksiyon ve prosedürün ne olduğunu görelim. Bu bir alt programdır - belirli bir algoritmayı yürüten ve genel programın farklı bölümlerinden erişilebilen bir programın bir parçasıdır. Bir prosedür ve bir fonksiyon arasındaki fark nedir?

Prosedürler - mini programlar.

Prosedürler, bir alt programda birden fazla sonuç gerektiğinde kullanılır. Aşağıdaki resimden prosedürün nasıl çalıştığını görebilirsiniz. Hiç girdi verisi olmayabilir, ama belki yüz tane.

Örneğin, bir programcı süper kodundaki çıkış değerlerinin blokları arasına 20 ve işareti yazmak istiyor. İşleri kendisi için kolaylaştırmak için basit bir alt program yazacak.

Süper süper program; var'da çok fazla harf var; prosedür işareti; yazmaya başla ("&&&&&&&&&&&&&&&&&&&&&&&&"); son; süper karmaşık koda başlayın; ve işareti; süper karmaşık kod; ve işareti; süper karmaşık kod; ve işareti; süper karmaşık kod; ve işareti; son.

Pascal'daki fonksiyonlar mega değişkenlerdir.

Bir işlev, bir işlev yürütüldükten sonra koddaki yerine bir sayı, harf, dize vb. konulması bakımından bir prosedürden farklıdır. Pascal dilinde yerleşik işlevler kümesi oldukça geniştir. Örneğin bir sayının karesini hesaplamak için standart sqr (x) fonksiyonunu kullanabilirsiniz. Muhtemelen şimdiye kadar anladığınız gibi, sqr (x) yalnızca bir gerçek parametre gerektirir - bir sayı.

Örnek: a: = kare (4).

Not! Fonksiyonlar atanmalıdır! Bunları programın metnine prosedür olarak yazarak hiçbir şey elde edemezsiniz!

Fonksiyonun yapısı aşağıdaki resimde gösterilmiştir.

Programa yeni bir benzersiz fonksiyon eklemek gerekirse, prosedür olarak aynı şekilde açıklanmalıdır. 10 derste kendi prosedürlerinizi ve işlevlerinizi nasıl yapacağınız hakkında daha ayrıntılı konuşacağız. Aşağıda Pascal'daki ana standart işlevlerin ve prosedürlerin bir tablosunu görebilirsiniz.

Matematik fonksiyonları

İsimargüman türüHesaplama sonucuÖrnek
Karın (x)Bütün veya Şey.Modül xKarın (-6) = 6
Kare (x)Gerçekx'in köküKare (25) = 5
Kare (x)Bütün ve Şey.x kareKare (5) = 25
Güç (x, a)GerçekX bir değerGüç (5.3) = 125
Frak (x)Gerçekkesirli kısım xFrak (5.67) = 0.67
günah (x)Gerçeksinüs xGünah (45) = 0.8509
çünkü (x)Gerçekkosinüs xCos (45) = 0,5253
Arktan (x)Gerçekarktanjant xArctan (5) = 1.3734
Int (x)Gerçekx'in tamamıİnt (5.67) = 5.0
Rastgele (x)TümRastgele sayı (0..x-1)Rastgele (5) = 4
(x)sıraSonrakiÖz (10) = 11
Pred (x)sıraÖncesiPred ('Z') = 'Y'

matematiksel prosedürler

Inc (x, a)TümX: = X + AInc (5) = 6
Aralık (x, a)TümX: = X-AAralık (25.20) = 5

Tür dönüştürme

Kısayol (x)Gerçekx'in tamamıKesik (5.67) = 5
Yuvarlak (x)Gerçekx'i bir tam sayıya yuvarlamaTur (5.67) = 6
Önemli! x = 5.5 ise, sonuç 6'dır ve x = 6.5 ise, sonuç da 6'dır!?

Div ve mod işlemleri.

Bazen bölümü veya bölmenin kalanını bulmamız gerekir. Böyle zamanlarda div ve mod gibi işlemler imdadımıza yetişiyor. Bu işlemlerin yalnızca tamsayılar üzerinde gerçekleştirildiğini unutmayın.

Böl

Bölmenin bölümünü bulmak için div işlemini kullanırız.

  • 25 bölü 20 = 1;
  • 20 bölme 25 = 0;
  • 39 bölü 5 = 7;
  • 158 bölü 3 = 52.

Mod

Bölmenin kalanını bulmak için mod işlemini kullanırız.

  • 25 mod 20 = 5;
  • 20 mod 25 = 0;
  • 39 mod 5 = 4;
  • 158 mod 3 = 2.

Sonunda neyle uğraştığımızı anlamak için aşağıdaki sorunu çözeceğiz:

Amaç 1.İki basamaklı bir sayının rakamları toplamını bulun.

Bu görev çok basit olduğu için bir akış şeması ve bir program ile yöneteceğiz.

Sumoftwo programının blok şeması; var Number, Num1, Num2, Sum: tamsayı; yazmaya başlayın ("İki basamaklı bir sayı girin:"); oku (Sayı); (25 sayısını alalım) Sayı1: = Sayı div 10; (25 bölüm 10 = 2) Num2: = Sayı mod 10; (25 mod 10 = 5) Toplam: = Num1 + Num2; (2 + 5 = 7) yazın ("İki sayının toplamı -", ​​Sum); son.

Amaç 2.Üç basamaklı bir sayının rakamları toplamını bulun.

Önceki sorunun biraz karmaşık bir versiyonu. En büyük zorluk ikinci basamaktır.


Div ve modun önceliği, + ve -'nin önceliğinden daha büyüktür. Bu nedenle, bu programda parantez olmadan yapabilirsiniz. Sumoftree programı; var Number, Sum: tamsayı; yazmaya başlayın ("Üç basamaklı bir sayı girin:"); oku (Sayı); (255 atın) Toplam: = Sayı div 100 + Sayı mod 10 + Sayı div 10 mod 10; (255 div 100 + 255 mod 10 + 255 div 10 mod 10 = 12) yazar ("Üç sayının toplamı -", ​​Sum); son.

Bu kadar. Bir sonraki dersimizde PascalABC.Net'in özelliklerini incelemeye başlayacağız.

Pascal programlama dilinin standart fonksiyonları tabloda verilmiştir. bir

Tablo 1:

Fonksiyon adı İşlem yapılıyor
ABS (X) x argümanının modülünü hesaplar, x tipi gerçek veya tamsayı, sonucun tipi argüman tipi ile aynı
Kare (X) Argümanın karesini hesaplar (x 2), x yazın - gerçek veya tamsayı, sonuç argümanın türüyle aynı
SQRT (X) x (x> 0) argümanının karekökünü hesaplar; x yazın - gerçek veya tamsayı, sonuç türü gerçek
SIN (X) x argümanının sinüsünü hesaplar (x radyan cinsindendir); x yazın - gerçek veya tamsayı, sonuç türü gerçek
COS (X) x argümanının kosinüsünü hesaplar (x radyan cinsindendir); x yazın - gerçek veya tamsayı, sonuç türü gerçek
ARCTG (X) x argümanının arktanjantını hesaplar (x radyan cinsindendir); x yazın - gerçek veya tamsayı, sonuç türü gerçek
EXP (X) e = 2.71828 sayısını x (ex) kuvvetine yükselterek, x yazın - gerçek veya tamsayı, sonuç türü gerçek

Bu işlevler Pascal programlama ortamının belleğinde bulunur ve yinelemeli yöntemlerle en çok kullanılan işlevlerin hesaplanması için alt rutinlerdir.

Doğrusal bir program hazırlama örnekleri

örnek 1Üç sayının aritmetik ortalamasını bulun - iki tam sayı (X ve Y) ve bir gerçek (Z) ve aritmetik ortalamanın karesi.

programı:

Program Arası;

X, Y: Tamsayı;

Z, Midd, SqrMidd: ​​​​Gerçek;

WriteLn ("X ve Y iki tamsayısını girin:");

ReadLn (X, Y);

WriteLn ("Gerçek bir Z sayısı girin:");

ReadLn (Z);

Orta: = (X + Y + Z) / 3;

SqrMidd: ​​​​= SQR (Orta)

Writeln ("Aritmetik ortalama =", Midd);

Yaz ("Aritmetik ortalamanın karesi =", SqrMidd);

Program Açıklaması

Başlık, programın adını içerir - Midding (ortalama), ardından var kelimesi değişkenleri tanımlayan bölümü açar: X ve Y tam sayılardır, Z gerçektir. Start kelimesi, programın ana bloğunu açar, burada:

▪ WriteLn deyimi "İki tamsayı X ve Y girin:" metnini görüntüler;

▪ ReadLn (X, Y) operatörü klavyeden girilen sayıların değerlerini okur ve bunları sırasıyla X ve Y tamsayı değişkenlerine atar;

ReadLn (Z) operatörü klavyeden girilen bir sayının değerini okur ve onu gerçek değişken Z'ye atar;

▪ atama operatörü X, Y, Z'nin ortalama değerini hesaplar ve onu Midd değişkenine atar, ardından benzer şekilde bu değerin karesini hesaplar ve SqrMidd değişkenine atar;

▪ Writeln operatörü "Aritmetik ortalama =" metnini verir,

hesaplanan Midd değeri ve imleci yeni bir satıra taşır;

▪ Write ifadesi "Aritmetik ortalama kare =" metnini ve hesaplanan SqrMidd değerini görüntüler;

▪ bitiş ifadesi. ana bloğu kapatır ve programın yürütülmesini sonlandırır.

Örnek 2 Belirli bir yarıçap R için bir dairenin S alanını ve L çevresini hesaplayın.

programı

KRUG Programı;

sabit P = 3.14159

R, S, L: Gerçek;

Oku (R); (yarıçap değerini girin)

L: = 2 * P * R;

S: = P * SQR (R);

Writeln (Çevre = ", L," cm ");

Yaz ("Bir dairenin alanı =", S, "sq.cm");

sınav soruları

1 Herhangi bir Pascal programı hangi bölümlerden oluşur?

2 Atama operatörünün formatı ve amacı.

3 Veri giriş operatörlerinin formatı ve amacı.

4 Veri çıkış operatörlerinin formatı ve amacı.

Görev

Formülü kullanarak bir küpün yüzey alanını bulun T = 6a 2
Cisim sabit bir v hızıyla hareket ediyorsa, bir fiziksel cismin t zamanında aldığı yolu belirleyin.
Hesaplamak:
Bir yılda yaklaşık 3.156x10 7 sn. Yıl olarak yaşını soran ve bunu saniyelere çeviren bir program yazınız.
Hesaplamak:
Bir silindirin hacmini aşağıdaki formüle göre bulun: V = pR 2 H
Koordinatları (x, y) olan noktadan orijine olan mesafeyi bulun.
Ağırlık m bir su molekülü yaklaşık olarak 3.0x10 -23 gr'a eşittir. Bir litre su yaklaşık 950 grama eşittir. Su miktarını litre cinsinden soran ve bu su miktarındaki molekül sayısını veren bir program yazınız.
Bir küpün hacmini V = a3 formülüyle bulun. (standart işlevleri kullanarak ve kullanmadan).
Hesaplamak:
Gün sayısını soran ve haftaları ve günleri çeviren bir program yazın. Örneğin 18 gün = 2 hafta 4 gün.
Bir karenin köşegenini ve alanını bulun
Hesaplamak:
Topun yan yüzeyinin alanını bulun: T = 4pR2
Hesaplamak:
Hesaplamak: