Oxunmuş yazma ifadələri necə işləyir. read və readln operatorları

Oxuma təlimatı klaviaturadan dəyişən dəyərlərin (ilkin məlumatların) daxil edilməsi üçün nəzərdə tutulub. IN ümumi görünüş təlimatlar belə görünür:

read(Variable!, Variable2, ... VariableW burada dəyişənlər proqramın icrası zamanı dəyəri klaviaturadan daxil edilməli olan dəyişənin adıdır.

Budur oxuma təlimatının yazılması nümunələri:

oxuyun(a); oxumaq(Cena,Kol);

Oxu ifadəsi yerinə yetirildikdə aşağıdakılar baş verir:

1. Proqram öz işini dayandırır və klaviaturada tələb olunan məlumatların yığılmasını və düymə basılana qədər gözləyir. .

2. Düyməni basdıqdan sonra daxil edilmiş qiymət ifadədə adı göstərilən dəyişənə təyin edilir.

Məsələn, göstərişin icrası nəticəsində

Oxumaq(Temperat);

və klaviaturadan 21-ci sətri daxil etdikdə Tempérât dəyişəninin dəyəri 21 rəqəmi olacaq.

Tək oxunma ifadəsi çox dəyişənlərin dəyərlərini əldə edə bilər. Bu halda, daxil edilmiş nömrələr bir sətirdə yazılmalı və boşluqlarla ayrılmalıdır. Məsələn, a, b və c dəyişənlərinin tipi realdırsa, o zaman oxunan əmrin icrası nəticəsində (a, b, c); və klaviaturadan sətri daxil edin:

4.5 23 0.17

dəyişənlər aşağıdakı qiymətlərə malik olacaqlar: a = 4.5; b = 23, o; c = 0,17.

Əgər sətirdə oxu ifadəsində göstərilən dəyişənlərdən daha çox ədəd varsa, sətrin qalan hissəsi növbəti oxunma ifadəsi ilə işlənəcək. Məsələn, təlimatların icrası nəticəsində:

Oxuyun (a, B); oxumaq (C);

və klaviatura daxiletmə sətri

10 25 18

dəyişənlər aşağıdakı qiymətləri alacaqlar: a = 10, b = 25. Təlimatı oxuyun (C); c dəyişəninə 18 qiyməti təyin edəcək.

Readln əmri oxunma əmrindən onunla fərqlənir ki, klaviaturadan daxil edilmiş sətirdən növbəti nömrə seçildikdən və onu readln göstərişinin siyahısından sonuncu dəyişənə təyin etdikdən sonra sətrin qalan hissəsi itirilir və növbəti oxu və ya readln təlimatı yeni giriş tələb edəcək.

Məsələn, göstərişin icrası nəticəsində:

Readln (a, B); oxumaq (C);

və klaviaturadan xəttin daxil edilməsi

10 25 18

dəyişənlər aşağıdakı qiymətləri alacaqlar: a = ω, b = 25. Bundan sonra proqram onu ​​c dəyişəninə təyin etmək üçün yeni nömrənin daxil edilməsini gözləyəcək.

Hər bir oxumaq və ya oxumaq təlimatından əvvəl istifadəçiyə proqramın ondan hansı məlumatları gözlədiyini bildirmək üçün yazma təlimatı olmalıdır. Məsələn, alışın dəyərini hesablamaq üçün proqramın bir hissəsi belə görünə bilər:

Writeln("İlkin məlumatları daxil edin."); write("Məhsulun qiyməti:"); readln(Sepa); write("Paketdəki miqdar:"); readln(Kol); write("Endirim:"); readln (Skidka);

Klaviaturadan daxil edilən verilənlərin növü read (readln) ifadəsində adları göstərilən dəyişənlərin tipinə uyğun gəlmirsə və ya ötürülə bilmirsə, proqram qəzaya uğrayır (oxuduqdan sonra verilən təlimatlar yerinə yetirilmir) və xəta haqqında mesaj. .

Müəllif İskəndər bölməsində sual verdi Digər dillər və texnologiyalar

Nə üçün Paskal oxuyur və oxuyursa, əgər read də bir sətri tərcümə edirsə, nəzəri olaraq bunu etməməlidir? və ən yaxşı cavabı aldım

Skipy _[guru] tərəfindən cavab
readln - giriş buferindən parametrə dəyər alır və bütün klaviatura giriş buferini təmizləyir
və oxumaq - giriş buferindən dəyəri parametrə götürür və onu buferə təmizləməz, dəyəri tərk edir!! !
Yazarkən avtomatik xətt axını - hər yerdə
yəni readln təhlükəsiz girişdir
oxumaq - təhlükəli giriş
misal:
var
a,b: tam ədəd;
başlamaq
oxumaq(a); (istifadəçi daxil oldu: 4, 5 a = 4)
(giriş buferində rəqəm 5-dir!!}
oxumaq (b); (burada rəqəmi daxil etdi: 6, lakin b = 5)
(6 rəqəmi giriş buferində qalır!!}
---
readln(a);(istifadəçi daxil etdi: 4, 5; a = 4)
(giriş buferi aydındır!!}
readln(a);(istifadəçi 6 nömrəsini daxil etdi və b = 6)
(giriş buferi aydındır!!}
readln(b);
son.
Əksinə, yoxdur avtomatik aşkarlama giriş dəyərinin növü, hər şey müəyyən edilir simvollar format spesifikatorunda.

-dan cavab Yoali-Mali[quru]
Çox qarışıqlıq olmadan daha sadə izah edilə bilər:
Oxu proseduru icra olunduqda eyni sətirdən növbəti verilənlərin qiyməti, readln proseduru yerinə yetirildikdə isə yeni sətirdən növbəti verilənlərin qiyməti oxunur.
Buna görə də operator Readln (b1,b2,...bn); COLUMN-a məlumat daxil edilməsini təmin edir.
Hər b1, b2, ..bn dəyişənini daxil etdikdən sonra kursor yeni sətrin əvvəlinə keçir.
Operator Read(b1,b2,...bn); məlumatların XƏTƏ daxil olmasını təmin edir


-dan cavab VT-107 FIT[quru]
Burada Dmitri nədənsə çaşdı, amma bu düzgün deyil. Və tamamilə təmizlənmiş və təmizlənməmiş bir tampon və təhlükəsizlik haqqında. Sali də səhv cavab verdi. Heç bir sütun və sətir yoxdur, tamamilə fərqli qaydalar.
Birincisi, bu prosedurlar yalnız konsol girişi ilə işləmir, ona görə də iki funksiya lazımdır.
proseduru Oxu(F, V1 [, V2,...Vn ]);
axından bütün V1..Vn oxuyur (dəqiq n parametr), bütün oxunan məlumatlar silinəcək. Bu məlumatlardan sonra gələn hər şey dəyişməz qalacaq.
Sətiri oxuyarkən, yeni sətirə və ya faylın sonuna qədər hər şey oxunacaq. Oxumaq üçün sonrakı zənglər boş sətir qaytaracaq. Və yeni sətir simvolu yayımdan silinməyəcək.
Əgər char oxuyursunuzsa, parametrlərdən asılı olaraq yeni sətir simvolu char(26) kimi oxuna bilər.
Rəqəmləri oxuyarkən bütün boşluqlar, nişanlar və sətir fasilələri atlanır. Növbəti oxunuş isə oxunan nömrədən sonra gələn simvolla başlayacaq. Yenə də lazımsız simvollar atlana bilər.
prosedur ReadLn([ var F: Mətn; ] V1 [, V2, ..Vn ]);
V1, Vn axınından oxuyur (yəni oxumaq kimi işləyir) və sonra yeni sətir daxil olmaqla bütün simvolları ötür. Sətir fasiləsindən sonra bütün simvollar dəyişməz qalacaq.
Yeni xəttə keçid konsolda Enter düyməsini basdığınız üçün baş verir.
Təhlükəsizliyə dair çox uzaqdır. Bunlar müxtəlif məqsədləri olan funksiyalardır. Hər hansı yanlış istifadə təhlükəsiz deyil, hər hansı düzgün istifadə müvafiq olaraq təhlükəsizdir.

4. Yazma və yazma operatorları. Çıxış prosedurları

Proqramın write və writeln operatorlarından istifadə etdiyini gördünüz. İngilis dilində write sözü tərcümə olunur - yazmaq, writeln sözü isə iki ingilis dilində write - yazmaq və xətt - xətt sözlərinin abreviaturası kimi gəlir.

Söhbət write və writeln operatorlarından əlavə informasiyanın çıxış prosedurlarından gedir.

Bu nədir prosedur ?

Prosedur anlayışı Paskalın əsas anlayışlarından biridir. BASIC dilində alt proqram ona bənzəyir.

Prosedur ada malik olan və onun adını göstərməklə əsas proqramın istənilən yerindən daxil olmaq mümkün olan Paskal dili operatorlarının müəyyən ardıcıllığıdır.

Yuxarıda biz informasiyanın çıxış operatorlarından danışdıq, baxmayaraq ki, Paskalda BASIC-dən fərqli olaraq informasiyanın çıxış operatorları yoxdur və xidmət sözləri vasitəsilə yazı və yazma girişi həyata keçirilir. standart və ya daxili məlumatın çıxarılması proseduru. Standart prosedurun ilkin təsvirə ehtiyacı yoxdur, ona zəng olan hər hansı bir proqram mövcuddur. Buna görə write və ya writeln çağırılması PRINT operatoruna bənzəyir - BASIC dilində məlumat çıxarır.

Aralarındakı fərq çıxış operatoru və müraciət edin çıxarılması proseduru ondan ibarətdir ki, hər hansı digər Paskal proseduru kimi çıxış prosedurunun adı qorunan söz deyil və buna görə də istifadəçi write və ya writeln adlı öz prosedurunu yaza bilər. Ancaq bu praktikada çox nadir hallarda istifadə olunur.

Beləliklə, write və writeln operatorları daxili informasiyanın çıxış prosedurlarına daxil olmaq üçün operatorlardır.

Bu prosedurların hər ikisi informasiyanı ekranda göstərir, əgər bu məlumat dəyişən qiymətləri şəklindədirsə, o zaman write və ya writeln ifadələrində bu dəyişənlərin adlarını mötərizədə yazmaq kifayətdir, məsələn: write(a), writeln(f). Əgər bir neçə belə dəyişən varsa, o zaman onlar vergüllə ayrılaraq yazılır, məsələn: write(a, b, c, d), writeln(e,f, g, h).

Əgər məlumat sözlər, cümlələr, söz hissələri və ya simvollardırsa, o zaman ";" " işarələri arasında yer alır; - apostrof, Misal üçün:

yaz ("Yolun uzunluğunu daxil edin"),

writeln("Sürət dəyəri"

Həm simvolik məlumatın, həm də dəyişən dəyərlərin eyni vaxtda çıxarılması mümkündür, sonra yazma və ya yazma ifadəsində onlar vergüllə ayrılır, məsələn:

yaz ("Temperatur dəyəri ", t),

writeln("Sürət ", v, "hərəkət zamanı ", t).

Diqqət yetirin ki, sözlərin sonunda apostrofdan əvvəl boşluq qalır.

Bu niyə edilir?? Təbii ki, aşağıdakı rəqəmsal məlumatlar sözlərdən boşluqla ayrılmalıdır.

Nədir fərq yazma və yazma prosedurlarının işində?

Yazma proseduru eyni sətirdə (eyni sətirdə) məlumat daxil etmək və ya çıxarmaq üçün aşağıdakı giriş və ya çıxış prosedurlarını tələb edir).

Əgər proqram yazma ifadəsini təyin edirsə və onun ardınca başqa yazma və ya writeln ifadəsi gəlirsə, onda onların çıxardığı məlumat birinci yazma ifadəsinin məlumat sətrinə əlavə olunacaq.

Məsələn: write("Bu gün və sabah olacaq ");

yaz ("həftə sonları");

Ekranda göstərilir:

Bu gün və sabah istirahət günləri olacaq

";will" sözü arasındakı boşluq; və ";həftə sonu"; birinci sətrin sonunda boşluq qoyulur. Əgər orada deyilsə, o zaman çıxış baş verəcəkdir sorunsuz :

write("Bu gün və sabah olacaq");

yaz ("həftə sonları");

Bu gün və sabah bayram olacaq

Daha bir neçə misal: t:=20;

write("Hərəkət vaxtıdır");

yaz ("saniyə");

Hərəkət müddəti 20 saniyədir

write("Rəqəmlərin cəmidir");

yaz (" və məhsul ");

Rəqəmlərin cəmi 30, hasil isə 216-dır

Prosedur yazınhər bir yeni sətrin əvvəlindən məlumat daxil etmək və ya çıxarmaq üçün aşağıdakı giriş və ya çıxış prosedurlarını təmin edir.

Bir proqramda:

writeln("Bu gecə, bu gecə, bu gecə");

writeln("Pilotların, açığı, heç bir işi olmayanda");

Ekranda göstərilir:

Bu gecə, bu gecə, bu gecə,

Pilotların, düzünü desəm, heç bir işi olmayanda

Bir proqramda:

writeln("Ədədlərin cəmi və fərqi bərabərdir:");

Ekranda:

Rəqəmlərin cəmi və fərqi bərabərdir:

5. Read və readln operatorları. Məlumatların daxil edilməsi prosedurları

Məlumat çıxarma operatorları kimi, read və reeadln operatorları da daxilə daxil olmaq üçün operatorlardır məlumatların daxil edilməsi prosedurları.

İki ingilis sözündən olan read (read) və readln operatorları read (read) və line (line) kompüter yaddaşına informasiya daxil etmək üçün proqramlarda istifadə olunur və "; oxumaq"; dəyərləri dəyişənə çevirmək.

Bu operatorların işini və məlumatların daxil edilməsi prosedurlarını nəzərdən keçirək.

Proqramımızda readln(a) proseduru var. Proqramı icra edərkən, readln ifadəsi ilə qarşılaşdıqda, kompüter daxil etməyi gözləyərkən fasilə verir. Klaviaturadan a - 16 dəyişəninin qiymətini daxil etdikdən sonra kompüter bu dəyəri a dəyişəninə təyin edəcək, yəni. adlı yaddaş yerinə göndərəcək a və proqramı icra etməyə davam edəcək. Biz bu prosesə "; oxumaq"; dəyərləri dəyişənə çevirmək.

Beləliklə, read və readln prosedurları ";read"; dəyişənlərin qiymətlərini təyin edin və onları orada yazılmış dəyişənlərə təyin edin.

Bir neçə belə dəyişən ola bilər, sonra onlar vergüllə ayrılmış bu operatorlarda yazılır, məsələn:

oxumaq (a, b, c, n, g, j, i), readln (e, f, k, p, d) və s.

Read və readln prosedurlarının işi arasında fərq nədir?

Oxu proseduru özündən sonra bir sətirdə məlumatın daxil edilməsini və ya çıxarılmasını tələb edəcək, readln proseduru isə yeni sətirin əvvəlindən özündən sonra məlumatları daxil edib çıxarmağa imkan verir.

Misal üçün:

Proqramda: yaz ("a və b qiymətlərini daxil edin"); oxumaq (a, b);

write("Məlumatı bir sətirə daxil edin");

Proqramın bu hissəsi yerinə yetirildikdə, ilk yazma ifadəsində yazılmış hər şey ekranda görünəcək, sonra kursor eyni sətirdə yerləşəcək və kompüter a və b qiymətlərinin daxil edilməsini gözləyəcəkdir. . Gəlin onların dəyərlərini daxil edək - 2 və 3, onları boşluqla ayıraraq və ya başqa sözlə, boşluqla ayırın. Bundan sonra, eyni sətir növbəti yazma ifadəsində yazılmış məlumatları göstərəcəkdir.

Ekranda:

a və b dəyərlərini daxil edin 2 3 Məlumatı bir sətirə daxil edin

Bir proqramda:

writeln("a, b və c dəyərlərini daxil edin); readln(a, b, c);

writeln("Sətrin əvvəlindən məlumatın daxil edilməsi və çıxarılması");

Ekranda:

a, b və c dəyərlərini daxil edin

Xəttin əvvəlindən məlumatın daxil edilməsi və çıxarılması

Fəsil 2. Proqramların daxil edilməsi və icrası

1. Turbo Pascal 7.0 inteqrasiya olunmuş mühitdə.

Turbo Pascal işə salındıqdan sonra ekranda aşağıdakı qabıq görünəcək (şək. 3-ə bax):

düyü. 3

Açılan pəncərənin yuxarı sətirində "; menyu"; Turbo Paskalın mümkün iş rejimləri, aşağı - əsas olanların məqsədi haqqında qısa məlumat funksiya düymələri. Ekranın qalan hissəsi pəncərəyə aiddir mətn ikiqat çərçivə ilə təsvir edilmiş və proqram mətnini daxil etmək və redaktə etmək üçün nəzərdə tutulmuş redaktor.

Proqrama daxil olanda biz Turbo Pascal mühitində qurulmuş mətn redaktoru ilə işləyirik. Buna görə də aşağıda redaktorun işi və onun əsas əmrləri ilə tanış olacağıq.

Ətraf mühitin redaktə vəziyyətində olmasının əlaməti redaktor pəncərəsində kursorun olmasıdır - kiçik yanıb-sönən tire.

Proqram mətni yaratmaq üçün bu mətni makinada mətn yazarkən edilənlərə bənzər klaviaturadan istifadə etməklə daxil etmək lazımdır. Növbəti sətri doldurduqdan sonra B>Enter> " düyməsini basın; Daxil edin"; kursoru növbəti sətirə keçirmək üçün (kursor həmişə ekranda növbəti daxil edilmiş proqram simvolunun yerləşdiriləcəyi yeri göstərir).

Redaktor pəncərəsi uzun və kifayət qədər geniş vərəq vərəqini təqlid edir, onun bir hissəsi ekran pəncərəsində görünür. Kursor aşağı kənara çatarsa, redaktor pəncərəsi sürüşür: onun məzmunu bir sətir yuxarıya doğru hərəkət edir və aşağıda yeni sətir ";" görünür. vərəq";. Turbo Paskalda ən uzun sətir uzunluğu 126 simvoldur.

Pəncərə aşağıdakı düymələrdən istifadə edərək vərəqə nisbətən dəyişdirilə bilər:

PgUp- səhifə yuxarı ( PageUP- səhifə yuxarı);

PgDn- aşağı Səhifə ( Aşağı Səhifə- aşağı Səhifə);

Ev- cari xəttin əvvəlinə ( EV- ev);

Son- cari xəttin sonuna ( SON- son);

Ctrl-PgUp- mətnin əvvəlinə;

Ctrl-PgDn- mətnin sonuna qədər.

Kursor düymələri " kursor” mətni ekrana sığdırmaq üçün köçürülə bilər (qeyd edin, yalnız mətn!). By "; təmiz "; ekran yazı ilə örtülmürsə, kursor hərəkət etmir!

Növbəti simvolu daxil edərkən səhv etsəniz, sol ox (düymə) ilə göstərilən düymədən istifadə edərək onu silə bilərsiniz. Backspace- B>Geri>, o, B>Enter> düyməsinin üstündəki əsas alfasayısal düymələrin zonasının sağında və yuxarısında yerləşir - “ Daxil edin"). B>Del düyməsi et> (Sil - silmək, silmək) olan simvolu silir Bu an kursoru, Ctrl-Y əmri isə kursorun yerləşdiyi bütün xətti göstərir. Yadda saxlamaq lazımdır ki, Turbo Paskal redaktoru hər sətirin sonunda ekranda görünməyən ayırıcı simvol daxil edir. Bu simvol B>Enter> düyməsi ilə daxil edilir və B>Backspace> və ya B>Del düyməsi ilə silinir. et> . Ayırıcı daxil etməklə/silməklə siz "; kəsmək”/";yapışqan"; xətlər.

Kimə "; kəsmək"; xətti, kursoru istədiyiniz yerə aparın və B>Enter> düyməsini sıxaraq "; yapışqan"; bitişik sətirlərdə kursoru birinci sətrin sonunda yerləşdirmək və B>Del düyməsini sıxmaq lazımdır. et> və ya kursoru növbəti sətrin əvvəlinə qoyun və B>Backspace> düyməsini basın.

Daxiletmə rejimi

Redaktorun normal iş rejimi daxiletmə rejimidir ki, bu rejimdə hər yeni daxil edilmiş simvol "; yayılır"; ekranda mətn, sətrin qalan hissəsini sağa sürüşdürün. Nəzərə alın ki, "; kəsmə"; və çatışmayan simvolların sonradan daxil edilməsi yalnız bu rejimdə mümkündür.

Nümunələr "; kəsmə";, ";yapışdırmaq"; sətirlər və mətnə ​​simvol daxil etmək.

Tutaq ki, nədənsə ekranda aşağıdakı qeyd alındı:

Proqram Serg; var

a, b, c: tam ədəd;

Proqramın yazılmasının estetik tərəfindən danışırıqsa, o zaman sözlə başlayan təsvir bölməsinin olması arzu edilir. var, qırmızı xətt ilə başladı. Mətndə dəyişiklik etmək üçün kursoru hərfin üzərinə qoyun v və B>Enter> düyməsini sıxın, kursordan sonrakı və altındakı mətnin bir hissəsi növbəti sətirə keçəcəksə, əldə edirik:

Proqram Serg;

a, b, c: tam ədəd;

Daha çox gözəllik və aydınlıq üçün, kursoru hərəkət etdirmədən, ancaq məktubun üzərində buraxın v, B>Boşluq> düyməsini bir neçə dəfə basın. Bütün xətt sağa doğru hərəkət edəcək və giriş belə görünəcək:

Proqram Serg;

a, b, c: tam ədəd;

Başqa bir vəziyyəti fərz edək, mətnin bir hissəsi olduqda "; partladı"; və buna ehtiyacımız var"; yapışqan"; məsələn, belə çıxdı:

write("İllərin sayını daxil edin

sürü Seryozha olardı ";);

Kursoru ";р" hərfindən əvvəl ikinci sətrin əvvəlinə qoyun; və B>Geri> düyməsini basın, biz əldə edirik:

write("Seryozha illərin sayını daxil edin");

Bunu fərqli şəkildə edə bilərsiniz, kursoru ";o" hərfindən sonra birinci sətrin sonuna qoyun; və B>Sil> düyməsini bir neçə dəfə basaraq ";yuxarı çək"; alt xətt.

B>Geri> və B>Del düymələrindən istifadə etməklə et> Bacarmaq "; birləşmək"; ";cırıq” xətti. Məsələn, bu vəziyyətdə:

write("Seryozha illərin sayını daxil edin");

Kursoru ";d" hərfinin qarşısına qoyun; və “;Enter” sözünə qədər B>Backspace> düyməsini bir neçə dəfə basın; istədiyiniz konstruksiyanı qəbul edəcək və ya kursoru “e” hərfindən sonra qoyaraq; B>Sil> düyməsini bir neçə dəfə basın.

Çatışmayan simvolların daxil edilməsi daha da asanlaşdırılır.

Məsələn, bir neçə məktubu qaçırdınız:

wrte("Siz Serjin olacağı illərin sayısınız");

Birinci sözdə “;i” hərfi yoxdur, “;Enter” sözündə; ";Seryozha" sözündə iki ";di" hərfi yoxdur; ";er" hərfləri;.

Kursoru ";t" hərfinin üzərinə qoyun; birinci sözdə və klaviaturadan “;i” yazın, o, dərhal lazımi yerə daxil ediləcək. Sonra kursoru ";t" hərfinə qoyun; ";Vvete" sözündə; və klaviaturadan “di” sözünü daxil edin; dağılacaq"; və ";di"; hərfləri yerinə düşəcək. Kursoru ";e" üzərinə qoyun; ";Sezha" sözündə; və ";er" yazın;,

Qarışdırma rejimi

Redaktor həmçinin mövcud köhnə mətnin üzərində yeni simvolların üst-üstə düşməsi rejimində də işləyə bilər: bu rejimdə yeni simvol kursorun göstərdiyi simvolu əvəz edir və kursorun sağındakı sətrin qalan hissəsi isə işarəyə köçürülmür. sağ. Qarışdırma rejiminə keçmək üçün B>Ins düyməsini basın ert> (Insert- daxil edin), bu düyməni yenidən basarsanız, daxiletmə rejimi yenidən bərpa olunacaq. Redaktorun hansı rejimdə işləməsinin göstəricisi kursorun formasıdır: daxil etmə rejimində kursor yanıb-sönən alt xətt kimi görünür, üst-üstə düşmə rejimində isə bütün simvolu gizlədən böyük yanıb-sönən düzbucaqlıdır.

Avtomatik girinti rejimi

Redaktorun başqa bir xüsusiyyəti odur ki, o, adətən avtomatik girinti rejimində işləyir. Bu rejimdə hər yeni sətir əvvəlki ilə eyni ekran mövqeyindən başlayır.

Avtomatik girinti rejimi proqram mətnləri üçün yaxşı dizayn üslubunu dəstəkləyir: sol kənar vurğudan girintilər müxtəlif operatorlar və proqramı daha vizual edin.

Komanda ilə avtomatik girinti rejimini ləğv edə bilərsiniz Ctrl-O I(düyməni basmaqla Ctrl düyməsi əvvəlcə basılır O, sonra açar O düymə sərbəst buraxılır və basılır I), əmri təkrarlayın Ctrl-O I avtomatik girinti rejimini bərpa edəcək.

Ən çox istifadə olunan əmrlər aşağıda verilmişdir mətn redaktoru Turbo Pascal, yuxarıda göstərilənlər istisna olmaqla.

Redaktə əmrləri

Backspace- B>Geri> - kursorun solundakı simvolu silmək;

Del- kursorun işarə etdiyi simvolu silmək;

Ctrl-Y- kursorun yerləşdiyi xətti silmək;

Daxil edin- B>Enter> - yeni sətir daxil edin, "; kəsmək"; köhnə;

Ctrl-Q L- cari xətti bərpa edin (əgər etibarlıdırsa

kursor dəyişdirilmiş sətirdən çıxmadı).

Blokla işləmək

Ctrl-K B- blokun başlanğıcını qeyd edin;

Ctrl-K Y- bloku silmək;

Ctrl-K V- bloku hərəkət etdirin;

Ctrl-K P- blok çap etmək;

Ctrl-K H- bloku gizlət/göstərmək (işarəni sil);

Ctrl-K K- blokun sonunu qeyd edin;

Ctrl-K C- surət bloku;

Ctrl-K W- bloku disk faylına yazmaq;

Proqramın icrası

Proqram yazıldıqdan sonra onu icra etməyə cəhd edə bilərsiniz.

Bunun üçün B>Ctrl>+ düymələrini sıxın (B>Ctrl> düyməsini basıb saxlayın və B>F9> düyməsini sıxın). Eyni əməliyyatı əsas menyuya keçərək, B>F10> düyməsini sıxaraq və seçimi seçmək üçün göstəricini hərəkət etdirməklə həyata keçirmək olar. Qaç və B>Enter> düyməsini basın.

Ekranda bu seçimlə əlaqəli ikinci səviyyəli menyu açılacaq. Yeni menyu "; düşür"; yuxarı sətirdən, buna görə də belə menyu tez-tez açılan menyu adlanır. Ekran belə görünəcək (bax. Şəkil 4):

düyü. 4

İndi yeni menyuda seçimi tapmaq lazımdır KAÇ(başla) və B>Enter> düyməsini basın.

Mətn daxil edərkən heç bir səhv baş verməyibsə, bir neçə saniyədən sonra ekrandakı şəkil dəyişəcək. Turbo Pascal ekranı istifadəçinin işləyən proqramının ixtiyarına verir. Bu ekran adlanır proqram pəncərəsi.

Müraciətə cavab olaraq:

Seryozha olacaq il sayını daxil edin, 16 daxil edin və B>Enter> düyməsini basın.

İcra başa çatdıqdan sonra (proqramın işləməsi çox vaxt onun icrası adlanır) ekranda yenidən proqramın mətni ilə redaktor pəncərəsi görünəcəkdir. Proqram pəncərəsinin şəklini görməyə vaxtınız yoxdursa, Alt-F5 düyməsini basın. Bu vəziyyətdə redaktor pəncərəsi gizlənəcək və proqramın nəticələrini görə biləcəksiniz. Ekranı redaktor pəncərəsinin oxutma rejiminə qaytarmaq üçün istənilən düyməni basın.

Proqramın nəticələrini görmək üçün ekranı daha rahat edə bilərsiniz. Bunun üçün ekranın altındakı ikinci pəncərəni aça bilərsiniz.

Bunu etmək üçün əsas menyudan seçim rejiminə keçmək üçün F10 düyməsini basın, göstəricini seçimə aparın Debug(debug) və B>Enter> düyməsini sıxın - ekranda bu seçimlə əlaqəli ikinci səviyyəli menyu açılacaq. Ekran belə görünəcək (şək. 5-ə baxın):


düyü. 5

Yeni menyuda OUTPUT seçimini tapın, göstəricini onun üzərinə aparın və B>Enter> düyməsini basın.

Ekranın aşağı hissəsində ikinci bir pəncərə görünəcək, lakin o, artıq yox olmayacaq.

İndi ekranda iki pəncərənin eyni vaxtda görünməsini təmin edək: yenidən F10 düyməsini basın, seçin PƏNCƏRƏ, B>Enter> düyməsini basın, göstəricini seçimə aparın KAPI(kafel) və B>Enter> düyməsini basın.

Hər şey düzgün aparılırsa, ekran belə görünəcək (bax Şəkil 6):

düyü. 6

Proqram pəncərəsini təsvir edən ikiqat çərçivə bu xüsusi pəncərənin hazırda aktiv olduğunu göstərir.

Redaktor pəncərəsini aktiv edək: B>Alt> düyməsini sıxın və onu buraxmadan 1 rəqəmi olan düyməni sıxın (redaktorun pəncərəsi 1 nömrə, proqram pəncərəsi 2 nömrədir, yuxarı sağda bu nömrələr yazılıb). çərçivələrin küncləri). İndi hər şey proqramla daha da işləmək üçün hazırdır.

İlk səhvlər və onların düzəldilməsi

1. Məsələn, readln(a) ifadəsindən sonra nöqtəli vergül yoxdur. Proqramı işə saldıqdan sonra B>Ctrl>+B>F9> düymələrini sıxmaqla ekranın yuxarı sətirində qırmızı rənglə yazılmış mesaj görünəcək:

Səhv 85: ";;"; gözlənilir.

(Səhv 85: ";;"; yoxdur.)

Redaktor kursoru çatışmayan simvoldan sonra növbəti simvola, bizim nümunəmizdə b dəyişəninə təyin edəcək. İstənilən düyməni basdıqdan sonra səhv mesajı yox olur və redaktor daxiletmə rejiminə keçir. Kursoru istədiyiniz yerə aparmalı, nöqtəli vergül qoymalısınız - “;” və işləməyə davam edin.

2. Dəyişən dəyişənlərin təsvirində yazılmır, lakin o, proqramda mövcuddur, məsələn, dəyişən c. Proqramı işə saldıqdan sonra aşağıdakı mesaj görünəcək:

Səhv 3: Naməlum identifikator.

(Xəta 3: Naməlum ID.)

Kursor bu dəyişənə, bizim nümunəmizdə dəyişənə yerləşdiriləcək c. Səhv düzəldilməlidir, yəni. dəyişən yazın c dəyişən təsvirləri bölməsinə keçin və işləməyə davam edin.

3. Operatordan sonra heç bir müddət yoxdur son proqramın sonunda. Kompilyator mesajı belə olacaq:

Səhv 10: Faylın gözlənilməz sonu.

(Xəta 10: Faylın sonu etibarsızdır.),

kursor hərfin üzərinə qoyulacaq "; e"; bir sözlə "; son";. Biz buna son qoyub proqramı yenidən işə salmalıyıq.

Faylın diskə yazılması

Beləliklə, proqram redaktə edildi və icra edildi (sürüşdürüldü), indi onu diskə yazmaq lazımdır. Bunu etmək üçün, seçimi seçdiyiniz əsas menyudan istifadə edə bilərsiniz "; Fayl"; (şək. 7-ə baxın). Hərəkətlərin ardıcıllığı aşağıdakı kimidir: 1) F10 düyməsini basın və əsas menyuya keçin; 2) göstəricini seçimə köçürün "; Fayl"; və B>Enter> düyməsini basın, seçimlərin ikinci menyusu açılacaq "; Fayl";:

düyü. 7

Seçimini seçə bilərsiniz "; Yadda saxla";. Aktiv redaktor pəncərəsinin məzmununu disk faylına yazır.

Əgər siz B>Enter> düyməsini sıxsanız, mühit müəyyən edilməmişsə və pəncərə NONAME00.PAS adı ilə əlaqələndirilmişsə, fayl adı tələb edəcək. Adı dəyişdirə və ya eyni şəkildə buraxa bilərsiniz.

Bu seçim B>F2> düyməsini istifadə edərək birbaşa redaktordan çağırılır.

Siz seçimi seçə bilərsiniz YADDA SAXLAAS. O, aktiv redaktor pəncərəsinin məzmununu başqa ad altında disk faylına yazır.

Bu seçim üçün dialoq qutusu belə görünür (Şəkil 8-ə baxın):

düyü. 8

Giriş sahəsində aktiv redaktor pəncərəsinin məzmununun kopyalanacağı faylın adını yazmalısınız. Mövcud faylı seçim sahəsindən və ya seçimləri olan protokoldan seçə bilərsiniz. Bu halda, mühit parametrlərinizdən asılı olaraq, faylın köhnə məzmunu məhv ediləcək və ya .BAK uzantısı ilə ehtiyat nüsxə kimi saxlanılacaq.

