Главная страница
Навигация по странице:

  • 1.Айнымалылар және тұрақтылар

  • 2. Арифметикалық операторлар

  • Логикалық амалдар - және дегенді білдіреді;||- немесе дегенді білдіреді;5. Математикалық функциялар

  • 6.Инкременанд. Декременанд

  • Мәліметтерді анықтау және сипаттау Жоспар

  • 3.Инструкция және блок (нұсқау)

  • 4. Меншіктеу операторы және өрнек

  • 5.Формат бойынша шығару және енгізу

  • Белгі алатын мән мағынасы

  • Литер Аргумент мәні мағынасы

  • 6. Оператор немесе нұсқау

  • ОББН лекция 2. Си программалау тіліне кіріспе Жоспар


    Скачать 128.11 Kb.
    НазваниеСи программалау тіліне кіріспе Жоспар
    Дата06.08.2020
    Размер128.11 Kb.
    Формат файлаdocx
    Имя файлаОББН лекция 2.docx
    ТипПрограмма
    #135233
    страница1 из 11
      1   2   3   4   5   6   7   8   9   10   11


    Си++ программалау тіліне кіріспе
    Жоспар

    1.Айнымалылар және тұрақтылар.

    2.Арифметикалық операторлар.

    3.Қатыстық операторлар.

    4.Логикалық амалдар.

    5.Математикалық функциялар.

    6.Инкременанд.Декременанд.

    7.Биттік операторлар.

    8. Жалпы операторлардың орындалу реті
    Си++ қазіргі заманғы негізгі программалау тілдерінің бірі болып табылады. Программалау тілдері жалпы мынандай:

    1. Екілік кодта.

    2. Ассемблер тілінде.

    3. Cи тілінде.

    4. Жоғарғы дәрежелі тілдерде (Pascal, Fortran, Basic).

    түрлерге бөлінеді.

    Си++ программалау тілінің көмегімен жүйелік программаларды, компиляторларды құруға және сонымен бірге кәделі программалар жасауға болады. Си++ программалау тілінде әртүрлі берілгендердің түрімен жұмыс атқаруға болады. Негізгі базалық тип рет литерлік тип болып табылады. Сонымен бірге программалау тілінде бүтін және нақты мәндер де қолданылады. Бұдан басқа типтерді: көрсеткіштер, массивтер, құрылымдар, т.б сипаттап қолдануға болады.

    Си++ программалау тілінде өрнек операторлар мен операндтардан құрылады. Барлық жоғарғы дәрежелі тілдерге ұқсас негізгі конструкциялары бар: қайталау операторы, шартты операторы, таңдау операторы.

    Си++-де жол, жиын, тізім, массивтерді тікелей орындайтын операциялар жоқ. Есте сақтау бөлігін тікелей таратып бөлуге болмайды. Файлдар мен енгізу, шығаруды орындайтын операциялар өзінде жоқ. Си++ программалау тілінде осы мәліметтерді өңдеу үшін функциялар шақырылып, сәйкес операциялар орындалады.

    Белгілі бір уақыт өткеннен кейін кез-келген тілді стандарттан өткізіп отырады. Солардың бірі 1983 ANSI осы стандарт бойынша жұмыс атқарады.

    Жаңа синтаксис бойынша Си++ тілінде қолданылатын жаңа стандартты бекітеді.
    1.Айнымалылар және тұрақтылар
    Turbo Pascal тілінде әрбір қолданылатын тип алдын-ала сипатталуы қажет екенін білеміз.

    Си++ программалау тілінің алғашқы нұсқаларының ерекшеліктерінің бірі көп жағдайда мәліметтерді сипаттамай пайдалануға болатындығында болды. Бірақ соңғы нұсқаларда мәліметтерді сипаттап кету ұйғарылады.

    Американдық ANSI стандарты бойынша айнымалы ретінде әріптерден басталатын латын алфавиттінің элементтер жиынын аламыз.

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

    Негізінен мынадай ұйғарым бар: кіші әріптермен айнымалылар, ал үлкен әріптермен тұрақтыларды жазу қажет .

    Ішкі айнымалылардың ұзындығы 31 орыннан аспайды. Арнайы сөздерді if, else т.б айнымалылар ретінде қолдануға болмайды. Негізгі типтер: char (характер) 1 байт орын алады, int бұның ұзындығы машинаға байланысты, float- 1 есе дәлдіктегі, double- 2 есе дәлдіктегі нақты сандар.

    Негізгі типтермен бірге: short, long- квалификатор (қосымша) қолданылады. 1) қысқа, 2) ұзын дегенді білдіреді. Мысалы: short il; short int il; long a; Бүтін типтердің машинаға байланысты 3 түрі бар: short int, int, long int.

    Тілде таңбалы және таңбасыз элементтерді қарастыруға болады және олар сәйкесінше:singned ,unsingned деп беріледі.

    -127 ... +128 , 1 байт орын алады

    0 ... 255 , 1 байт орын алады

    -32767 ... 32768 , 2 байт орын алады

    0 ... 65535 , 2 байт орын алады.

    Негізгі бүтін тұрақтылар integer типті болады. Бүтін тұрақтылардың соңғы жағына l әрпін жазып қолдануға болады.

    123446L

    Егер таңбасыз бүтін тұрақты болса, онда 145UL жазылады.

    Нақты тұрақтылар нүкте (.) немесе «e» дәрежесі арқылы жазылады. Мысалы: 132.5 немесе fe-5

    Нақты сандардың соңғы жағына f әрпін немесе l әрпін жазуға болады. 12.4f (fload), 12.4l (Long).

    Сөздік тұрақтылар апостропфтың ‘ ’ ішіне алынып жазылады және программада мынадай тізбектерді қолдануға болады. Бұларды ESC тізбектер деп аталады. ESC тізбектер:

    \a -

    \b -

    \f- парақтау;

    \n- жаңа жол;

    \r- enter клавишасы;

    \t- табуляция;

    \v- вертикаль табуляция;

    \\- сызықты орналастыру;

    \?- сұрақ белгісі;

    \’, \’’, \000- сегіздік кодтағы мәліметтер;

    \xhh- он алтылық кодтағы мәліметтер;

    Тұрақты өрнектер алдын-ала сипатталып программада жазылады. Олар компиляция уақытында есептелінеді. Мысалы: MaxLine 1000 тең болсын.

    #define (анықтау) MAXLINE 1000

    char line [MAXLINE+10] // жолдың ұзындығы 1010

    Жолдық -“string” тұрақтылар «ИнФ-307», «ПМ-305»

    Программалау барысында бос string-ті де пайдалануға болады.

    Си++ программалау тілінде барлық айнымалыларды сипаттау кезінде оларға оларға алғашқы мән беру беруге болады. Мысалы: int і

    немесе int i= 0

    Алғашқы мәндерді беру барысында оларды өрнек түрінде де жазуға болады. Бірақ өрнектің мәні алдын- ала нақты есептелінетін болуы қажет. Мысалы: int i= MAXLINE+2; // i=1012

    Сыртқы және статистикалық айнымалылардың мәні әрқашанда 0-ге тең болады. Ал алғашқы мәні анықталмаған айнымалылар, сол анықталмаған күйінде қалады, сондықтан программалау барысында осындай анықталмаған мәндерден өте сақ болу қажет.


    2. Арифметикалық операторлар
    Си++ программалау тілінде мына арифметикалық амалдар :“+”, “-“, “*”, “/” –амалдары бинарлық операция, %- модуль (қалдықпен бөлу) қолданылады.

    Ескерту!Мұнда екі бүтін санды бөлудің нәтижесі бүтін сан болып табылады. Мысалы:

    Int i

    t = i/k

    t = 5/6

    t = 0

    модуль “%” амалы float, double типтегі мәндер үшін қолданылмайды.

    Унарлық операциялар +25, -32, т.б

    Амалдардың орындалу орны:

    1. жақша;

    2. унарлық операциялар;

    3. көбейту, бөлу, модуль;

    4. қосу, алу орындалады.


    3. Қатыстық операторлар
    Си++ программалау тілінде алты қатыстық амал қолданылады. Олар сәйкесінше былай белгіленеді:

    “>” -үлкен, “=>”- тең немесе үлкен, “<”- кіші, “<=” –кіші немесе тең, “= =” –тең және “!=”- тең емес.

    Қатыстық амалдар арифметикалық амалдардан кейін орындалады. Ал өздерінің ішінде “тең” және “тең емес” ең соңынан орындалады.


    1. Логикалық амалдар


    &&- және дегенді білдіреді;

    ||- немесе дегенді білдіреді;


    5. Математикалық функциялар
    Математикалық функциялар Си++ тілінде модулінің ішінде

    орналасқан. модулі кітапхана ретінде жеке файлда беріледі, мұндағы h- «head-бас» дегенді білдіреді. Модульде әртүрлі математикалық функциялардың программалары орналасқан. Оларды программада қолдану үшін алдымен негізгі модульді программаға кіріктіреміз

    # include файлдың аты командаға жазылады

    # include

    Көптеген функциялардың жазылуы сол күйінде сақталады. Жазылу барысында аргументтер жақшаның ішіне алынып жазылады. Келесі жазуларда x,y –double, n-integer бүтін болсын.

    sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), sinh(x), cosh(x), tanh(x), epx(x), log(x) x>0, pow(x,y) = xy, sgrt(x), ceil(x)=>x, fload(x)<=x, fabs(x), fmod(x,y).

    6.Инкременанд. Декременанд
    Си++ программалау тілінде +1 санын автоматты түрде қосуға болатын инкременанд ++ операциясы бар. Бірді шегеру үшін декременанд -- қолданылады..

    Бұл амалдарды префикс ретінде алдынды, постфикс ретінде соңында қолдануға болады. Мысалы: ++n –алдымен 1 саны n-ға қосылады

    n++ - 1 саны соңынан қосылады

    --n - алдымен 1 саны n-нан шегеріледі

    n-- - 1 саны кейін шегеріледі
    7. Биттік операторлар
    Мына операндтар үшін: char, short, integer, long (таңбалы және таңбасыз) биттік операторларды орындауға болады. Олар &- және, |- немесе, ^- немесенің терістеуі, <<- солға қарата жылжыту, >>- оңға қарата жылжыту,

    - терістеу.

    8. Жалпы операторлардың орындалу реті


    1. (), [], .

    2. !, , ++, --, + (унарлық), -(унарлық), sizeof (өлшем)

    3. *, /, %

    4. +, -

    5. <<, >>

    6. = =, !=

    7. &

    8. ^

    9. |

    10. &&

    11. ||

    12. ?:

    13. =, +=, -=, *=, /=, %=, ^=, |=, <<=, >>=

    14. ,

    Си++ компиляторы оператордағы операндтардың мәнін есептеу ретін қарастырмайды. Сондықтан программист оларды өзі реттеп отыруы қажет.



    1. Мәліметтерді анықтау және сипаттау

    Жоспар

    1. Тұрақтылар.

    2. Негізгі мәліметтердің типтері


    3.Инструкция және блок (нұсқау)

    4. Меншіктеу операторы және өрнек

    5.Формат бойынша шығару және енгізу

    6. Оператор немесе нұсқау


    1. Тұрақтылар


    С немесе С++ тіліндегі программалар main()функциясының орындалуынан басталады. Біз main.cpp файлын құрып, оның мәтінін жазалық:

    #include

    intmain()
    {
     cout<<“HelloC++\n”;
       return0;
    }

    Программаны компиляциядан өткізіп, орындаңыз экранда:

    Hello C++ мәтіні шығады.

    Программаның бірінші жолында #include директивасын орналастырдық, ол енгізу және шығару кітапханасын іске қосады, онсыз компилятор программада берілген cout функциясын түсінбейді. Функция денесі фигуралық жақшаларға { }алып жазылады. С++ тілінде әрбір оператор және функцияға сілтеме жасайтын жол нүкте үтірмен аяқталады. Бұл белгі препроцессор командалары мен программа бірлігінің басында орналасқан функциядан кейін қойылмайды (мысалы, программадағы main() функциясы)

    2. Негізгі мәліметтердің типтері


    Негізгі мәліметтердің типтері үшке бөлінеді: бүтін, нақты және анықталмаған(void). Бүтін типті мәліметтер бүтін сандармен жұмыс атқарады. Нақты типтегі сандардың бөлшек бөлігі болады. Анықталмаған тип мәліметтердің бос жиынына сәйкес келеді.

    Мәліметтердің негізге типтері:

    • char – бүтін тип, символдар.

    • int –бүтін тип, бүтін цифрлар.

    • short – short int – бүтін тип, мұнда өлшемі int типіне тең немесе одан кіші бүтін цифрлар жатады.

    • long - long int (қысқаша long) бүтін тип, мұнда өлшемі int типіне тең немесе одан үлкен бүтін цифрлар жатады.

    • double – нақты типтегі мәліметтер.

    • float – нақты типтегі мәліметтердің ішіндегі ең кішісі.

    • long double – нақты типтегі мәліметтер, double үлкен.

    #include

    int

    main()
    {
    char name[20];
    cout << "What is your name: ";
    cin >> name;
    cout << "Hello: " << name << endl;
    return0;
    }
    Мұнда char name[20]; жолында char типті 20 эеметтен тұратын name массив сипаттадық. Келесі жолда cin >> name; біз cin стандартты енгізу ағынынан мәліметті name массивіне орналастырамыз, бізде мәлімет клавиатурадан түседі.

    С++ const қызметші сөзі, тұрақты мәліметтерді сипаттауға қолданылады. Мысалы: const char QUESTION[] = "What is your name: ";мұнда біз char типті QUESTION тұрақтысын сипаттадық, оның мәнін программада әрі қарай өзгертуге болмайды.

    Программада негізгі есепті бірнеше бөліктерге бөледі. Әдетте функция түрі:

    Return_typename(param_typeparam)
     {
    //
    функцияденесі;
    }


    мұнда Return_type - функция қайтаратын мәннің типі, name – функция атауы, param_type – функцияға берілетін параметрлердің типтері, param – параметр атауы, олар функция ішінде қолданылады.Мысалы, баспаға шығаруды жеке функцияға жүктейік.

    #include

    const char QUESTION[] = "What is your name: "; //тұрақтыны сипаттау
    const char HELLO[] = "Hello: "; // тұрақтыны сипаттау

    void print_name(char* name) // функцияны сипаттау
    {
    cout << HELLO << name << endl; //баспаға шығару}

    intmain()
    {
    char name[20]; // массив
    cout << QUESTION; //баспаға шығару
    cin >> name;
    print_name(name); //print_name функциясын шақыру
                                                            
    return0;
    }

     Біздің жағдайымызда print_name функциясы ешқандай мән қайтармайды, сондықтан оның қайтаратын мәні void. Параметр ретінде char типті name массиві беріледі.

    Программа орындалу барысында бізге аралық несеме шығынды мәндерді сақтап отыратын орындар қажет. Мәліметтерді сақтауға компьютердің жадысы қолданылады. Жадының нақты ұясын пайдалануға айнымалылар қолданылады. Айнымалыларды сипаттау С тіліндегі сипаттаумен бірдей . Айнымалыға мән меншіктеуге тең болады белгісі, ал оның мәнін экранға шығаруға cout шығару ағыны қолданылады.

    Программада айнымалы өзгеретін мәндерді сақтауға қолданылады.. Сақталынатын мәннің типіне байланысты мысалы, бүтін сан, алфавиттің әріпі немесе нақты сан, айнымалылардың типтері әртүрлі болады.

    Айнымалының типі айнымалыда сақталатын мәннің типін және оған қолданылатын операцияларды анықтайды (мысалы қосу, көбейту т.б.). C++ тіліндегі көптеген программалар төменгі таблицада көрсетілген айнымалылардың типтерін пайдаланады..

    Айнымалылардың типтер

    Типі

    Сақталатын мәндер

    Char

    -128 -ден 127-гі бүтін мәндер. Алфавит әріптерін сақтауға

    өте ыңғайлы

    int

    -32768- ден 32767 –ге дейінгі бүтін мәндер

    unsigned

    0 -ден 65535-ке дейінгі бүтін мәндер

    Long

    -2147483648 -ден 2147483647-ге дейінгі бүтін мәндер

    Float

    -3.4 x 10-38 -ден 3.4 x 1038-ге дейінгі нақты мәдер

    Double

    1.7х 10-308 -ден 1.7х 10308-ге дейінгі нақты мәдер

    Сонымен:

      1. Программада айнымалыларды қолдану үшін оларды жариялау қажет: типін және атауын береміз.

      2. Айнымалылардың атаулары ерекше және өзге программистерге түсінікті болуы тиіс.

      3. Айнымалының атауы әріптен немсе астын сызу символынан басталады.

      4. C++ тілінде үлкен, кіші әріптер әртүрлі деп саналады.

      5. Айнымалының типі айнымалы алатын мәннің типін анықтайды. Айнымалылардың стандартты типтері char, int, float және long.

    3.Инструкция және блок (нұсқау)

    Си++ программалау тілінде берілген өрнектің соңына ; белгісі қойылса ол нұсқау болып табылады. Яғни бұл нұсқаудың ең соңғы мәні дегенді білдіреді. Ал Turbo Pascal тілінде осы белгі бір операторды екінші оператордан ажырату үшін қолданылады.

    {…} – фигуралық жақшалар сипаттау мен нұсқауларды біріктіреді және оларды жеке жұмыс бөлігі ретінде қарастырады.

    Дәл осы қызметті Turbo Pascal тілінде begin... end қызметші сөздерінң атқаратынын білеміз. Соңғы «}» фигуралық жақшадан кейін «;» қойылмайды.


    4. Меншіктеу операторы және өрнек

    Си++ программалау тілінде меншіктеу операторын төмендегідей 2 түрде жазып қолданады:

    і = i+2;

    i+=2 ; // і = i+2 дегенді білдіреді

    Осындай амалдарды (+, -, *, /, %, >>, <<, &, |, ^) орындау барысында өрнектің алатын мәні негізінен сол жақтағы операндтың мәніне сәйкес түрлендіріледі. Яғни, түрлендіру автоматты түрде орындалады.
    5.Формат бойынша шығару және енгізу
    Формат бойынша шығару:

    Printfө мәліметтерді формат бойынша шығару функциясы. Форматта stringөтипті 2 объекті бар:

    Оның біріншісі литерөсөз, ал екіншісі мәліметтерді түрлендіріп шығаратын формат. Әрбір түрлендіру «%» белгісінен басталады. Одан кейін белгілер қойылады. Онда мынадай белгілерді қолдануға болады.

    Белгісі

    Мағынасы

    ө

    Printf жолдың басынан бастап шығарады.

    +

    Санды таңбасымен баспаға шығарады

    Бос орын

    Егер бірінші литер таңба болмаса, онда бос орын қойылады

    0

    Қосымша 0өмен толтырылған

    #

    Онда мынадай жағдайлар болуы мүмкін: 8өдік санау жүйесіндегі сан үшін оөО, 16өлық санау жүйесі үшін х және Х арқылы беріледі. ОхөОХ, еөЕ 10өдық дегенді білдіреді f,g үшін нүкте болады.

    Кезөкелген сан

    Шығарылатын жолдың ұзындығын береді. Қажет болса ұзындықты өзі қосып алады.

    . (нүкте)

    өрістің ұзындығынан дәлдікті айыру

    Сан

    Яғни үтірден кейін қанша сан барын анықтайды.

    H, l, L

    hө аргумент short немесе unsigned short E+05

    lө long немесе unsigned long

    Lөlong double



    Белгі

    алатын мән

    мағынасы

    D, I

    Int

    Таңбалы ондық санды жазу

    0

    Int

    Таңбасыз 8өдік санау жүйесіндегі сан

    X, X

    Int

    Таңбасыз 16өлық санау жүйесіндегі сан

    x =a, b, c, d, f, …

    X =A, B, C, D, F, …

    U

    Int

    10өдық бүтін сандар

    C

    Int

    Бірлік литер (char)

    S

    Char*

    ‘\0’ 0өсаны кездескенше баспаға шығару

    F

    double

    [ө] mmm.ddd таңбалы, таңбасыз нақты сандар

    e, E

    double

    [ө] mmm.ddd E+xx

    G, G

    double

    Егер де дәреженің мәні ө4өтен кіші болса, онда ол %e немесе %E мәндерін қабылдайды. Басқа жағдайда %f сияқты болады.

    N

    Int*

    Рrintf бойынша программа орындалу барысында қанша литер баспаға шықты. Сол сан аргументке беріледі.

    %




    Аргументтер түрленбейді


    Scanfөмәліметтерді ағымнан алып, түрлендірген шамаларды сәйкес аргументтерге меншіктейді. Бірақ аргументтердің барлығын жекеөжеке сілтеме ретінде көрсетуге болады. Кез келген жолда мынадай белгілер болатынын білеміз: бос орын, табуляция, алфавиттегі символдар (%-тен басқа), %, *, h, l, L мәндері болуы мүмкін. Мұндағы литер спецификаторлар h, l, L енгізудің түрлерін реттеп отырады. Мына әріптер d, i, n, o, u, x ө үшін h (short) ал l (long) білдереді. E, f, gө үшін l (double), L (long double) білдіреді.


    Литер

    Аргумент мәні

    мағынасы

    D

    int*

    10өдық бүтін сан.

    I

    int*

    Бүтін сан.

    O

    int*

    8ө дік санау жүйесіндегі бүтін сан.

    X

    int*

    16ө лық санау жүйесі бүтін сан

    C

    char*

    Литерлік

    U

    ausigned* int*

    Таңбасыз 10өдық санау жүйесі бүтін сан

    S

    char*

    String “” –қа алынбайды.

    E, f, g

    float*

    Нақты сандар

    N

    int*

    Аргументке осы уақытқа дейін оқылған литерлер санын меншіктейді.


    #include

    void main(void)

    {
       cout<<0.12345;
    }
    #include

    void main(void)

    {
       cout<<“JamsaPress”<   cout<<“2975SouthRainbow,SuiteI”<   cout<<“LasVegas,NV89102”<}

    #include

    #include

    void main (void)

    {
       cout<   cout<   cout<   cout<}
    6. Оператор немесе нұсқау
    Си++ программалау тілінде өрнек беріліп, одан кейін ; қойылса ол нұсқау (оператор) деп аталады. Мысалы: х = 0; i++;

    Күрделі оператор бірнеше нұсқаудан тұратын болса, оларды {} жақшаға алып, блок ретінде беріледі.

    Ескерту: Си++ программалау тілінде айнымалыларды кез-келген блоктың ішінде сипаттауға болады.
    1.   1   2   3   4   5   6   7   8   9   10   11


    написать администратору сайта