Guruh: 921 – 22 Bajardi: Jumabayev Azamat




Download 14.27 Kb.
Sana16.04.2023
Hajmi14.27 Kb.
#51704
Bog'liq
Dastrulash 1 - mustaqil ish
1- Loboratoriya ishi, 11-sinf-informatika-testlar-3, 1, 6mat, Mavzu Prezentatsiya yaratish bosqichlari, referat-boshqaruv-samaradorligi-mavzusida, 999315, 19-20, 6-labaratoriya, 5-labaratoriya, 27-05 11-12, Kenjayev S, 32 м.б Лагер хисобот, xatlov

Guruh: 921 – 22
Bajardi: Jumabayev Azamat

Mavzu: Turlarni almashtrish operatorlari


Turni o'zgartirish operatorlari, shuningdek, konvertatsiya funktsiyalari sifatida ham tanilgan, sinf turini boshqa turga yashirin yoki aniq konvertatsiya qilishga imkon beruvchi sinfning a'zo funktsiyalari. Ular bir turdagi ob'ektlarni boshqa turdagi ob'ektlarga aylantirish uchun ishlatiladi. Turni o'zgartirish operatorlari dasturlash tillarida qiymatni bir turdan ikkinchisiga aylantirish uchun ishlatiladi. Ular dasturchilarga o'zgaruvchining ma'lumotlar turini yoki dasturdagi ifodani o'zgartirishga imkon beradi. Ba'zi bir keng tarqalgan turdagi konvertatsiya operatorlari int, float va double ni o'z ichiga oladi, ular mos ravishda qiymatni butun songa, suzuvchi nuqta raqamiga va ikkita aniqlikdagi suzuvchi nuqta raqamiga aylantirish uchun ishlatiladi. Shuni ta'kidlash kerakki, turdagi konvertatsiya ba'zan aniqlikning yo'qolishiga yoki qiymatlarning qisqarishiga olib kelishi mumkin, shuning uchun dasturchilar ulardan foydalanishda ehtiyot bo'lishlari kerak. Albatta, bu yerda turni oʻzgartirish operatorlari haqida qoʻshimcha maʼlumotlar:
1. Implicit Type Conversion: Qachonki kichikroq ma'lumotlar turidagi qiymat kattaroq turdagi ma'lumotlar turidagi o'zgaruvchiga tayinlangan bo'lsa, konvertatsiya kompilyator tomonidan bevosita amalga oshiriladi. Masalan, qo'sh o'zgaruvchiga butun son qiymatini belgilash.
2. Ochiq turdagi konversiya: Buni matn terish deb ham atashadi. Bu dasturchi qiymatni bir ma'lumot turidan ikkinchisiga aniq o'zgartirmoqchi bo'lganda amalga 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

Download 14.27 Kb.




Download 14.27 Kb.

Bosh sahifa
Aloqalar

    Bosh sahifa



Guruh: 921 – 22 Bajardi: Jumabayev Azamat

Download 14.27 Kb.