9-mavzu. Algoritmlashtirish va dasturlash asoslari. Reja


-jadval. Printf funksiyasi katori turining simvollari



Download 0,57 Mb.
bet13/29
Sana03.03.2022
Hajmi0,57 Mb.
#480256
1   ...   9   10   11   12   13   14   15   16   ...   29
Bog'liq
Dasturlash tillari

3-jadval. Printf funksiyasi katori turining simvollari


Ma’lumot turlari

Tur simvoli

Natija

Simvol

C

Bitta simvol




D

Unli butun ishorali




I

Unli butun ishorali




O

Sakkizlik butun ishorasiz




N

Unli butun ishorasiz




X

Unoltili butun ishorasiz; kuyidagi raqamlar terilmasi - 0123456789abcdef




X

Unoltili butun ishorasiz; kuyidagi raqamlar terilmasi - 0123456789ABCDEF

Kursatkich

P

Near turidagi kurstkichlar uchun kuyidagi kurnishdagi siljitish buladi: 0000. Far turidagi kursatkichlar esa kuyidagicha ifodalanadi: SSSS:0000

Butunga kursatkich

N




Xaqiqiy

F

Ishorali kattalikni kuyidagi formatda chikaradi [-]dddd.dddd




E

Ishorali xakikiy kattalikni eksponensial formatda chikaradi [-]d.dddde[+|-]ddd




E

Ishorali xakikiy kattalikni eksponensial formatda chikaradi [-]d.ddddE[+|-]ddd




G

Ishorali xakikiy kattalikni f formatida chikaradi




G

Ishorali xakikiy kattalikni F yoki E formatida chikaradi

Kuyidagi miolni kuraylik. Dastlabki kod 3-listingda keltirilgan. Bu dasturda formatlashtirilgan chikarish amalga oshiriladi, printf dan foydalanilgan.


3-listing.



01

// printf dan foydalanish dasturi

02




03

#include "stdafx.h"

04

#include

05

int main()

06

{ int anInt=67;

07

char aByte=128;

08

char aChar='@';

09

float aSingle=355.0;

10

double aDouble=1.130e+002;

11

printf("%3d + %2d = %3d\n",aByte, anInt, aByte + anInt );

12

printf("Chiqarilishda quyidagi o'zgartirish spetsifikatsiyasidan foydalanilgan %%lf :\n");

13

printf(" %6.4f / %10.4lf = %7.5lf\n",aSingle, aDouble, aSingle / aDouble );

14

printf("Chiqarilishda quyidagi o'zgartirish spetsifikatsiyasidan foydalanilgan %%le :\n");

15

printf(" %6.4e / %6.4le = %7.5le\n",aSingle, aDouble, aSingle / aDouble );

16

printf("Chiqarilishda quyidagi o'zgartirish spetsifikatsiyasidan foydalanilgan %%lg :\n");

17

printf(" %6.4g / %6.4lg = %7.5lg\n",aSingle, aDouble, aSingle / aDouble );

18

printf("Simvolli o'zgaruvchi aChar: %c\n", aChar);

19

printf("ASCII-kod %c: %d\n", aChar, aChar);

20

return 0;

21

}

22

#include "stdafx.h"

23

#include

24

int main()

25

{ int anInt=67;

26

char aByte=128;

27

char aChar='@';

28

float aSingle=355.0;

29

double aDouble=1.130e+002;

30

printf("%3d + %2d = %3d\n",aByte, anInt, aByte + anInt );

31

printf("Chiqarilishda quyidagi o'zgartirish spetsifikatsiyasidan foydalanilgan %%lf :\n");




3-listing dasturi buyicha chiqarilish:
128 + 67 = 195
Chiqarilishi quyidagi uzgartirish spetsifikatsiyasini ishlatadi %lf :
355.0000 / 113.0000 = 3.14159
Chiqarilishi quyidagi uzgartirish spetsifikatsiyasini ishlatadi %le :
3.5500e+02 / 1.1300e+02 = 3.14159e+00
Chiqarilishi quyidagi uzgartirish spetsifikatsiyasini ishlatadi %lg :
355 / 113 = 3.1416
Simvolli uzgaruvchi aChar: @
ASCII-kod @: 64
ESC- ketmaketliklar- bu maxsus simvolli kombinatsiyalar bulib, ular probeli simvollar va nografik simvollardan xamda simvolli konstantalardan tashkil topadi. Ular karetkani kaytarish, simvollarni literal ifodalashda va tabulyasiyalar spetsifikatsiyalarida ishlatiladi. ESC-ketmaketlik chap ogma chizikdan va undan keyin keluvchi harf , punktatsiya belgilaridan tashkil topadi.
Jadval 2.2. ESC- ketmaketliklar
-------------------------------------------------------------------------------------
ESC- ketmaketliklar Nomi
---------------------------------------------------------------------------------------
\n YAngi kator
\t Gorizontal tabulyasiya
\v Vertikal tabulyasiya
\b Probel
\r Karetkani kaytarish
\f YAngi saxifa
\a Zvonok(signal)
\' Navbatdagi kavыchka
\" Ikkilik kavыchka

Operatsiyalar


Operatsiya- bu simvollarning maxsus kombinatsiyalari bulib, ular xar xil kiymatlarni shakillantirishni spetsifitsikatsiyalaydi. Kompilyator bu kombinatsiyalarning xar birini mustakil birlik –leksema deb ataluvchi birlik sifatida in­terpretatsiya kiladi.
Jadval Operatsiyalar
---------------------------------------------------------------------------------------
Operatsiya Nomi
! Mantiqiy inkor
~ Bitli tuldirishlar
+ Qo’shish
- Ayirish, arifmetik inkor
* Kupaytirish
/ Bo’lish
% Koldik
<< Chapga siljitish
>> O’nga siljitish
< Kichik
<= Kichik yoki teng
> Katta
>= Katta yoki teng
== Teng
!= Teng emas
& Bitli I
| ILI ni kiritgan
^ ILI ni kiritgan bitli
&& Mantikiy I
|| Mantikiy ILI
' Ketmaket bajarilishi (vergul)
?: SHartli ifoda operatsiyasi
++ Inkrement
-- Dekrement
= Oddiy uzlashtirish
+= O‘zlashtirish kushish bilan
-= O‘zlashtirish ayirish bilan
*= O‘zlashtirish kupaytirish bilag
/= O‘zlashtirish bulish bilan
%= O‘zlashtirish koldik bilan
>>= O‘zlashtirish ung siljitilish bilan
<<= O‘zlashtirilish chap siljitilish bilan
&= O‘zlashtirish bitli I bilan
|= Bitli ILI bilan uzlashtirish
^= Bitli ILI bilan uzlashtirish
C++ tilida ifodalar.
C++ tilida o’zgaruvchi qiymatini birga oshirish va kamaytirishning samarali usullari mavjud. Ular inkrement (++) va dekrement (- -) unar amallaridir. Inkrement va dekrement amallarining prefix va postfiks ko’rinishlari mavjud.
x=y++; // postfiks
x= - -y; // prefix
sanagich ++; // unar amal, “++sanagich;” bilan ekvivalent
a--; // unar amal; “—a;” bilan ekvivalent

i++;

i=i+1;

  1. -;

i=i-1;

a+=b;

a=a+b;

a-=b;

a=a-b;

a*=b-c;

a=a*(b-c);

++i;

i++;

--a;

a- -;

C++da ifodalar quyidagi tartibda hisoblanadi.

  1. Qavs ichidagi

  2. Funksiyalar qiymati hisoblanadi (sin(x), cos(x) va h.k)

  3. Inkor amali (!-not)

  4. Ko’patirish, bo’lish (*, /, %, ….)

  5. Qo’shish kabi amallar (+, -, or, xor)

  6. Munosabat amallari (=, <>, <, >, <=, >=)

Inkrement va dikrement operatorlar.
Inkrement operator (++)
int i,j;
i=10;
j=i++;
cout<Bajarilishi
j=i++
1-misol

Ushbu dasturda inkrement ifodasini bajarilishi keltirilgan.


#include
int main ()
{
int x=5, y=5;
cout<cout<<”,”;
cout<<++x;
cout<<”,”;
cout<}
Ifoda bajarilishi natijasida
5, 7, 6, 6
Ushbu dasturda dekrement ifodasini bajarilishi keltirilgan.
#include
int main ()
{
int x=5, y=5;
cout<cout<<”,”;
cout<<- - x;
cout<<”,”;
cout<}
Ifoda bajarilishi natijasida
5, 3, 4, 4



Inkrement operatori ham, dekrement operatori ham ikki variantda ishlaydi: prefiksli va postfiksli. Perefiksli variantda ular o’zgaruvchidan oldin (++Age), postfiksli variantda esa o’zgaruvchidan keyin (Age++) yoziladi.
Oddiy ifodalarda bu variantlarni qo’llanishida farq katta emas, lekin bir o’zgaruvchiga boshqa o’zgaruvchining qiymatini o’zlashtirishda ularning qo’llanilishi boshqacha xarakterga ega. Perefeksli operator qiymat o’zlashtirilguncha, postfiksli operator esa qiymat o’zlashtirilgandan keyin bajariladi. Buni quyidagi listingdan ko’rishimiz mumkin:

Prefiksli va postfiksli operatorlarni qo’llanishi.


  1. # include < iostream. h >

  2. int main()

  3. {

  4. int myAge = 39;

  5. int yourAge = 39;

  6. cout << “Men” << MyAge <<”yoshdaman \n”;

  7. cout << “Siz” << yourAge <<“yoshdasiz \n”;

  8. myAge++ ; // postfiksli inkrement

  9. ++yourAge; // prefeksli inkrement

  10. cout << “Bir yil o`tdi …\ n”;

  11. cout << “Men” << MyAge <<”yoshdaman \n”;

  12. cout << “Siz” << yourAge <<“yoshdasiz \n”;

  13. cout << “Yana bir yil o`tdi \n”;

  14. cout <<” Men”<< myAge++ <<“yoshdaman \n”;

  15. cout <<”Siz”<<++yourAge<<“yoshdasiz \n”;

  16. cout << “Ma`lumotlarni qaytadan”

  17. cout << “chiqaraylik \n”;

  18. cout <<” Men”<< myAge<<“yoshdaman \n”;

  19. cout <<”Siz”<

  20. return 0;

  21. }

HATIJA:
Men 39 yoshdaman


Siz 39 yoshdasiz
Bir yil o`tdi …
Men 40 yoshdaman
Siz 40 yoshdasiz
Yana bir yil o`tdi …
Men 40 yoshdaman
Siz 41 yoshdasiz
Ma`lumotlarni qaytadan chiqaraylik
Men 41 yoshdaman
Siz 41 yoshdasiz

Butun konstanta- bu o’nli, sakkizlik yoki o’n oltilik son bulib, ular butun turdagi kattalikni ifodalaydi. Unli konstanta kuyidagi formatlarga ega: ,
Bu erda - bu 0 dan 9 gacha bulgan bir yoki undan kup unli raqam. Saakizlik konstanta kuyidagi formatga ega:
0, Bu erda - 0 dan 7 gacha bulgan bita yoki undan kup bulgan sakkizlik raqamlar.
Unoltili konstanta kuyidagi formatda yoziladi:
0x
0X
Bu erda bir yoki undan kup bulgan runoltili raqamlar.
Jadval . Konstantalarga misollar.
O‘nlik Sakkizlik o‘noltilik
----------------------------------------------------------------------------------------
10 012 0xa ili 0xA
132 0204 0x84
32179 076663 0x7dB3 ili 0x7DB3

Butn turdagi konstantalar hamisha musbat kattaliklarni spetsifikatsiya kiladi. Agar manfiy kattaliklar kerak bulib kolsa, u xolda konstantali ifoda – minus belgisi va undan keyin keladigan konstantadan tashkil topgan ifoda yaratiladi. Minus belgisi arifmetik operatsiya shaklida kabul kilinadi. Har bir konstanta uz turi bilan spetsifikatsiya kilinadi, bu tur konstantani xotirada ifodalash usulini va kiymat soxasini aniklaydi. Unli konstantalar int yoki long turida bulishi mumkin. Sakizlik va unoltilik konstantalar kuyidagi turlarda bulishlari mumkin int, unsigned int, long yoki unsigned long. Agar konstanta int turida bulsa , u xolda u int turi bilan spetsifikatsiya kilinadi.

----------------------------------------------------------------------------------------
O‘n oltilik diapozon Sakkizlik diapozon Turi
0x0-0x7FFF 0-077777 int
0x8000-0xFFFF 0100000-0177777 unsigned int
0x10000-0x7FFFFFFF 0200000-017777777777 long
0x80000000-0xFFFFFFFF 020000000000-030000000000 unsigned long

Jadval . Sakkizlik va o‘noltilik konstantalar diapozoni.


Dasturchi istalgan butun konstanta uchun long turini aniklashi mukin, buning uchun konstanta oxiriga "l" yoki "L" harflarini kushib kuyish lozim.
O‘nli konstantalar Sakkizlik konstantalar o‘noltili konstantalar

Konstantalar konstantalar konstantalar


-------------------------------------------------------------------------------------
10L 012L 0xaL ili 0xAL
79l 0115l 0x4fl ili 0x4Fl

Jadval . long turidagi butun konstantalarga misollar.

Download 0,57 Mb.

Do'stlaringiz bilan baham:
1   ...   9   10   11   12   13   14   15   16   ...   29




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish