Алматы экономика және статистика академиясы


System.Console.WriteLine("The current date



Pdf көрінісі
бет4/11
Дата07.04.2017
өлшемі1,49 Mb.
#11217
1   2   3   4   5   6   7   8   9   10   11

System.Console.WriteLine("The current date   

          and time is " + System.DateTime.Now);  

Мұнда экранға  күн-ай мерзімі мен уақытты беретін тәсіл мәлімет шығарады. Now  



DateTime 

объектісінің қасиеті, ол жүйелік дата мен уақытты береді. Now — статикалық 

қаси-ет, сондықтан оны DateTime объектісін жаса-май-ақ қолдана беру ге болады.  

            

Программа жұмысы нәтижесі: 

 

Тағы бір мысал 



//   Listing1_1.cs  файлы   

using System; 

namespace ConsoleApplication1 

{   ///  

/// Summary description for Class1 

///
 

class Class1  

{  ///  

/// The main entry point for the application 

///
 

[STAThread] 

    public static void Main(string[ ] args) 

    {   // 

 // TODO: Add code to start application 

 // 

Console.WriteLine("Hello, World!"); 

    } 

    } 

} 

 


25 

 

Using  System  директивасы  System    атау-лар  кеңістігінен  тікелей  стандартты  класс 



аттарын (кеңістік атын көрсетпей) пайдалануға рұхсат береді. 

      


namespace түйінді сөзі осы программа үшін ConsoleApplication1 атты өз атаулар 

ке-ңістігін жасайды. Бұл программа объектіле-ріне ат беруге болатынын көрсетеді. 

    

2 не 3 қиғаш сызықтан басталатын жолдар комментарий болып саналады, 3 сызық 



прог-рамма комментарийлерінен құжат жасауға мүмкіндік береді.   

C#  тілі  объектіге  бағытталған  тіл,  сондықтан  оның  программасы  бір-бірімен  өзара 

бай-ланысқан  кластардан  тұрады.  Бұл  программада  тек  бір  ғана  класс  бар,  оған  өзіміз 

Class1  деп  ат  бердік,  класс  сипаттамасы  class    түйінді  сөзінен  басталады  да,  аты 

жазылады.Сонан  соң  жүйелі  жақша  ішінде  класс  элементтері  көрсетіледі.  Олардағы 

функциялар мен мәлі-меттер тәсіл – метод деп аталады.  

     

Жоғарыдағы  класс  ішінде  тек  бір  элемент  –  Main  методы,  яғни  тәсілі  бар.  Әр 



программада осындай бір басты тәсіл болады, программаны орындау содан басталады.  

 

3. Программаны  компиляциядан өткізу және орындау 

       

С#  тіліндегі  программа  мәтін  түрінде  жазылады.  Кез  келген  мәтіндік  редактор 



арқылы программаны компьютерде тереміз де, артынан оны компиляциядан өткізіп, сонан 

соң орындап, нәтижесін аламыз. 

       

Сонымен,  компьютердің  С#  тіліндегі  программаны  орындауы  үшін,  оны  маш-



ина тіліне аударатын компилятор керек екені түсінікті шығар.  

        


Компилятор программа мәтіні жазылған файлды оқып, оны талдайды, қателерін 

тексереді.  Қателері  түзетілген  соң,  программаны  орындап,  нәтиже  беретін  атқарылатын 

файл (исполняемый) жасайды.  

         

Программаны  бір  рет  компиляция-дан  өткізген  соң,  оны  әр  түрлі  бастапқы 

мәліметтер үшін атқарылатын файлды  қайталап орындай отырып, нәтижелер аламыз. 

        Microsoft W

indows  NT,    Windows  2000,  Windows  ХР,  Windows  2007 

операциялық 

жүйелерінде 

Visual 

Studio.NET 



ортасы 

қолданылады, 

ол 

программалаудыңбіріктірілген  ортасы  болып  табылады,  яғни  құрамында  C#  тәрізді 

мәтіндік редакторды, компиляторды, т.б. қосымша програм-маларды біріктіріп тұрады.  



 

3-4-

ші лекция.C# тілінің элементтері 

 



 

Тілдің құрамы 

 



Атаулар, айнымалылар және  константалар 

 



C++ 

тіліндегі  мәліметтер типтері 

 



C++ 

тілінің константалары 

 



C# тілінің негізгі операциялары 

 



Қарапайым енгізу-шығару операцияларын орындау 

 

1. 

Тілдің құрамы 

     


Кез  келген  табиғи  тілдің  мәтінінде  символдар,  сөздер,  сөз  тіркестері  және 

сөйлемдер болады. Осындай элементтер программалау тілдерінде де болады, мұнда бірақ 

сөздер  –  лексемдер  (қарапа-йым  конструкциялар),  сөз  тіркестері  –  өрнектер  деп,  ал 

сөйлемдер – операторлар деп аталады.    

     


Лексемдер  симолдардан  тұрады,  өрнектер  –  лексемдер  мен  символдардан,  ал 

операторлар –  символдардан, өрнектерден және лексемдерден тұрады. 

• 

Тілдің  алфавиті  немесе  оның  символдары  —  бұл  бөлінбейтін  негізгі 



белгілер,  солардан  тілдің  барлық  мәтіндері  құрастырылады.  С#  тілінің  алфавиті 

ретіне Unicode символдары қолданылады. Unicode кодтары барлық қолданылатын 

алфавиттерді  бірден  бейнелей  алады.  Оның  алғашқы  128  символы  ANSI-кодтар 

кес-тесіне сәйкес келеді.   



26 

 

• 



 

Лексем (token-токен) немесе қарапайым конструк-ция — өзіндік мағынасы 

бар тілдің ең кіші бірлігі. Олардың құрамы: 

1.

 



Идентификаторлар; 

2.

 



Түйінді сөздер; 

3.

 



Операция таңбалары; 

4.

 



Айыру таңбалары; 

5.

 



Константалар (литералдар). 

2. Атаулар, айнымалылар және  константалар С# тілінің алфавиті Си ++ 

тілімен бірдей деуге болады: 

 



  

бас және кіші латын әріптері; 

 

 0-



ден 9-ға дейінгі араб цифрлары; 

 



арнайы белгілер: []  {}  ,  .  ( )  +  -  /  *  \  |  %  ; :  ? <>  = !  &  #  ^  "  '; 

 



айыру символдары: бос орын (пробел), табуляция символы, жаңа 

жолға көшу таңбасы; 

      

Символдардан лексемдер құралады, олар: 



 

 



идентификаторлар; 

 



 

түйінді сөздер; 

 

 



операция таңбалары; 

 



 

костанталар, яғни тұрақтылар

 

 



бөлгіштер (жақша, нүкте, үтір, айыру символдары). 

 

Идентификаторлар  –  программалық  объектінің  аты  (атауы).  Әріп  немесе  астын 

сызу  таңбасы  иденти-фикатордың  бірінші  символы  болуы  мүмкін,  бірақ  цифр  бола 

алмайды. Идентификаторлар мысалдары:  

X, bc, A12, Bagasy,  BITES_PER_WORD , aty_goni 

 

Түйінді  сөздер  (keyword)  –  компилятор  үшін  ар-найы  мәні  бар  қордағы 

(резервтегі) идентификаторлар. 



 

Операция  таңбалары  –  операндтармен  (мәндер-мен)  іс-әрекет  атқару  үшін 

қолданылатын бір немесе бірнеше символдар. 



 

Тұрақтылар – программа орындалу барысында өзгермейтін шамалар. 

 

Комментарийлер  –  компилятор  үшін  маңызы  жоқ  программаның  бөлігі  және 

программа  мәтінін  оқу  ыңғайлы  болуы  үшін  қолданылады.  Ол  /*  және  */  қоршалып 

тұрады немесе жол соңында // символынан басталады.  

С# тілінің түйінді сөздері тізімі 

abstract 

do 

in 


protected 

true 


as 

double 


int 

public 


try 

base 


else 

interface 

readonly 

typeof 


bool 

enum 


internal 

ref 


uint 

break 


event 

is 


return 

ulong 


byte 

explicit 

lock 

sbyte 


unchecked 

case 


extern 

long 


sealed 

unsafe 


catch 

false 


namespace 

short 


ushort 

char 


finally 

new 


sizeof 

using 


checked 

fixed 


null 

stackalloc 

virtual 

class 


float 

object 


static 

void 


27 

 

const 



for 

operator 

string 

volatile 



continue 

foreach 


out 

struct 


while 

decimal 


goto 

override 

switch 

 

default 



if 

params 


this 

 

delegate 



implicit 

private 


throw 

 

 



3. С# тіліндегі мәліметтер типтері 

С# тілі қатаң түрде типтелген тіл, яғни әрбір ай-нымалы немесе объект данасы 

белгілі бір типке жатқызылуы тиіс, бұл орындалатын амалдардың дұрыстығын тексеру 

мүмкіндігін береді. 

    

Егер элементтер құрастырылуын негізге алсақ, онда типтер қарапайым және 



құрылымды болып бөлінеді.  

    


Жасаушыға байланысты типтер құрамдас және программалаушы анықтаған болып 

бөлінеді. 

    

Статикалық типтегі мәліметке жады бірден бөлінеді де, динамкалық типтегі 



мәліметке жады оны жариялау кезінде емес, оны программада пайдалану кезінде бөлінеді.   

С# тіліндегі мәліметтер типтерін                             жіктеу түрлері 



 

С# тілінде құрамдас 15 тип бар, олардың сегізі бүтін сандық типке жатады. Олар — 

С# түйінді сөздерімен анықталады да, кез келген программада қолданыла береді. 

bool 


Логикалық немесе бульдік тип, оның мәндері АҚИҚАТ/ЖАЛҒАН болып келеді 

byte  


8-

разрядты таңбасыз бүтін санды тип  

char  

Символдық тип 



string  

Тіркестік тип 

decimal  

Қаржылық есептеулерге арналған сандық тип  



28 

 

double  



Екі еселенген дәлдіктегі жылжымалы нүктелі сандық тип 

float  


Жылжымалы нүктелі сандық тип  

int  


Бүтін сандық тип 

long  


Ұзын бүтін санды бейнелеуге арналған тип  

sbyte  


8-

разрядты таңбалы бүтін санды тип  

short  

Қысқа бүтін санды бейнелеуге арналған тип  



uint  

Таңбасыз бүтін санды тип 

ulong  

Ұзын таңбасыз бүтін санды бейнелеуге арналған тип  



ushort  

Қысқа таңбасыз бүтін санды бейнелеуге арналған тип 

object 

Барлық құрамдас және тұтынушы типтері осыдан бастау алады 



 

Логикалық тип 

Тип аты 

Жүйелік тип 

Мәндері 

Көлемі 

(ені) 

Bool 

System.Boolean 

true, false 

8 бит 

Арифметикалық бүтін сан түріндегі типтер 

Тип аты 

Жүйелік тип 

Өзгеру диапазоны  Көлемі (ені) 

Sbyte 

System.SByte 

-128 — 127 

Таңбалы, 8 Бит 

Byte 

System.Byte 

0 — 255 

Таңбасыз, 8 Бит 

Short 

System.Short 

-32768 —32767 

Таңбалы, 16 Бит 

Ushort 

System.UShort 

0 — 65535 

Таңбасыз, 16 

Бит 

Int 

System.Int32 

≈(-2*10^9 — 

2*10^9) 

Таңбалы, 32 Бит 

Uint 

System.UInt32 

≈(0 — 4*10^9) 

Таңбасыз, 32 

Бит 

Long 

System.Int64 

≈(-9*10^18 — 

9*10^18) 

Таңбалы, 64 Бит 

Ulong 

System.UInt64 

≈(0— 18*10^18) 

Таңбасыз, 64 

Бит 

Арифметикалық жылжымалы нүктелі сандар түріндегі типтер  

Float 

System.Single 

+1.5*10^-45 - 

+3.4*10^38  

7 цифр 

Double 

System.Double 

+5.0*10^-324 - 

+1.7*10^308  

15-

16 цифр 

Арифметикалық бекітілген нүктелі сандар түріндегі тип  

29 

 

Decimal 



System.Decimal  +1.0*10^-28 - 

+7.9*10^28 

Цифрлардың 28-

29 

таңбасы  

 

Программада кездесетін константалардың жазылуына қарай, яғни солардың сыртқы 



бейнесіне сәйкес белгілі бір тип тағайын-далады. Егер ол типті өзгерту керек болса, онда 

санның соңына жалғастырылып кер-екті типтің атына сәйкес бір әріп – L, l (long) немесе 

U, 

u (unsigned) жазылады. Мысалы, 32L константасының типі long және ол компьютердің 



жедел  жадында  4  байт  орын  алады.  Қажет  болса,  L  және  U  әріптерін  қатарластыра  да 

қолдануға бола-ды, мысалы, 0x22UL немесе 05Lu. 

     

Мәліметтердің decimal типі үтірден кейінгі 28 таңбаға дейін сақтай алады, ол 



көбінесе ақшалық мәндерді сақтау үшін қолданылады. 

     


Айнымалыға немесе константаға float типін бергенде, мән соңына "F" или "f " 

символын қоюға, мысалы: 

float myFloat1 = 1.2f;  

Ал тип double болса, "D" или "d"  символын қоюға болады, бірақ айнымалы нақты 

анықталған соң, әріптерді қоймаса да болады. Мысалы: 

double myDoublel = 1234.5678;  

double myDouble2 = 1234.5678d; 

Символдық тип 

      

Символдық тип char 16-биттік Unicode символ болып табылады. 



      Unicode – 

әлем тілдерінің барлық символдарын электрондық формада бейнелеуге 

арналған стандарт.  

Символдық типтер 

Тип аты 

Жүйелік тип 

Өзгеру 

диапазоны 

Дәлдігі 

Char


 

System.Char

 

U+0000   –   U+ffff



 

16 биттік    Unicode   

символдары 

String


 

System.String

 

Unicode 


символдары тіркесі

 

Төменде мәліметтердің 11 сандық типтерінің әрқайсысы үшін ең кіші (минимал) 



және ең үлкен (максимал) мәндерін көрсететін программа мысалы келтірілген. 

// MinAndМax.cs программасы 

 using System;  

 class MinAndMax  

 {  public static void Main()  

 { Console.WriteLine("sbyte: {0} to {1}",sbyte.MinValue, sbyte.MaxValue);  

 Console.WriteLine("byte: {0} to {1}",byte.MinValue, byte.MaxValue);  

 Console.WriteLine("short: {0} to {1}",short.MinValue, short.MaxValue);  

 Console.WriteLine("ushort:{0} to {1}",ushort.MinValue, ushort.MaxValue);  

 Console.WriteLine("int: {0} to {1}",int.MinValue, int.MaxValue);  

Console.WriteLine("uint: {0} to {1}",uint.MinValue, uint.MaxValue);  

 Console.WriteLine("long: {0} to {1}",long.MinValue, long.MaxValue);  

 Console.WriteLine("ulong: {0} to {1)",ulong.MinValue, ulong.MaxValue);  

 Console.WriteLine("float: {0} to {1}",float.MinValue, float.MaxValue);  

 Console.WriteLine("double:{0} to {1}",double.MinValue, double.MaxValue);  

 Console.WriteLine("decimal:{0} to {1}",decimal.MinValue, decimal.MaxValue); 

      } 

 } 

Программа жұмысы нәтижесі: 

sbyte : -128 to 127  

30 

 

byte: 0 to 255  



short: -32768 to 32767  

ushort: 0 to 65535  

int: -2147483648 to 2147483647  

uint: 0 to 4294967295  

long: -9223372036854775808 to 9223372036854775807  

ulong: 0 to 18446744073709551615  

float : -3.402823E+38 to 3.402823E+38  

double: -

1.79769313486232E+308 to 1.797693134862Э2Е+308  

decimal: -79228162514264337593543950335 to 79228162514264337593543950335 

 

   


 

С#  тілінде  bool  типі  бар,  ол  true  немесе  false  сияқты  екі  мәнді  қабылдай  алады. 

Салыстыру операцияларының нәтижелері (==, !=, <, >, <= и >=) — bool типінде болады. 

Bool типі бүтін типке келтіріледі (true – 1, ал false — 0), бірақ ол тікелей орындалуы тиіс.  

Char типі бір символды, aл string — бірнеше сим-волдардан тұратын сөз тіркестерін 

сақтау үшін қажет.    

Char  типі  бүтін  типтерден  өзгеше  болып  келеді  және  де  оны  sbyte  немесе  byte 

типтерімен шатастыр-мау керек. Char типіндегі айнымалылар 16 бит (бірақ ол short немесе 

ushort типтерінен өзгеше) орын алады.  

С#  тілінде  мәліметтер  типтерінің  элементтерді  сақтау  тәсіліне  қарай  тағы  екі 

категориясы  (санаты)  бар:  мәндертиптері  (value  types)  және  сілтемелік  типтер.  

Мәндертиптері  дегеніміз  шамаға  компи-лятор  бөліп  берген  компьютер  жадындағы 

биттер тізбегі.  



Сілтемелік  типтер  мәліметтердің  өздерін  емес,  олардың  адрестерін  сақтайды, 

мұндағы  мән  компью-тердің  динамикалық  жадындағы  басқа  бір  объектіге  (үйіндіге  – 

кучаға) сілтеу арқылы жасалады. Мәндер типтеріне логикалық тип, арифметикалық тип, 

құры-лымдар  және  саналатын  (перечисления)  типтер  жа-тады.  Сілтемелік  типтерге 

жиымдарсөз тіркестері (жолдар) және кластар жатады.  

 

4. C# 

тілінің константалары 

Константа 

Форматы 

Мысалдар 

Бүтін 


Ондық: ондық цифрлар 

тізбесі, нөлден басталмайды 

(егер сан 0 болмаса) 

8, 0, 199226 

8u, 0LU, 199226L 

Соңында тип-ті  

беретін 

U,L,UL,LU,IU

тәрізді 

жұрнақтар болуы 

мүмкін 

Он алтылық: 0х немесе 0X 



таңбаларынан басталатын 

он алтылық цифрлар 

(0,l,2,3,4,5,6,7,8,9,A,B,C,D,E,

F) 


0xA, 0x1B8, 0X00FF 

0xAU, 0x1B8LU, 

0X00FFFL 


31 

 

Нақты  



Ондық: 

[цифрлар].[цифрлар]

1

 

5.7,  .001, 35. 



5.7F,  .001d, 35m 

Соңында тип-ті  

беретін F, D, Mтәрізді 

жұрнақтар болуы 

мүмкін 

Экспоненциалдық 



[цифрлар][.][ 

цифрлар]{Е|е}[+|-][ 

цифрлар] 

0.2Е6, .11е-3, 5Е10 

0.2Е6D, .11е-3m, 

5Е10d 


Символдық 

Апостроф таңбасымен 

қоршалған бір немесе екі 

символ 


'

А', 'ю', '*', 'db', '\0', 

'\n\', \012', '\x07\x07' 

Тіркестік 

Тырнақшаға алынған 

символдар тіркесі 

"

Мұнда Азат болды", 



"\t

Нәтижесі:r=\0xF5\n" 

/*  Example2_7.cs   константаларды қолдану  */ 

class Example2_7  

{  public  static void Main()  

   { 


     const  int  Length =   3; 

     


//  математикалық константа  Пи  

     const double Pi = 3.14159; 

      

//  жарық жылдамдығы   метр/секунд  



     

const double SpeedOfLight  =  2.99792е8; 

     Console.WriteLine("Length = " + Length); 

     Console.WriteLine("Pi = " + Pi); 

     Console.WriteLine("SpeedOfLight = " + SpeedOfLight);  

  } 


}  

Программа нәтижесі  

Length = 3 

Pi = 3.14159 

SpeedOfLight = 299792000 

 

 



6.

 

C# 

тілінің негізгі операциялары 

 

     


Төменде C# негізгі операциялары олардың приоритеттері бойынша берілген. 

Операндтарының санына қарай олар унарлық, бинарлық және тернарлық болып 

бөлінеді. 

 

Унарлық (бір орынды) операциялар 



Опера

ция 

Қысқаша сипаттамасы 

32 

 

++ 

1-

ге арттыру 



-- 

1-

ге кеміту 



~ 

разрядтар бойынша терістеу 



! 

логикалық терістеу 



- 

арифметикалық терістеу (унарлық минус) 



+ 

унарлық плюс 



new 

жадыны бөлу 



typeof 

типті алу 



checked 

тексерілетін код 



unchecked 

тексерілмейтін код 



(type)х      

типті түрлендіру 



 

// Инкремент (++) және декремент (--) операциялары 



using System;  

namespace Increment1 

{  class Class1 

    {  static void Main()  

       { 

int x = 3, y = 3; 

Console.Write("Prefix opnek mani: "); 

Console.WriteLine( ++x); 

Console.

Write(" х-ting natigelik mani: "); 

Console.WriteLine( x); 

Console.Write("Postfix opnek mani: "); 

Console.WriteLine( y++); 

Console.Write(" y-ting natigelik mani: "); 

Console.WriteLine( y); 







 

Программа жұмысы нәтижесі: 

Prefix opnek mani:  4 

х-ting natigelik mani:  4 

Postfix opnek mani:  3 


Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   10   11




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

    Басты бет