Ishdan maqsad



Yüklə 151,52 Kb.
səhifə2/10
tarix20.05.2022
ölçüsü151,52 Kb.
#58833
1   2   3   4   5   6   7   8   9   10
1-laboratoriya ishi

Haqiqiy toifa




Haqiqiy toifaga kasr qismlari bor chekli sonlar to’plami kiradi. Haqiqiy sonlar ustida turli matematik amallarni bajarish mumkin. Bu amallarning natijalari ham haqiqiy toifaga kiradi. Bu yerda ham binar amallarga nisbatan masalaning

yechimlari mantiqiy toifaga tegishli bo’ladi.
Kompyuter xotirasida haqiqiy sonlar asosan qo’zg„aluvchan nuqta formatida saqlanadi.
937,56 = 93756 * 10-2 = 0,93756 * 103=0,93756E3
0,002355=2,355*10-3=2,355E-3
Xotiraga haqiqiy sonlar yozilayotganda uning uchun ajratilgan xotira sohasining 1-bitiga E simvolidan chapdagi mantissa ishorasi 1 ta bitga, keyin mantissa, undan keyin E – ya’ni har doim 10 soniga teng deb olinadigan eksponenta belgisi darajasining ishorasi 1 ta bitga, so’ngra uning darajasidagi son, ya’ni E simvolidan o’ngdagi son yoziladi (1.2-rasmga qarang).
0 1 9 10 11 15



Mantissa ishorasi

mantissa

Tartib ishorasi

tartib

1.2-rasm. Haqiqiy sonlarni xotiraga yozilish shakli
Haqiqiy (kasr) qiymatli toifaga tegishli o’zgaruvchilarni e‟lon qilish uchun
float, double, long double xizmatchi so’zlaridan foydalanish mumkin.



Haqiqiy toifa shakllari
1.2-jadval




Toifa ko’rinishi

Mazkur toifadagi o’zgaruvchining qabul qiladigan qiymat oralig„i

O’zgaruvchining kompyuter xotirasidan egallaydigan joyi

Float

+/- 3.4E-38 … +/-3.4E+38

4 bayt

Double

+/- 1.7E-308 … +/- 1.7E-308

8 bayt

long double

+/- 1.7E-308 … +/- 1.7E-308

8 bayt



Berilgan m va n haqiqiy sonlari ustida quyidagi amallarni bajarish dasturini ko’rib chiqaylik.
#include 11

using namespace std; int main()
{
float m,n; cin>>m>>n; float k1=m+n; float k2=m-n; float k3=m*n;
cout<
system("PAUSE");
}
C++ da ushbu toifalarni oldiga signed va unsigned kalit so’zlarini qo’yib toifalarni modifikatsiyalash mumkin. Masalan,
signed float unsigned float signed double unsigned double signed long double
unsigned long double
      1. Mantiqiy toifa


Mazkur toifa mantiqiy mulohazalarning to’g„riligini aniqlash uchun, turli xil dasturlash tillarida turlicha ifodalaniladigan ifodalarni 2 ta ko’rinishda aniqlaydi. Mantiqiy ma’lumotlar ustida quyidagi mantiqiy operatsiyalarni bajarish mumkin: konyunktsiya (va), dizyunktsiya (yoki) va inkor (yo’q), hamda qiyinroq bo’lgan ekvivalentlik, implikatsiya, chiqarib tashlash va boshqa operatsiyalar. Yuqorida keltirilgan ixtiyoriy operatsiyaning natijasi – mantiqiy qiymatga ega bo’ladi.
Mantiqiy qiymatni xotirada saqlash uchun bitta bit yetarli.



Asosiy mantiqiy funksiyalarning chinlik jadvali



Mantiqiy toifa tavsifi
1.3-jadval


1.4-jadval




Toifa ko’rinishi

Mazkur toifadagi o’zgaruvchining qabul qiladigan qiymat oralig„i

O’zgaruvchining kompyuter xotirasidan egallaydigan joyi

Bool

true , false

1 bayt



C++ da and mantiqiy amalining yana bir yozilish shakli &&, or yoki ||, not
yoki ! va “inkor-yoki” amali xor kabi yozilishi mumkin.
bool toifasiga bitta misol ko’rib chiqamiz.
#include using namespace std; int main()
{ bool b=true; bool s=false;
bool d1=not b || s; bool d2=b && s; bool d3=b xor s;
cout< "< "<
system("PAUSE");
}
Natija: 0 0 1
      1. Belgili toifa


Belgili toifaga belgilarning chekli to’plami yoki liter, ularga lotin alifbosidagi harflar va unda yo’q kirill harflar, o’nlik raqamlar, matematik va maxsus belgilar kiradi. Belgili ma’lumotlar hisoblash texnikasi bilan inson o’rtasidagi aloqani o’rnatishda katta ahamiyatga ega. Belgili toifadagi o’zgaruvchilar ustida turli matematik amallarni bajarish mumkin. Bunda amallar belgilarning ASCII kodlari ustida bajariladi. Shu sababli, belgili toifalarni taqqoslash ham mumkin va taqqoslashlarning natijalari bool toifasiga kiradi. C++ tilida belgili toifalarning qiymatlari qo’shtirnoq ichida beriladi va u bitta belgidan iborat bo’lishi mumkin.



Belgili toifa shakllari
1.5-jadval




Toifa ko’rinishi

Mazkur toifadagi o’zgaruvchining qabul qiladigan qiymat oralig„i

O’zgaruvchining kompyuter xotirasidan egallaydigan joyi

char(signed char)

-128…127

1 bayt

unsigned char

0…255

1 bayt

wchar_t (kengaytiril gan simvolli tip)

0…65535

2 bayt

Satr (qator) – bu qandaydir belgilar ketma-ketligi bo’lib, satr bitta, bo’sh yoki bir nechta belgilar birlashmasidan iborat bo’lishi mumkin. C++ tilida satrlarni e‟lon qilish belgilar massivi shaklida amalga oshiriladi. Bu haqda keyinroq batafsil to’xtalamiz.


Belgili toifadagi o’zgaruvchilar ustida o’zlashtirish, taqqoslash va turli matematik amallarni bajarish mumkin. Bunda agar belgili toifalar ustida matematik amallar bajariladigan bo’lsa, belgilarning ASCII kodlari olinadi.

Belgilar va qatorlarga doir quyidagi sodda dasturni keltiramiz:
#include using namespace std; int main()
{ char x='a'; char y='b'; char min;
cout<<”belgilar yig‘indisi=”< va b simvollarni ASCII kodlarini yig‘indisi - 195
cout< "< b ni ekranga chiqarish if(x>y) min=y;
else min=x;
cout<<”min=”< ekranga a chiqadi system("pause");
}
Natija: belgilar yig‘indisi=195 a b
min=a



    1. Yüklə 151,52 Kb.

      Dostları ilə paylaş:
1   2   3   4   5   6   7   8   9   10




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin