Microsoft Word Лекция docx


-мысал. Тікелей түрлендіру операторын  Complex



Pdf көрінісі
бет16/16
Дата13.11.2022
өлшемі191,79 Kb.
#49680
1   ...   8   9   10   11   12   13   14   15   16
Байланысты:
Лекция 6

8-мысал.
Тікелей түрлендіру операторын 
Complex
класында тікелей қолдану нұсқасын 
құрайық.
using System; 
// Комплекс сандармен жұмыс істеуге арналған класс
class Complex { 
int a, b; // санның нақты және жорамал бөліктері
public Complex() { a = b = 0; } 
public Complex(int x, int y) { a = x; b = y; } 

// тікелей түрлендіру операторын асыра жүктеу 
public static explicit operator double(Complex op1) 

return Math.Sqrt(Math.Pow(op1.a,2) + Math.Pow(op1.b,2)); 

 
// комплекс санды шығару
public void Shygaru() 

Console.WriteLine(a + " + " + b + "i "); 


class Program { 
static void Main() { 
Complex C1 = new Complex(3, 8); 
Complex C2 = new Complex(0, 2); 
Console.Write("C1 complex sany: "); 
C1.Shygaru(); 
Console.Write("C2 complex sany: "); 
C2.Shygaru(); 
double x = (double)C1; 
Console.WriteLine("C1 complex sanynyng
moduli = {0:#.##}", x); 
x = x + (double)C2; 
Console.WriteLine("C1 zhane C2 complex sandarynyng
modulderining qosyndysy = {0:#.##}", x); 
Console.WriteLine(); 
Console.ReadKey(); 


Бұл программаның нәтижесі:
C1 complex sany: 3 + 8i 
C2 complex sany: 0 + 2i 
C1 complex sanynyng moduli = 8.54 
C1 zhane C2 complex sandarynyng modulderining kosyndysy = 10.54


Тікелей немесе жанамалы түрлендірулерді операторларын таңдау кезінде бұл шектеулерге 
қосымша бірсыпыра ұсыныстар беріледі. Жанамалы түрлендірулердің барлық артықшылықтарына 
қарамастан, оларды тек түрлендіруде қателер болмайтындай жағдайларда қолдану керек.
Қателерді болдырмас үшін жанамалы түрлендірулер келесідей шарттар орындалатын кездерде 
ғана ұйымдастырылуы тиіс.
1) алдымен, мысалы, қысқарту, толып кету немесе таңбаны жоғалту нәтижелерінде мәлімет 
жоғалмайтындай болуы керек.
2) түрлендіру ерекше жағдайды туындатпауы тиіс.
Егер де жанамалы түрлендіру осы екі шартты қанағаттандырмаса, онда тікелей түрлендіруді 
таңдау қажет. 
 


Достарыңызбен бөлісу:
1   ...   8   9   10   11   12   13   14   15   16




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет