Write va Writeln protseduralarining farqi shundaki, Write protsedurasi yordamida ma’lumotlar ekranga chiqarilgach yurgich ekranning shu satrida qoladi va ekranga chiqariladigan keyingi ma’lumotlar shu satrga yurgich turgan joydan boshlab chiqariladi. Writeln protsedurasida esa ma’lumotlar ekranga chiqarilgach yurgich keyingi satr boshiga o‘tadi.
Biror vazifa bajaruvchi eng sodda chiziqli tuzilmalarga quyidagilar misol bo‘ladi:
-
So‘zlar orqali
|
Blok-sxemasi
|
Dasturi
|
Ekranda
|
boshlanish;
javob sifatida 23
yozilsin;
tamom.
|
|
begin write(23); end.
|
23
|
|
|
|
|
boshlanish;
javob sifatida 23+21 yozilsin;
tamom.
|
|
begin write(23+21); end.
|
44
|
|
|
|
|
boshlanish;
javob sifatida “MMR”
yozilsin;
tamom.
|
|
begin write(‘MMR’); end.
|
MMR
|
Quyidagi chiziqli tuzilmalarni tahlil etish orqali Write va Writeln protseduralari ishidagi farqni tushunib olish mumkin.
begin
write(‘Yashna, ‘); write(‘gulla ‘); write(‘ona Vatanim!‘); end.
|
|
Dastur bajarilgach, kompyuter ekranida
Yashna, gulla ona Vatanim!
yozuvi hosil bo‘ladi.
|
begin
writeln(‘Yashna, ‘); write(‘gulla ‘); write(‘ona Vatanim!‘); end.
|
|
Dastur bajarilgach, kompyuter ekranida Yashna, gulla ona Vatanim! yozuvi hosil bo‘ladi.
|
begin
write(‘Yashna, ‘); writeln(‘gulla ‘); write(‘ona Vatanim!‘); end.
|
|
Dastur bajarilgach, kompyuter ekranida Yashna, gulla ona Vatanim! yozuvi hosil bo‘ladi.
|
begin
write(‘Yashna, ‘); write(‘gulla ‘); writeln(‘ona Vatanim!‘); end.
|
|
Dastur bajarilgach, kompyuter ekranida
Yashna, gulla ona Vatanim! yozuvi hosil bo‘ladi.
|
begin
writeln(‘Yashna, ‘); writeln(‘gulla ‘); write(‘ona Vatanim!‘); end.
|
|
Dastur bajarilgach, kompyuter ekranida
Yashna, gulla ona Vatanim! yozuvi hosil bo‘ladi.
|
begin
writeln(‘Yashna, ‘); write(‘gulla ‘);
writeln(‘ona Vatanim!‘); end.
|
|
-
Dastur bajarilgach, kompyuter ekranida Yashna, gulla ona Vatanim! yozuvi hosil bo‘ladi.
|
|
begin
write(‘Yashna, ‘); writeln(‘gulla ‘); writeln(‘ona Vatanim!‘); end.
|
|
-
Dastur bajarilgach, kompyuter ekranida Yashna, gulla ona Vatanim! yozuvi hosil bo‘ladi.
|
|
-
begin
writeln(‘Yashna, ‘); writeln(‘gulla ‘); writeln(‘ona Vatanim!‘); end.
|
|
-
Dastur bajarilgach, kompyuter ekranida
Yashna, gulla ona Vatanim! yozuvi hosil bo‘ladi.
|
|
Dasturga nom berish, o‘zgaruvchilarni tavsiflash, o‘zlashtirish operatori va chiqarish protsedurasi qatnashgan chiziqli tuzilmali dasturlarga quyidagilar misol bo‘ladi.
So‘zlar orqali:
boshlanish;
21 ni a ga o‘tkazilsin;
a ni 23 ga qo‘shib m ga o‘tkazilsin;
javob sifatida m yozilsin; 5) tamom.
|
Blok-sxemasi:
|
Dasturi: program o`zlashtirish; var a, m :integer;
begin a:=21; m:=a+23; write(‘M ning qiymati ‘, m, ‘ ga teng‘); end.
|
Dastur bajarilgach, kompyuter ekranida
M ning qiymati 44 ga teng yozuvi hosil bo‘ladi.
|
|
So‘zlar orqali:
boshlanish;
21 ni a ga o‘tkazilsin;
a ni 7 ga bo‘lib b ga o‘tkazilsin;
javob sifatida b yozilsin; 5) tamom.
|
Blok-sxemasi:
|
Dasturi: program chiqarish; var
a :integer; b:real; begin a:=21; b:=a / 7;
write(‘B ning qiymati ‘, B, ‘ ga teng‘); end.
|
Dastur bajarilgach, kompyuter ekranida
B ning qiymati 3.0000000000E+00 ga teng yozuvi hosil bo‘ladi.
|
|
So‘zlar orqali:
boshlanish;
21 ni a ga o‘tkazilsin;
a ni 7 ga ko‘paytmasini 1963 ga bo‘lib g ga o‘tkazilsin;
javob sifatida g yozilsin; 5) tamom.
|
Blok-sxemasi:
|
Dasturi: program o`zlashtirish_chiqarish; var
a :integer; g:real; begin a:=21; g:=a * 7 / 1963; write(‘Javob: ‘, g, ‘ ga teng‘); end.
|
Dastur bajarilgach, kompyuter ekranida
Javob: 7.4885379521E–02 ga teng yozuvi hosil bo‘ladi.
|
Oxirgi ikki misol javobi qo‘zg‘aluvchan nuqtali son ekanligini ko‘rish mumkin. Aslida foydalanuvchiga tushunarli va ancha qulay bo‘lishi uchun ekranda ulardan birinchisining qiymatini butun son 3, ikkinchisining qiymatini 0.07488537952 kabi aks ettirish maqsadga muvofiq bo‘lardi. Paskal dasturlash tilida ma’lumotlarni shu kabi aks ettirish imkoniyati mavjud bo‘lib, bu imkoniyat chiqarish formati deb ataladi.
Ma’lumotlarni chiqarishda chiqarish formatini ko‘rsatish mumkin. Chiqarish formati chiqarilayotgan ma’lumotlarning ko‘rinishini (formatini) belgilaydi. Buning uchun chiqarilayotgan miqdordan keyin “:” (ikki nuqta) belgisi qo‘yiladi va, agar a – haqiqiy turdagi miqdor bo‘lsa, chiqarish formatida ikkita parametr – chiqarilayotgan miqdorga ajratilgan xonalar soni va kasr qismi uchun ajratilgan xonalar soni ko‘rsatiladi. Masalan, WriteLn(a:10:2); protsedurasi a haqiqiy turdagi miqdorning qiymatini chiqarish uchun 10 ta xona ajratadi, shundan bir xonasi nuqta va ikkita xonasi kasr qismi uchun ajratiladi. Agar miqdor butun turda bo‘lsa, chiqarish formatida bitta parametr – chiqarilayotgan miqdorga ajratilgan xonalar soni ko‘rsatiladi. Masalan, WriteLn(b:6); – butun turdagi miqdorlar uchun formatni ko‘rsatishdan maqsad chiqarilayotgan qiymatdan oldin bo‘sh joy qoldirish yoki ma’lumotlarni ustun bo‘yicha tekislashdir. Satrli va belgili turdagi miqdorlar uchun chiqarish formati ularning qiymatini chiqarishga ajratilgan joy (maydon) uzunligini aniqlaydi.
Chiqarilayotgan son yoki matn unga ajratilgan joyning o‘ng chegarasi bo‘yicha tekislanib chiqadi. Masalan, a:=2.34; bo‘lsa, WriteLn(‘a=‘, a:6:2); protsedurasi ekranga a=__2.34 ko‘rinishdagi yozuvni chiqaradi (= belgisidan keyin ikkita bo‘sh joy – probel qoladi).
Chiqarish formatida ajratilgan joy miqdor qiymatining “uzunligi”dan kichik bo‘lsa, chiqarish formati bekor qilinadi va o‘zgaruvchining qiymati to‘liqligicha ekranga chiqariladi. Faqatgina haqiqiy son kasr qismining formati bekor qilinmaydi. Haqiqiy sonni chiqarishda formati ko‘rsatilmasa, u ekranga eksponensal ko‘rinishda chiqariladi. Chiqarish formatini tushunish uchun quyidagi misollarni tahlil etish kifoya.
-
var
a, b : real; m: integer; Begin
a:=23.01; b:=1963; m:=2012; writeln(‘a=‘, a); writeln(‘b=‘, b); write(‘m=‘, m); end.
|
|
Kompyuter ekranida a=2.3010000000E+01 b=1.9630000000E+03 m=2012
|
-
var a, b : real; m: integer; Begin a:=23.01; b:=1963; m:=2012; writeln(‘a=‘, a:2:1); writeln(‘b=‘, b:3); write(‘m=‘, m:3); end.
|
|
Kompyuter ekranida
a=23.0 b=2.0E+03 m=2012
|
-
var a, b : real; m: integer; Begin a:=23.01; b:=1963; m:=2012; writeln(‘a=‘, a:2:2); writeln(‘b=‘, b:4:0); write(‘m=‘, m:4); end.
|
|
Kompyuter ekranida
a=23.01 b=1963 m=2012
|
-
var a, b : real; m: integer; Begin a:=23.01; b:=1963; m:=2012; writeln(‘a=‘, a:6:2); writeln(‘b=‘, b:7:3); write(‘m=‘, m:8); end.
|
|
Kompyuter ekranida a= 23.01 b=1963.000 m= 2012
|
-
var a, b : real; m: integer; Begin a:=23.01; b:=1963; m:=2012; writeln(‘a=‘:1, a:6:2); writeln(‘b=‘:2, b:0:0); write(‘m=‘:5, m:8); end.
|
|
Kompyuter ekranida a= 23.01
b=1963
m= 2012
|
Keltirilgan misollarda ekranga chiqarilgan a, b, m miqdorlarning va belgili turdagi o‘zgarmas miqdorlarning qiymatlari bir xil, ammo ularning ko‘rinishida katta farq bor. Sonning butun qismi qymatini aniq bilmagan holda chiqarish formatidan ehtiyotlik bilan foydalanish zarur.
Paskal dasturlash tilida matn holatida ma’lumotlarni ekranda go‘zal tasvirlash uchun chiqarish formatidan farqli boshqa imkoniyatlar ham ko‘zda tutilgan.
Do'stlaringiz bilan baham: |