Pascal - yeni başlayanlar için programlamanın temelleri. Pascal programlama diline giriş

Pascal - yeni başlayanlar için programlamanın temelleri.  Pascal programlama diline giriş
Pascal - yeni başlayanlar için programlamanın temelleri. Pascal programlama diline giriş

PascalABC.NET'te ilk programı oluşturuyoruz. Ana noktaları analiz edelim.

PascalABC.NET - OKUL - Asal sayılar. Eratosthenes Eleği

Asal sayıları bulmak için en hızlı algoritmayı analiz ediyoruz. Eratosthenes Eleği. Algoritmaları karşılaştıran bir deney. Pascal dilinin birkaç işlevini ve özelliğini daha analiz ediyoruz ...

PascalABC.NET - OKUL - Derleyiciler (1.Giriş) - Sayı çıkarma

Derleyicilerle başlayalım. Metinde tam sayı ve kesirli sayıları arıyoruz. Bu hat için takipte kalın!

PascalABC.NET - OKUL - Derleyiciler (2. Vurgulamayı bitir) - Sözcükler ve satırlar

Derleyiciyi geliştirmeye devam ediyoruz. Kelimeleri ve satırları vurgulamayı öğrenmek.

PascalABC.NET - OKUL - 7. sınıf için problem çözme

PascalABC.NET - OKUL - ♫ Piyano + OOP + Klitschko

OOP (nesne yönelimli programlama) kullanarak basit bir piyano yapmayı öğreniyoruz.

PascalABC.NET - OKUL - 1. Parantezli havalı hesap makinesi. İfade ayrıştırma

Parantezleri ayrıştıran ve sin ya da trunc gibi işlev gören güçlü bir hesap makinesi yazıyoruz. OOP (nesne yönelimli programlama).

PascalABC.NET - OKUL - 2. Parantezli havalı hesap makinesi. İfade ayrıştırma

DEVAM!!! Sin veya trunc gibi parantezleri ve işlevleri ayrıştıran güçlü bir hesap makinesini aklımıza getiriyoruz. OOP (nesne yönelimli programlama).

PascalABC.NET - OKUL - 1. Gelişmiş telefon rehberi! Hızlı arama. indeksleme

nasıl uygulanır hızlı arama V büyük hacimli veri. Grafik teorisi. Bir telefon rehberi örneğini oluşturuyoruz.

Belki de Pascal dilini (programlamanın temelleri) bilmeyen tek bir modern insan yoktur. Ve bu şaşırtıcı değil! Okul çocukları için bilgisayar bilimi ders kitabında bile, bu eşsiz programın en temel kavramları açıklanmaktadır.

Şimdi, yüzyılda Bilişim Teknolojileri, herkes kendileri için çevrimiçi kendi kendine çalışma eğitimi verebilir ("Programlama dillerini sıfırdan öğrenmek"; "Aptallar için Pascal" ve diğerleri kurslarını tamamladıktan sonra).

Çalışılan dilin tarihi o kadar basit değil: Pascal, okul çocukları onu sınıfta öğretildiği biçimde görmeden önce birçok değişikliğe uğradı. Geçen yüzyılın (1970) birçok pratik problemini çözmeye yardımcı olan programlama için ilk basit dildi (ord pascal). Bir grup bilim insanı tarafından geliştirilmiştir.

Platformların genişlemesi ile bu programın yeni versiyonları oluşturulmuş ve Pascal klasik bir programlama dili haline gelmiştir.

Aşağıda anlayacağız: Pascal nedir, ana araçları nelerdir. Programın işlemlerini ve işlevlerini, kendine özgü özelliklerini göz önünde bulundurun. Örneklerle nasıl çalıştığını görelim. Pascal'da yazmayı ve çalışmayı öğrenin.

pascal programlama dili nedir

Bu temel bir üst düzey programdır. Rusya Federasyonu'ndaki birçok okul ve üniversitenin müfredatlarında ilk sırada yer almaktadır.

PascalABC.NET sisteminin özellikleri

Karşılaştırıldığında her şey biliniyor, bu nedenle bu programın avantajlarını başka bir BASIC diline göre ele alacağız.

Öyleyse, Pascal dili için tipik olan ve BASIC için uygun olmayan nedir:

  1. İlk olarak, Pascal'ı herhangi bir platforma indirmenize izin veren bir derleyicinin varlığı.
  2. İkincisi, bu programın tüm sürümleri birbiriyle uyumludur.
  3. Üçüncüsü, yapılandırılmış veri türleri, programcının pratik bir sorunu korurken çözmek için gerekli algoritmayı doğru bir şekilde oluşturmasına yardımcı olur.
  4. Dördüncüsü, program arayüzünün görünürlüğü ve mantığı: tüm komutlar basit ve anlaşılır.
  5. Beşincisi, daha yüksek seviyeli başka bir programlama diline geçiş oldukça basittir.

PascalABC.NET'teki örnek programlar

Giriş tamsayılarının toplamı

tam sayıların çarpımı

n arasında kaç tane tek girdi

Geçersiz giriş koruması

İkinin ilk 10 kuvvetinin sonucu

Pozitif bir m tamsayısının basamaklarının toplamını bulun

Bir sayıyı asal çarpanlara ayırma

Yeni başlayanlar için Pascal - temel kavramlar

Bu dilde doğru bir program yazmaya yardımcı olan temel kavramları inceleyelim.

çalışma alanı

Çalışma alanı neye benziyor?

Şimdi temelleri düşünün: alfabe ve yapı.

paskal alfabesi

Neyi bilmen gerekiyor? Alfabe, bir program yazarken gerekli olan bir dizi semboldür.

Onlar için geçerli olanlar:

  1. Latince büyük, küçük harfler (A, B, C .... a, b, c).
  2. Aritmetik semboller (0, 1, 2…).
  3. Özel karakterler (noktalama işaretleri, köşeli ayraçlar, tırnak işaretleri, aritmetik işaretleri vb.).
  4. Bölünemez karakterler (:=, ˃=…).
  5. Hizmet kelimeleri:
  • ve ve;
  • dizi - bir dizi;
  • başla - başlangıç;
  • yap - yürüt;
  • başka - aksi takdirde;
  • için - için;
  • eğer - eğer;
  • gelen;
  • yada yada;
  • prosedür - prosedür;
  • program - program;
  • tekrar - tekrar;
  • sonra - o zaman;
  • için - önce;
  • kadar - kadar (= süre);
  • var bir değişkendir;
  • süre - süre.

Dikkate almak: sabitler, işlemler hizmet sözcükleriyle (herhangi bir uzunlukta) aynı adlara sahip olmamalıdır.

program yapısı

Peki, bu programın "hiyerarşisine" neler dahildir?

Yapısına göre bu dil 3 bölüme ayrılır:

  • İsim;
  • veri;
  • hareketler.

Not: Değişkenler virgülle ayrılarak listelenmeli ve sonrasında ":" ile türlerini belirtilmelidir. Yazılan ";" yi tamamlayın.

Eylemler "başla" ile başlar ve bir nokta ile "bitiş" ile biter.

Yapı şu şekilde temsil edilebilir:

Bu arada, operatörler noktalı virgülle ayrılır.

İfadeleri yazın, yazın, okuyun, okuyun

Bilgi çıkışı ve girişinin nasıl gerçekleştiğini öğrenelim.

Çözüm

Bu nedenle, bu dilde çıktı işleçleri yoktur, ancak gerekli işlevleri çalıştırmaya yardımcı olan özel sözcükler vardır. Bu yaz, yaz.

Temel farkları nedir? Onlardan sonra sonraki bilgileri girerken veya çıktısını alırken: ilk durumda, sonraki bilgiler operatörün yazıldığı aynı satırda görüntülenecektir. Ama ikincisinde - bir sonrakinde.

Giriş

Giriş için kelimeler de vardır: oku, oku(=okuma tuşu).

Önceki ifadelerle tamamen aynı şekilde (çıktıda) birbirlerinden farklıdırlar.

tamsayı veri türü

3 ana tip vardır:

  1. tamsayı.
  2. bayt.
  3. uzun süre

Ayrıca basit eylemler gerçekleştirirler:

  • ek - "+";
  • çıkarma - "-";
  • çarpma işlemi - "*";
  • bölüm - "div".

Ek olarak, ilişkiler ve karşılaştırmalar yapılmasına izin verilir (- ˃ ='den büyük veya eşittir).

Gerçek veri türleri

Bu tür değişkenler, kesirli sayıları içerir (örneğin, pi sayısı). Burada gerçek denir.

Ne hatırlanmalı? Kesirli sayı formülü girmek için virgül yerine nokta kullanmalısınız. Kuvvetleri yazmak için (x * 10 y), 10, E ile değiştirilir ve sayı şu şekilde gösterilir:

Onlarla hem en basit aritmetik işlemleri hem de daha karmaşık işlemleri gerçekleştirebilirsiniz:

  • karekök - sqrt;
  • mutlak değer - mutlak;
  • ikinci dereceden işlev - sqr;
  • sinüs - günah;
  • kosinüs - kosinüs;
  • arktanjant - arktan;
  • doğal logaritma - ln;
  • üs - exp.

Veri işleme

Yukarıda listelenen işlevlere ek olarak (önceki 2 paragrafta), başka işlevler de vardır:

  • sayının tamsayı kısmı int'dir;
  • sayının kesirli kısmı frac'tır;
  • bir sayının tamsayı kısmını alma - trunc;
  • bir tamsayıya yuvarlama - yuvarlama;
  • sıra tipi dönüştürme - ord;
  • karakter türüne kod dönüştürme - chr;
  • miktarın önceki değerinin belirlenmesi - pre;
  • miktarın müteakip değerinin belirlenmesi - succ.

matematiksel işlemler

Tamsayı ve gerçek veriler ayrıştırılırken matematiksel fonksiyonlar ve işlemler dikkate alınmıştır.

Sabit ve değişken türleri üzerinde duralım. Onlar neler?

Basit olanlar alt türleri içerir:

  • tamsayılar - tamsayı;
  • mantıksal - mantıksal;
  • karakter - karakter;
  • sayılabilir;
  • aralık;
  • gerçek.

Dizeler, string komutu ile yazılır. Referanslar, karşılık gelen formla temsil edilir.

Yapısal olarak ayrılır:

  • diziler - dizi;
  • kayıtlar - kayıt;
  • kümeler - kümeler;
  • dosya - dosya.

Her türün kendi işlem kümesi vardır.

Koşullar

Alternatif komutlar ve işlevler varsa, o zaman if, then, else deyimlerini kullanarak pratik bir problemi çözmek için gerekli komutları yazabilirsiniz.

Şema aşağıdaki şekilde gösterilmiştir.

Boole işlemleri

Operasyonlar bir gerçeğin doğruluğuna veya yalanlarına dayanır.

Bu tür işlevlerin 3 türü vardır:

  1. Tek - tek bir sayı ise, o zaman doğru (aksine - yanlış).
  2. Eoln - dizenin sonunda doğru (başka yerde yanlış).
  3. Eof, dosyanın sonunda doğrudur (başka yerde yanlıştır).

Program yönetimi işlevleri

Başka hangi prosedürler var?

  • Inc, sayıdaki bir artıştır;
  • Clrscr - programın önceki sonuçlarını temizleme;
  • Crt kullanır - clscr'yi başlat;
  • Uzunluk - dizenin uzunluğunu döndürür;
  • Val - bir diziyi bir sayıya dönüştürmek;
  • Konum - dizideki ilk dönüşümü bulun;
  • Ata - bir değişkeni bir dosyaya bağlama;
  • Büyük harf - küçük harfleri büyük harfe dönüştürür.

Çözüm

Bu nedenle, iyi bir programcı olmak için önce temelleri öğrenmeniz gerekir. Pascal bunun için en iyi seçimdir.

2. baskı - St.Petersburg: 2011. - 320İle.

Bu kitap bir ders kitabı değil, tüm okul çocuklarının bilgisayar bilimi derslerinde tanıdığı Pascal programlama diline hakim olmada bir yardımcıdır. Programlama ve problem çözmenin pratik konularına ayrılmış derslerden oluşur. Çok sayıda örnek, bir algoritmayı nasıl geliştireceğinizi, kendi programınızı nasıl yazacağınızı ve metnini doğru bir şekilde biçimlendireceğinizi daha iyi anlamanıza olanak tanır. İpuçları ve notlar, okuyucunun önemli ayrıntılara dikkat etmesine, tuzaklardan kaçınmasına ve programları daha verimli bir şekilde yazmasına yardımcı olur. Kitap, okuldaki uzun yıllara dayanan deneyime sahip bilgisayar bilimleri öğretmenleri tarafından hazırlandı. pratik iş. İkinci baskı, kayıtlar, dinamik değişkenler, yığın, sıra ve listeler hakkında birkaç yeni bölüm ekler. Programlamadaki en zor konulardan biri de ele alınmaktadır - özyinelemeli algoritmaların oluşturulması.

Biçim: pdf(2011, 2. baskı, 320 s.)

Boyut: 14.5MB

İzleyin, indirin: dokümanlar.google.com.tr

İçerik
İkinci baskıya önsöz 15
Giriş 16
Yayıncıdan 16
KONU 1. Nasıl yazılır basit bir program Pascal 17'de
Ders 1.1. Görüntü ekranında bir mesaj görüntüleme 18
Ders 1.2. Bu program bilgisayara nasıl yüklenir 19
Yaratılış aşamaları bilgisayar programı 20
Ders 1.3. Ekrandaki metni biçimlendirme 28
Bulgular 34
Güvenlik soruları 34
KONU 2: Rakamları eyleme dönüştürme 36
Ders 2.1. Basit başlayalım: tamsayılar 37
Değişken kavramı 38
tamsayı türü. atama operatörü. Ekran çıkışı 38
Tamsayı 40 türüyle işlemler
Tamsayı 42 tipi standart fonksiyonlar
Tamsayı Değişkenleri Nasıl Temsil Edilir?
bilgisayar belleğinde 43
Ders 2.2. işe koyulduk gerçek sayılar 45
Gerçek veri türünün açıklaması (gerçek) 45
Gerçek Değişkenler için Kayıt Formatları 46
Gerçek işlemler 46
real 47 gibi standart fonksiyonlar
Matematik İfadeleri Yazma 48
Gerçek türdeki değişkenler bilgisayar belleğinde nasıl temsil edilir 50
Ders 2.3. Tamsayı ve gerçek tip değişkenleri nasıl birleştirilir 51
Tip dönüştürme 51
Gerçekleştirilen Eylemlerde Öncelik Kuralları 52
Verilerle ilgili işlemler farklı şekiller 53
Ders 2.4. Veri girişi ve çıkışı 56
Klavyeden değişken girme 57
Güzel ekran çıkışı 57
Rastgele Sayı Üreteci ile Değişken Değerleri Ayarlama 61
Ders 2.5. Bir programda sabitlere neden ihtiyaç duyulur? 62
Bulgular 64
Güvenlik soruları 64
KONU 3. Sembollerle çalışmayı öğrenmek 66
Ders 3.1. Bir bilgisayar sembolleri nasıl anlar 67
ASCII kod tablosu 67
Karakter Türü Açıklaması ve Standart İşlevler 68
Ders 3.2. Char türü sıralı bir türdür! 70
Bulgular 71
Güvenlik soruları 72
KONU 4. George Boole ve mantığı 73
Ders 4.1. Bir türe daha ihtiyacımız var - boolean! 74
Boolean veri türü (Boolean) 75
İlişkisel İşlemler 75
Boole G/Ç 76
Ders 4.2. Mantıksal (boolean) işlemler 76
Mantıksal çarpma (bağlaç) 76
Mantıksal toplama (ayırma) 77
XOR (modül 2 eki) 77
Mantıksal olumsuzlama (ters çevirme) 78
Başvuru mantıksal işlemler program 78'de
Mantık Önceliği 80
Sonuçlar 81
Güvenlik soruları 81
KONU 5. Durumun analizi ve komutların yürütme sırası 82
Ders 5.1. Algoritmada Durum Kontrolü ve Dallanma 83
if ifadesinin tam ve eksik formu 84
Program tasarlama 86
Ders 5.2. Açıklama blokları 88
Ders 5.3. Bir dizi koşulda dallanma (vaka bildirimi) 92
Bulgular 96
Güvenlik soruları 96
KONU 6. Tekrarlanan eylemler 98
Ders 6.1. Şebeke döngü için 99
100 artan sayaçlı deyim için 101 artan sayaçlı deyim
Ders 6.2. Sayaçlı döngüleri kullanma 101
Döngü içinde döngü 102
iz 103
105 serisinin toplamını hesaplama
Bulgular 108
Güvenlik soruları 109
KONU 7. Koşullu 110 olan döngüler
Ders 7.1. Önkoşul 111 ile döngü
Önkoşul 111 ile döngü açıklaması
Sonsuz bir serinin toplamının yaklaşık hesabı 112
Bir sayıyı belirtilen tam sayı üssüne yükseltme 115
Ders 7.2. Koşul 119 ile döngü
120 sonkoşullu döngü açıklaması
Repeat ve while döngülerini kullanma 120
123 while ve tekrar deyimlerinin seçiminin göreliliği
Bulgular 129
Güvenlik soruları 129
KONU 8. Diziler - yapılandırılmış veri türü 131
Ders 8.1. Aynı türdeki verileri tablo biçiminde depolama 132
Dizilerle çalışmak için temel adımlar 133
Pascal 133'te bir dizinin açıklaması
Bir diziyi rasgele sayılarla doldurma ve diziyi ekranda gösterme 134
Özel bir veri türü oluşturma 137
Bir dizinin maksimum elemanını bulma 140
Verilen özelliklere sahip bir dizinin elemanlarının toplamını ve sayısını hesaplama 144
Ders 8.2. Dizi arama 148
Bayrak Kullanarak Bir Dizinin Negatif Öğeye Sahip Olup Olmadığını Belirleme 148
Sayılarını Hesaplayarak Bir Dizinin Negatif Elemanları Olup Olmadığını Belirleme 149
Negatif dizi elemanının sayısını bulma 150
Ders 8.3. 2B diziler 154
Bulgular 156
Güvenlik soruları 157
KONU 9. Yardımcı algoritmalar. prosedürler ve fonksiyonlar. Yapılandırılmış programlama 1 58
Ders 9.1. Yukarıdan aşağıya bir algoritma tasarlama 159
Kullanarak pratik görev yardımcı algoritmalar 160
Ders 9.2. İşlevle çalışma örneği: Maksimum öğeyi bulma 167
Bulgular 168
Güvenlik soruları 169
KONU 10. Karakter dizileriyle nasıl çalışılır 170
Ders 10.1. Karakter dizileriyle çalışma: String 171 yazın
Dizi değişkeni açıklaması 171
Temel Dize Eylemleri 172
Ders 10.2. Dizelerle çalışmak için bazı Pascal işlevleri ve prosedürleri 173
Kitaplık Dizisi Rutinlerini Kullanma 173
Sonuçlar 175
Güvenlik soruları 175
KONU 11. 176 parametreli prosedürler ve fonksiyonlar
Ders 11.1. Basit örnekler parametrelerle alt programları kullanma 177
Parametrelerle en basit prosedürler 177
Resmi ve gerçek parametreler 179
179 parametreli en basit fonksiyonlar
Ders 11.2. Parametreleri geçirme yolları 181
Sonuçlar 183
Güvenlik soruları 184
KONU 12. Dosyalar: çalışmanızı bir dahaki sefere kadar kaydetme 185
Ders 12.1. Metin dosyası 186 ile nasıl çalışılır
Dosyayı okumak için açma 186
Yazmak için bir dosya açma 188
Ders 12.2. koruma iki boyutlu dizi içindeki sayılar Metin dosyası 192
Sayısal Verileri Metin Dosyasına Kaydetme 192
Bir metin dosyasına bir sayı dizisi kaydetme 192
Dosyanın sonuna bilgi ekleme 196
Sonuçlar 197
Güvenlik soruları 197
Konu 13. Grafik çalışma modu. Grafik 199 modülü
Ders 13.1. Grafik modunu aç 200
Grafiklerle çalışmanın özellikleri 200
Video bağdaştırıcısının 201 grafik moduna geçiş
Ders 13.2. Grafik 203 modülünün olanaklarını keşfetmeye devam ediyoruz.
Grafik 203 modülünü kullanarak çizgiler çizme
Grafik 205 modülünü kullanarak daire çizme
Sonuçlar 206
Güvenlik soruları 207
Konu 14. Programın doğal akışını değiştiren operatörler 208
Ders 14.1. Koşulsuz atlama işlecini kullanma 210'a git
Ders 14.2. Bir döngünün akışını değiştiren ifadeler 213
kesme ifadesi 213
devam bildirimi 214
Sonuçlar 215
Güvenlik soruları 215
Konu 15. Verileri Gruplandırma: Kayıtlar 216
Ders 15.1. Veri türü kaydı 218'in açıklaması
Ders 15.2. Kayıtları ne zaman ve nasıl akıllıca kullanmalı 220
Kendi Veri Türünüzü Oluşturma - Giriş 220
Kayıt dizisi 220
221 ekleme operatörü ile
Veri Yapısı Seçim Örneği 223
Giriş kayıtları 224
Sonuçlar 225
Kontrol soruları ve görevleri 225
Konu 16. Dinamik değişkenler 226
Ders 16.1. Bellek tahsisi 227
Ders 16.2. Adresler 229
Ders 16.3. İşaretçiler 230
Bireysel değişkenlere işaretçiler 230
Değişken bloklarına işaretçiler 232
Ders 16.4. Dinamik Bellek Ayırma 232
Yeni ve Elden Çıkarma 233
Diziler için Dinamik Bellek Ayırma 235
GetMem ve FreeMem 236
Dinamik Olarak Oluşturulmuş Bir Dizinin Öğelerine Erişme 237
Değişken uzunlukta dizi 238
Bulgular 241
Güvenlik soruları 242
Konu 17. Dinamik veri yapıları. Yığın 244
Ders 17.1. 245 veri tipini tanımlayalım
Ders 17.2. Yığın oluşturma ve temel yığın işlemleri 247
Yığına Öğe Ekleme (Push) 248
Yığından bir eleman çıkarma (Pop) 251
Yığının boş olup olmadığını kontrol etme (StacklsEmpty) 252
Ders 17.3. Yığın kullanımı 253
Dizi 255 ile Yığın Programlama
Sonuçlar 256
Kontrol soruları ve görevleri 256
Konu 18. Dinamik veri yapıları. Sıra 258
Ders 18.1. Çalışma prensibi ve veri tipinin tanımı 259
Ders 18.2. Temel Kuyruk İşlemleri 261
Kuyruğa öğe ekleme (EnQueue) 261
Kuyruktan Öğe Alma (DeQueue) 263
Boşluk için kuyruk kontrolü (QueuelsEmpty) 264
Ders 18.3. Sıra 264'ü Kullanma
Dizi 267 ile Kuyruk Programlama
Sonuçlar 269
Güvenlik soruları 269
Konu 19. Dinamik veri yapıları. Tek yönlü liste 270
Ders 19.1. Veri türünün açıklaması ve nasıl çalıştığı 271
Ders 19.2. Tek Bağlantılı Liste ile Temel İşlemler 272
Bir listenin tüm öğelerini sırayla görüntüleme 272
Bir öğeyi bir listeye koymak 273
Bir öğeyi listeden kaldırma 275
Ders 19.3. Liste İşleme 276
Neden tek bağlantılı bir liste kullanıyorsunuz 278
Sonuçlar 280
Güvenlik soruları 280
Konu 20. Yineleme 281
Ders 20.1. İlke 282'nin açıklaması
Ders 20.2. Hanoi Kuleleri 285
Ders 20.3. Tekrarlanan bir alt programın yapısı 287
Ders 20.4. Tekrarlanmayan bir sorunun tekrarlanan çözümüne bir örnek 288
Ders 20.5. Yinelenen bir sorunun yinelenen çözümüne bir örnek 289
Sonuçlar 291
Güvenlik soruları 291
Ek 1 Akış Şeması Öğeleri 292
Ek 2 Görevler 295
tamsayı. Tanım. Giriş. Çözüm. operasyonlar 296
Gerçek. Tanım. Giriş. Çözüm. İşlemler ve işlevler 296
Gerçek. İfadeleri yazma ve değerlendirme 297
Char. Tanım. Giriş. Çözüm. İşlevler 298
Boole Yazma ifadeleri 298
Boole İfade değerlendirmesi 299
eğer. Basit karşılaştırmalar. Min/maks/ortalama 300
eğer. 300 parametreli denklemler ve eşitsizlikler
için. transferler 300
için. Döngü Sayacı Hesaplamaları 301
için. Karşılaştırmalı kaba kuvvet 302
süre-tekrar. Arama 302
süre-tekrar. Sıralar 303
Grafik Sanatları. Düz 303
Grafik Sanatları. Daireler 304
diziler. Doldurma, çekme, miktar/miktar 305
diziler. Permütasyonlar 305
diziler. Arama 306
diziler. Çekler 307
diziler. Yüksekler 307
Parametresiz alt programlar 307
Teller. 1. Kısım 308
Teller. Kısım II 309
Parametreli alt programlar. 1. Kısım 309
Parametreli alt programlar. Kısım II 310
Parametreli alt programlar. Bölüm III 310
Dosyalar 311
Tek yönlü liste 312
yineleme 313

Kitabın ilk baskısının yayınlanmasından sonra, meslektaşlarımız ve öğrencilerimiz, ilk baskıyı en çok çalışılan ve talep edilen veri yapıları hakkında bilgilerle tamamlama talebiyle bizimle giderek daha sık iletişime geçmeye başladılar. Bu baskıda kayıtlar, dinamik değişkenler, yığın, sıra ve listeler hakkında birkaç bölüm ekledik. Ayrıca programlamadaki en zor konulardan biri olan yinelemeli algoritmalar oluşturmayı da ele almaya çalıştık.
Uygulamada, birçok konu için birçok seçenek içeren ödev koleksiyonunu bırakmaya karar verdik. Bunun yerine uygulamaya 5-8 görevden oluşan bloklar halinde düzenlenmiş çok sayıda tematik görev yerleştirdik. Her bloktaki görevler basitten karmaşığa doğru sıralanmıştır. Bunları derslerimizde organize etmek için kullanırız. pratik egzersizler teorik materyali pekiştirirken (bir ders - bir blok).
Yazarlar, en iyi öğrencilerinden biri olan Güvenlik Bölümü Doçenti'ne en derin şükranlarını sunarlar. bilgi sistemi SPbGUAP, Ph.D. Destek için Evgeny Mihayloviç Linsky, birçok faydalı ipuçları ve kitabın ikinci baskısı üzerindeki çalışmalarda büyük yardım.

Bu makale, ilk programları yazmak için gerekli olan Pascal programlama dilinin temellerini açıklayacaktır: program yapısı, değişken kavramı, veri türleri, matematiksel operatörler ve fonksiyonlar, atama operatörü, veri girişi ve çıkışı. Bu makalenin 7-8. sınıflardaki öğrenciler için dil öğrenmenin ilk adımları için olduğunu bir kez daha vurgulayacağım. Derinlemesine bir değerlendirme yapılmayacaktır (bununla ilgili literatür mevcuttur).

program yapısı

Programın yapısı, programı oluşturan bölümler kümesidir.

İlk programı Pascal'da yazmak için iki bölümü bilmek yeterlidir (aslında daha fazlası vardır):

  • değişken bildirimi bölümü - var- bu bölüm, programda kullanılan değişken adlarını virgüllerle ayırarak listeler. Aşağıdaki onların türüdür.
  • program gövdesi - bir kelimeyle başlar başlamak ve kelime ile biter son.(nokta ile). Bu bölüm, programın kendisinin metnini içerir.
var değişkenler: veri tipi; başlamak program gövdesi son.

Değişkenler

Değişken nedir?

Bir değişkeni, bir isim atadığımız ve içinde bir şey (sayı veya metin) saklayabileceğimiz bir hafıza yeri olarak düşünelim.

a, b, c adlı bellek hücreleri

Değişken adı aşağıdaki gereksinimleri karşılamalıdır:

  • Latin alfabesinin harfleri (a-z, A-Z), rakamlar ve alt çizgi "_" içerir;
  • Değişken adı bir sayı ile başlamamalıdır (ancak "_" karakteriyle başlayabilir ( Örneğin: _primer).
  • değişken adı boşluk içermemelidir

Değişken astar Ve Astar Pascal için eşdeğerdir

Veri tipleri

Bölümdeki değişkenleri listeledikten sonra var, türlerini belirtmeliyiz:

  • tamsayı- tamsayı türü
  • gerçek- gerçek tip (kesirli sayılar)
  • sicim- dize türü

Örneğin:

var a, b, c : tamsayı ;

burada a, b, c değişkenlerdir, tamsayı bu değişkenlerin tipidir. Onlar. değişkenler (bellek hücreleri) a, b, c yalnızca tam sayıları içerebilir.

Daha pek çok veri türü var, ancak ilk üç program yeterli olacaktır.

Değişkenlerden bazılarının aynı türde olmasını ve diğerlerinin bazılarını istiyorsanız:

var a, b : tam sayı; ile :gerçek;

onlar. değişkenler bir, b tam sayılardır ve değişken İle bir gerçek sayıdır (tamsayı olmayan).

atama operatörü

Atama operatörü, bir değişkene değer atamak için kullanılır.

:= atama operatörü

Kayıt bir:=23;"Değişken" okur A bir değer atanmış 23 ". Şimdi adlı bir bellek hücresinde A kayıtlı numara 23.

giriş operatörü

Bir değişkene değer yazabileceğiniz, ancak klavyeyi kullanan başka bir işleç vardır.

oku(a)

pascal komutu çalıştırır çalıştırmaz oku(a), parantez içindeki değişkene yazılacak olan klavyeden bir değer girmemizi gerektirecektir. Bizim durumumuzda, bir değişkende A.

matematiksel işlemler

+ - ekleme işlemi

- çıkarma işlemi

* - çarpma işlemi

/ - bölme işlemi

mod- bölümün geri kalanı

div- bölmenin tamsayı kısmı

Örnek:

S:=22 mod 5; Bunu yürüttükten sonra değişken S eşit olur 2 .

S:=22 bölme 5; Bu kodu çalıştırdıktan sonra, değişken S eşit olur 4.

Çıkış operatörü

Bir değişkenin değerini ekranda görüntülemek için, komutu kullanın. yaz(bir) veya yaz(a). Komutu çalıştırdıktan sonra yaz geçiş var Yeni hat, yazma komutunu yürüttükten sonra - olmaz.

Ekranda metin görüntülemek istiyorsanız kesme işareti içine alınır:

writeln('Annem çerçeveyi yıkadı');

Metni değişkenin değeriyle birlikte de görüntüleyebilirsiniz:

bir:=6;
yaz(' a değişkeninin değeri = ‘, A);

Ekranda şunları göreceğiz: a=6 değişkeninin değeri.

Sorunu düşünün:

Klavyeden girilen uzunluk ve genişlik değerlerini kullanarak dikdörtgenin alanını ve çevresini bulun.

var a,b,S,P: tamsayı; //değişkenleri bildirmek başlamak yaz(" Dikdörtgenin uzunluğunu girin"); oku( A); //uzunluğu girin yaz(" Dikdörtgenin genişliğini girin"); oku( B); // genişliği girin S:=a*b; //dikdörtgenin alanını hesapla P:=2*(a+b); //dikdörtgenin çevresini hesapla yaz(" Dikdörtgenin alanı ",S); //görüntülemek yaz(" Dikdörtgenin çevresi ",P); son.

Bu kitap bir ders kitabı değil, tüm okul çocuklarının bilgisayar bilimi derslerinde tanıdığı Pascal programlama diline hakim olmada bir yardımcıdır. Programlama ve problem çözmenin pratik konuları üzerine konuşmalardan oluşur. Çok sayıda örnek, bir algoritmayı nasıl geliştireceğinizi, kendi programınızı nasıl yazacağınızı ve metnini doğru bir şekilde biçimlendireceğinizi daha iyi anlamanıza olanak tanır. İpuçları ve notlar, okuyucuların dikkatini önemli ayrıntılara çeker, tuzaklardan kaçınır ve programları daha verimli yazar.
Kitap, uzun yıllara dayanan pratik çalışma deneyimine sahip okul bilişim öğretmenleri tarafından yazılmıştır.

Programlama dili nedir? Bir bilgisayarın çözdüğü herhangi bir problem, bir dizi komut olarak yazılır. Böyle bir diziye program denir. Elbette komutlar bilgisayarın anlayabileceği bir dilde sunulmalıdır. Böyle bir dil Pascal programlama dilidir. İsviçreli profesör Nikolaus Wirth tarafından özellikle öğrencilere programlamayı öğretmek için geliştirilmiştir. Dilin özellikleri aynı zamanda yapısını da içerir. Yani, program kolayca daha basit, kesişmeyen bloklara bölünür ve bunlar da daha da fazlasına bölünür. basit bloklar. Ayrıca programlamayı kolaylaştırır. 1979'da dil standart olarak onaylandı. Wirth, hesaplama makinesinin mucidi olan Fransız bilim adamı Blaise Pascal'ın adını almıştır. Pascal dili basit, mantıklı ve etkilidir. Tüm dünyaya yayılmıştır. Konuşmalarımız buna dayanıyor somut örnekler programlar. Uzun teorik açıklamalar yok, bu yüzden programların metinlerindeki yorumları dikkatlice okumak son derece gerekli!
Böylece Pascal'daki ilk programla hemen ilk sohbete başlıyoruz;

İçerik
giriş 7
teşekkürler 7
yayıncı 8'den
KONU 1. Pascal 9'da basit bir program nasıl yazılır
Ders 1.1. Mesajı ekranda göster 10
Ders 1.2. Bu programı bilgisayara nasıl koyabiliriz? on bir
Bir bilgisayar programı oluşturmanın aşamaları 12
1. Pascal 14 ortamını başlatın
2. Edit 16 Penceresinde Çalışmak
3. Programın diskteki bir dosyaya kaydedilmesi 19
4. Derleyiciyi çalıştırma 20
5. Çalışan program 21
6. Programın sonuçlarını görüntüleme 21
7. Pascal 22 ortamından çıkın
Ders 1.3. Ekrandaki metni biçimlendirme 22
Bulgular 28
Güvenlik soruları 28
KONU 2. Sayısal veriler nasıl çalıştırılır 30
Ders 2.1. Basit başlayalım: tamsayılar 31
Değişken kavramı 32
tamsayı türü. atama operatörü. Ekran çıkışı 32
Tamsayı 34 türüyle işlemler
Tamsayı 36 tipi standart fonksiyonlar
Tamsayı türü değişkenler bilgisayar belleğinde nasıl temsil edilir 38
Ders 2.2. Gerçek sayıları harekete geçirmek 39
Gerçek veri türünün açıklaması (Real) 40
Gerçek Değişkenler için Kayıt Formatları 40
Gerçek işlemler 41
Real 41 tipi standart fonksiyonlar
Matematik İfadeleri Yazma 43
Gerçek değişkenler bellekte nasıl temsil edilir?
bilgisayar 45
Ders 2.3. Tam Sayı ve Gerçek Tür Değişkenleri Nasıl Birleştirilir 46
Tip dönüştürme 46
Gerçekleştirilen Eylemlerde Öncelik Kuralları 47
Farklı veri türleri üzerindeki eylemler 47
Ders 2.4. Veri girişi ve çıkışı 51
Klavyeden değişken girme 52
Güzel ekran çıkışı 52
Rastgele Sayı Üreteci ile Değişken Değerleri Ayarlama 55
Ders 2.5. Bir programda sabitlere neden ihtiyaç duyulur? 57
Bulgular 59
Güvenlik soruları 60
KONU 3. Sembollerle çalışmayı öğrenmek 61
Ders 3.1. Bir bilgisayar sembolleri nasıl anlar 62
ASCII kod tablosu 62
Karakter Türü Açıklaması ve Standart İşlevler 63
Ders 3.2. Char türü sıralı bir türdür! 64
Bulgular 66
Güvenlik soruları 67
KONU 4. George Boole ve mantığı 68
Ders 4.1. Bir türe daha ihtiyacımız var - boolean! 69
Boolean veri tipi (Boolean) 70
İlişki İşlemleri 70
Boole G/Ç 71
Ders 4.2. Mantıksal (boolean) işlemler 71
Mantıksal çarpma (bağlaç) 72
Mantıksal toplama (ayırma) 72
XOR (modül 2 eki) 73
Mantıksal olumsuzlama (ters çevirme) 74
Mantıksal işlemlerin programda uygulanması 74
Mantık Önceliği 76
Bulgular 77
Güvenlik soruları 78
KONU 5. Durumun analizi ve komutların yürütme sırası 79
Ders 5.1. Algoritma 80'de Durum Kontrolü ve Dallanma
if ifadesinin tam ve eksik formu 81
Program tasarlama 84
Ders 5.2. Açıklama blokları 85
Ders 5.3. Bir dizi koşulda dallanma (vaka bildirimi) 90
Bulgular 94
Güvenlik soruları 95
KONU 6. Tekrarlanan eylemler 96
Ders 6.1. 97 için döngü bildirimi
artımlı sayaç 97 ile ifade için
99 sayacının sıralı azalması ile ifade için
Ders 6.2. Sayaç 99 ile döngüleri kullanma
Döngü 100'de döngü
iz 101
Bir dizinin toplamını hesaplama 103
Bulgular 107
Güvenlik soruları 108
KONU 7. 109 koşullu döngüler
Ders 7.1. Önkoşul 110 ile döngü
Önkoşul 110 ile döngü açıklaması
Sonsuz bir serinin toplamının yaklaşık hesabı 111
Belirtilen Tamsayıya Bir Sayı Girme 114
Ders 7.2. Koşul 118 ile döngü
119 numaralı koşullu döngü açıklaması
repeat ve while döngülerini kullanma 119
123 while ve tekrar deyimlerinin seçiminin göreliliği
Bulgular 129
Güvenlik soruları 129
KONU 8. Diziler - yapılandırılmış veri türü 131
Ders 8.1. Aynı türdeki verileri tablo biçiminde depolama 132
Dizilerle çalışmak için temel adımlar 133
Pascal 133'te bir dizinin açıklaması
Bir diziyi rasgele sayılarla doldurma ve diziyi ekranda gösterme 134
Özel bir veri türü oluşturma 137
Bir dizinin maksimum elemanını bulma 141
Belirli özelliklere sahip dizi öğelerinin toplamını ve sayısını hesaplama 146
Ders 8.2. Dizi arama 148
Bayrak Kullanarak Bir Dizinin Negatif Öğeye Sahip Olup Olmadığını Belirleme 149
Sayılarını 150 hesaplayarak bir dizinin negatif öğeler içerip içermediğini belirleme
Bir Dizideki Negatif Elemanın Sayısını Bulma 152
Ders 8.3. 2B diziler 156
Bulgular 158
Güvenlik soruları 159
KONU 9. Yardımcı algoritmalar. prosedürler ve fonksiyonlar. Yapılandırılmış programlama 160
Ders 9.1. Yukarıdan aşağıya bir algoritma tasarlama 161
Yardımcı algoritmaları kullanan pratik problem 162
Ders 9.2. Bir işlevle çalışma örneği: maksimum öğeyi bulma 169
Bulgular 171
Güvenlik soruları 171
KONU 10. Karakter dizileriyle nasıl çalışılır 1 72
Ders 10.1. Karakter dizileriyle çalışma: String 1 yazın 73
173 dizi değişkeninin açıklaması
Temel Dize Eylemleri 174
Ders 10.2. Dizelerle çalışmak için bazı Pascal işlevleri ve prosedürleri 175
Kitaplık Dizisi Rutinlerini Kullanma 175
Bulgular 177
Güvenlik soruları 178
KONU 11. 179 parametreli prosedürler ve fonksiyonlar
Ders 11.1. Altprogramları Parametrelerle Kullanmanın Basit Örnekleri 180
180 parametreli en basit prosedürler
Resmi ve gerçek parametreler 182
183 parametreli en basit fonksiyonlar
Ders 11.2. Parametreleri geçirme yolları 184
Sonuçlar 187
Güvenlik soruları 187
KONU 12. Dosyalar: çalışmanızı bir sonraki sefere kadar kaydetme 189
Ders 12.1. Bir metin dosyasıyla nasıl çalışılır 190
Dosyayı okumak için açma 190
Bir dosyayı yazmak için açma 193
Ders 12.2. İki boyutlu bir sayı dizisini bir metin dosyasına kaydetme 196
Sayısal Verileri Metin Dosyasına Kaydetme 196
Bir metin dosyasına bir sayı dizisi kaydetme 197
Dosyanın sonuna bilgi ekleme 201
Sonuçlar 202
Güvenlik soruları 203
KONU 13. Grafik çalışma modu. Grafik 204 modülü
Ders 13.1. Grafik modunu aç 205
Grafiklerle çalışmanın özellikleri 205
Video bağdaştırıcısının 206 grafik moduna geçiş
Ders 13.2. Grafik 208 modülünün olanaklarını keşfetmeye devam ediyoruz.
Grafik 209 modülünü kullanarak çizgiler çizme
Graph 210 modülünü kullanarak daire çizme
Sonuçlar 212
Güvenlik soruları 212
KONU 14. Programın doğal akışını değiştiren operatörler 213
Ders 14.1. Koşulsuz atlama işlecini kullanma 215'e git
Ders 14.2. Bir döngünün akışını değiştiren ifadeler 218
kesme ifadesi 2.19
devam ifadesi 220
Sonuçlar 220
Güvenlik soruları 221
Ek 1 Akış Şeması Öğeleri 222
Ek 2. Ödev 224
Bölüm 2 için görevler 224
Bölüm 4 için görevler 227
6-7 bölümleri için ödevler 229
Bölüm 8 için görevler 236
Alfabetik dizin 254