Guruh: 921 – 22
Bajardi: Jumabayev Azamat
Mavzu: Turlarni almashtrish operatorlari
Turlarni boshqarish operatorlari bilan, bir turga tegishli huquqlarning boshqa turga tegishli narxlarga o'zgartirilishi mumkin. Bu operatorlar ko'rinishda ishlaydi:
- int() butun son tipidagi qiymatlarni integer tipidagi qiymatlarga o' harakat uchun baho.
- float() - son tipidagi qiymatlarni o'nlik son tipidagi qiymatlarga o'lchov uchun baholar.
- str() - qi ymatni matn tipiga o' tugma uchun tugma.
- list - ro'xat (list) tipidagi qiymatlarni boshqariladigan ro'yxatlar o' tugmalari uchun birlashma()
- tuple() - to'plam (tuple)tipidagi qiymatlarni boshqa to'plamga o' tugmalari uchun.
- set() - hanshaga (set) tipidagi qiymatlarni boshqa hanshaga o' tugmasi uchun.
- di() - lug'at (lug'at) tipidagi qiymatlarni boshqa lug'atka o' ' u ct uchun hisob.
Misol uchun, "x" ni son tipidan matn tipiga o' uchun str(x) yoki 5.6 sonini butun son tipiga o' uchun int(5.6) yoki ['apple', 'banana', 'cherry'] ro'yxatni hanshaga o' ulanish uchun set(['apple', 'banana', 'cherry']) yozilishi mumkin. oshiriladi. Ko'pgina dasturlash tillarida matn terish quyidagi ko'rinishdagi sintaksis yordamida amalga oshiriladi: (yangi_ma'lumotlar_turi) qiymati_to_bo'lish. Masalan, (int) 3.14 suzuvchi nuqta qiymatini eng yaqin butun songa yaxlitlaydi.
3. Turni rag'batlantirish: Bu aniq konversiyaning o'ziga xos turi bo'lib, arifmetik operatsiyalar davomida past aniqlikdagi (bayt yoki qisqa) operatorlar yuqori aniqlikka (float yoki double) ko'tariladi.
4. Oshib ketish va to'liq oqim: Turni o'zgartirish muayyan holatlarda to'lib ketish yoki to'ldirish xatolariga olib kelishi mumkin. Agar qiymat ma'lum bir ma'lumot turida saqlanishi mumkin bo'lgan maksimal qiymatdan kattaroq bo'lsa, ortiqcha oqim sodir bo'ladi. Qiymat ma'lumotlar turida saqlanishi mumkin bo'lgan minimal qiymatdan kichikroq bo'lganda kam oqim sodir bo'ladi. Dasturchilar oʻz dasturlarida kutilmagan nosozliklarni oldini olish uchun turlarni oʻzgartirish operatorlari haqida maʼlumotga ega boʻlishlari muhim. Turni o'zgartirish operatorlari ob'ektlarni foydalanuvchi tomonidan belgilangan turlarga aylantirish uchun ham aniqlanishi mumkin. Masalan, Fraction klassi turni o'zgartirish operatori yordamida double ga aylantirilishi mumkin. E'tibor bering, turdagi konvertatsiya operatorlaridan ehtiyotkorlik bilan foydalanish kerak, chunki ular kutilmagan natijalarga olib kelishi mumkin va faqat kerak bo'lganda belgilanishi kerak. Shuningdek, ular kompilyatorga kompilyatsiya vaqtidagi ogohlantirishlar va turdagi nomuvofiqliklari bilan bog'liq xatolarni chiqarishining oldini olishi mumkin.
Masala:
Berilgan satrdagi raqamlar yig’indisi topilsin?
#include
#include
using namespace std;
int main()
{
string s = "Sana: 06.04.2022";
int sum = 0;
for (int i = 0; i < s.size(); i++) {
if(isdigit(s[i])){
sum += stoi(string(1, s[i]));
}
}
cout << "Sum: " << sum << endl;
return 0;
}
Output: 16
Do'stlaringiz bilan baham: |