Proqram mətninin sətir-sətir qeydi

Paskalda proqram mətnini sətirlərə bölmək qaydaları yoxdur.

Ancaq bir proqram yazmaq üçün bir az verə bilərsiniz

Proqram mətninin yalnız gözəllik naminə deyil, səhvlərə yol verməmək üçün (və əsas şey budur!) aydın şəkildə təşkil edilməsi çox vacibdir. (Vizual mətndə səhvləri tapmaq daha asandır.)

1. Qısa və mənalı əlaqəli ifadələr istisna olmaqla, hər bir ifadə yeni sətirdə yazılmalıdır.

Misal üçün,

write ... readln ... - bir sətirdə yazılır, qısa tapşırıq operatorları bir sətirdə yazıla bilər:

a:= 23; b:= 105; c:= -11.2.

2. Müxtəlif xətlərdə yerləşən eyni səviyyəli operatorlar şaquli olaraq hizalanmalıdır, yəni. sol kənarından bərabər məsafədə.

Məsələn, üçrəqəmli ədədin rəqəmlərinin cəmini təyin etmək üçün operatorlar ardıcıllığını yazaq:

s:=a div 100;

d:=a div 10 mod 10;

e:=a mod 10;

Burada bütün operatorlar bərabərdir, onlar ardıcıl olaraq bir-birini izləyirlər, ona görə də hamısı eyni şaquli mövqedən başlayır.

3. Başqa operatora daxil olan operatorlar bir neçə mövqe ilə sağa sürüşdürülməlidir (bərabər üstünlük verilir).

əgər... onda

4. Əsas söz cütlərinin şaquli düzülüşü tövsiyə olunur: başlamaqson, artıq tanış olduğumuz, eləcə də sonradan tanış olacağımız sözlər: təkrarlamaqqədər, rekordson, halson.

Burada ən populyar operator yerləşdirmə seçimlərindən bəziləri var əgər:

A) əgər... onda ...

başqa ...

b) əgər... onda ...

başqa...

V) əgər...

sonra ...

başqa ...

G) əgər ...

sonra ...

başqa ...

d) əgər ... sonra ... başqa ...

6. Şərhlər ya izah etdikləri konstruksiyanın (identifikator, operator, onun hissəsi) yanında, ya da ayrıca sətirdə yazılır.

Sənəd

proqramlaşdırma proqramlaşdırma proqramlaşdırma, general... Qrobovaya sükut. › Bir neçə dəfə cütləşdi proqramlaşdırma keçdi...

  • Alistair Cowburn cüt proqramlaşdırma üstünlükləri və mənfi cəhətləri

    Sənəd

    Araşdırma ilə bağlı proqramlaşdırma və təşkilati effektivlik. Heyrətamiz... dil proqramlaşdırma, müəyyən dizayn üsulları və proqramlaşdırma, general... Qrobovaya sükut. › Bir neçə dəfə cütləşdi proqramlaşdırma keçdi...

  • Neyro-linqvistik proqramlaşdırmaya giriş Şəxsi ustalığın ən yeni psixologiyası

    Sənəd

    çağırılacaqmı?" Nəticə neyrolinqvistik idi proqramlaşdırma- arxasında gizlənən çətin bir ifadə... səssiz, səs, səs, səs, danışır, sükut, dissonans, samit, ahəngdar, pirsinq, sakit...

  • NEYROLİQVİSTİK PROQRAMLAMA (başlayanlar üçün metodik vəsait)

    Sənəd

    PSİXOTERAPİYA MƏRKƏZİ "LAD" V.İ.ELMANOVIÇ NEYROLİQVİSTİK PROQRAMLAMA(başlayanlar üçün metodik vəsait) 1-ci HİSSƏ. ... MODALİTLƏR (A). 1. Səs = 0 olarsa, "dinləyir" sükut", əgər səs maksimumdursa, o zaman “yandır...

  • Dildə Paskal proqramlaşdırma read və readLn kimi göstərişlərdən istifadə olunur. Onlar nədirlər?

    Oxuma təlimatı nədir?

    Bu təlimat Paskal dilindən istifadə edərkən PC klaviaturasından müxtəlif dəyişən dəyərlərin daxil edilməsini təmin etmək üçün nəzərdə tutulmuşdur. Sözügedən təlimatdan istifadə sxemi sadə görünür: oxumaq kimi (“dəyişən dəyər”).

    Təcrübədə oxu təlimatı fayldan müəyyən məlumatların oxunmasını və müvafiq məlumatlardan çıxarılan dəyərlərin proseduru çağırarkən göstərilən dəyişənlərə sonradan təyin edilməsini təmin etmək üçün istifadə olunur.

    İstifadəçi məlumat daxil edərkən səhv edərsə, o, təlimatlarda əks olunan hər hansı bir dəyişən növünə uyğun gəlmirsə, proqram əmrlərin icrasını dayandırır; Eyni zamanda, kompüter ekranında proqramda səhv baş verdiyini bildirən bir mesaj görünür.

    Proqramçı bir neçə oxuma təlimatından istifadə edərsə, məlumatlar bir sətirdə bir şəkildə daxil ediləcəkdir. Aktiv növbəti keçid yalnız cari xətt bitdikdə mümkündür. Bununla belə, siz readLn təlimatından istifadə edərək başqa sətirdə yerləşən məlumatları oxuya bilərsiniz. Onun xüsusiyyətlərinə daha yaxından nəzər salaq.

    readLn təlimatı nədir?

    ReadLn təlimatının mahiyyəti proqramda aşağıdakı şərti təyin etməkdir:

    • sətirə daxil edilmiş istənilən nömrə təlimata uyğun olaraq sonuncu dəyişənə təyin edilir;
    • xəttin qalan sahəsi proqram tərəfindən işlənmir, növbəti təlimat yeni giriş tələb edəcəkdir.

    Beləliklə, təlimatı daxil edə bilərsiniz:

    readLn(C,D); oxumaq (E);

    Və bundan sonra siz klaviaturadan 1 2 3 seriyasını daxil etsəniz, o zaman C dəyişəni 1, D - 2 qiymətini alacaq. Amma istifadəçi yeni nömrə daxil edənə qədər proqram E dəyişəninə konkret qiymət təyin etməyəcək.

    Oxuma təlimatında olduğu kimi, əgər istifadəçi readLn əmrindən istifadə edərək səhv məlumat növü daxil edərsə, proqram çıxır və xətanın baş verdiyini bildirən bir mesaj göstərir.

    Müqayisə

    ReadLn ilə read arasındakı əsas fərq ondan ibarətdir ki, birinci prosedur proqramın təlimatların yazıldığı sətirdən sonra faylın sətirinə keçməsini nəzərdə tutur. İkinci prosedur proqrama növbəti sətirdə yerləşən məlumatları yalnız istifadəçinin icazəsi ilə oxumağa imkan verir - əgər o, Enter düyməsini basarsa.

    Təcrübədə, readLn təlimatı ən çox tətbiqin icrasının nəticəsi ilə növbəti təlimata keçid arasında gecikmə təmin etmək üçün istifadə olunur. Müvafiq gecikmə istifadəçi Enter düyməsini basana qədər davam edir.

    Paskal dilində readLn ilə read arasında fərqin nə olduğunu müəyyən edərək, nəticələri cədvəldə qeyd edirik.

    Oxuyun (prosedur)

    Yazılan fayllar üçün fayl komponentini dəyişənə oxuyur.
    - Üçün mətn faylları, bir və ya bir neçə dəyəri oxuyur
    bir və ya bir neçə dəyişənə

    Elan

    Yazılan fayllar

    Prosedurun oxunması(F , V1 [, V2,...,Vn ]);

    Mətn faylları

    Prosedurun oxunması([ Var F: Mətn; ] V1 [, V2,...,Vn ]);

    Rejim

    Windows, Real, Qorunur

    Qeydlər

    Sətir dəyişənləri üçün:

    Oxu, növbəti sətir sonu markerinə qədər (lakin daxil deyil) bütün simvolları oxuyur Eof(F) Doğru olacaq. Oxumaq oxuduqdan sonra növbəti sətirə keçmir. Nəticə sətir sətir dəyişəninin maksimum uzunluğundan uzundursa, o, kəsilir. İlk Oxuduqdan sonra hər bir sonrakı Oxu zəngi sətir sonu markerini görəcək və sıfır uzunluqlu sətir qaytaracaq.

    Çoxlu sətir dəyərlərini oxumaq üçün çoxlu ReadLn zənglərindən istifadə edin.

    Seçim aktiv olduqda Genişləndirilmiş Sintaksis, Oxu proseduru oxuya bilər null sonlu sətirlər null əsaslı simvol massivlərinə.

    Tipli dəyişənlər üçün Tam və ya Real:

    Oxu rəqəmsal sətirdən əvvəl olan boşluqları, nişanları və ya sətir sonu markerlərini atlayacaq. Rəqəmsal sətir gözlənilən formata uyğun gəlmirsə, I/O xətası baş verir, əks halda dəyişənə nəticədə qiymət verilir. Növbəti Oxu nömrə xəttini bitirən boşluq, nişan və ya sətir sonu işarəsi ilə başlayacaq.

    həmçinin bax

    Misal

    Crt, Dos istifadə edir;

    var
    F: Mətn;
    Ch: Char;

    başlamaq
    (Fayl adını buradan əldə edirik komanda xətti }
    Assign(F, ParamStr(1));
    Sıfırla (F);
    EOF (F) olmasa da
    başlamaq
    Oxu (F, Ch);
    Yaz(Ch); (Faylın məzmununu ekranda göstərin)
    son;
    son.

    
    Kateqoriyalar