Файл: 6 Зерханалы жмыс 6. рылымдар жне осылулармен жмыс жасау Масаты.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 29.11.2023

Просмотров: 17

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

6 Зерханалық жұмыс №6. Құрылымдар және қосылулармен жұмыс жасау

Мақсаты: С++ тіліндегі құрылымдар және қосылулар сияқты күрделі типті мәліметтермен жұмыс жасаудың тәжірибелік икемділігіне қол жеткізу.

6.1 Жалпы мағлұмат

Құрылым (struct) әр түрлі типтегі (элементтері) компоненттерінің тіркелу сандарынан тұрады. struct түрін сипаттау келесідегідей көрініс алады:

struct құрылымның аты

{

тип1 элемент1-дің_аты;



типN элементN-нің_аты; }

құрылымдағы айнымалы типтің аты;

Құрылым элементіне құрылым элементі мен айнымалы атауын нүкте арқылы бөліп көрсету арқылы қол жеткізуге болады. Құрылым элементіне өз-өзіне қосу операциялары тән болып келеді.

Қосылу (union) C++ тілінде мәліметтерді сақтау арқылы құрылымдардан ерекшелінеді. Әр кезде қосылу тек бір ғана элементті сақтайды. Жады қосылудың ең көлемді элементінің сақтау үшін қолданылады. union типінің сипаты келесідей:

union қосылу_атауы

{

тип1 элемет1-дің_аты;



типN элементN-нің_аты;

} қосылу типтеріндегі айнымалылар атауы;

Қосу элементіне қол жеткізу құрылым элементіне қол жеткізуге ұқсас болып келеді. Әлбетте, бағдарламаларда қосылуларды қолдану компьютер жадысын үнемдейді. C++ тілінде бағдарламалардағы жадыны көбірек үнемдеуге жасырын қосылуларды қолдану арқылы жетуге болады. Жасырын қосылуларда атаулары көрсетілмейді, қосылулар айнымалылары аталмайды:

union {

тип1 элемет1-дің_аты;



типN элементN-нің_аты;

} ;

Жасырын қосылулар элементтеріне атаулары бойынша (нүкте белгісінсіз) бағдарламадағы қарапайым айнымалылар сияқты шақырылады.

6.2 Зертханалық жұмысқа тапсырма

6.1 кесте бойынша алынған және нұсқаға сәйкес келетін тапсырманы шешу. Бағдарламаның блок-сұлбасын құру. Құрылымдағы мәліметтердің енгізілуі мен шығарылуын (10 жазбадан кем емес) ұйымдастыру.

Қалыптасқан құрылымның жолын қолдана отырып, ұсынылған таңдаманы орындау.
6.1 кестеТапсырманың нұсқалары

Нұсқа

Тапсырма

1

Топтағы студенттер жайлы мәліметтер бар: тегі, аты, әкесінің аты, мекен жайы – көшесі, үй, пәтер, үй телефонының нөмірі. Экранға хабарласуы мүмкін емес студенттердің тегі, аты және көшесі көрсетілу керек.

2

Фирмада жұмыс жасайтын қызметкерлердің мәліметтері бар: тегі, аты, әкесінің аты, мекен жайы(көшесі, үйі, пәтері) жұмысқа кірген күні (айы, жылы). Экранға тек 5 жылдан кем емес уақыт жұмыс жасаған қызметкерлердің мәліметтерін шығару керек.

3

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

4

Жалға беретін мекемелердегі клиенттердің мәліметтері бар: тегі, аты, әкесінің аты, мекен жайы(көшесі, үйі, пәтері) және қандай зат алғаны жайлы (тек бір зат). Экранға тек алған заты көрсетілген клиенттердің мәліметтерін шығару керек.

5

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

6

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

7

Тауарлар жөніндегі мәліметтер берілген: тауар атауы, тауар сатылатын дүкен атауы, теңге бойынша тауар бағасы. Пернетақта бойынша енгізілген тауарды экранға шығару. Егер де бұндай тауарлар болмаса, хабарламаны шығарыңыз.

8

Ұшақтардың ұшу жайлы мәліметтер берілген: ұшақ қонуының тағайындалған орны, қону орнының нөмірі, ұшақ типі. Пернетақтадан енгізілген ұшақтың тағайындалған қону орнына сәйкес келген ұшақтарының атаулары мен типтерін экранға шығарыңыз. Егер ондай мәліметтер болмаса, дисплейге хабарлау керек.

9

Төлеуші мен төлем алушылар жайлы мәліметтер берілген: төлеушінің есептелген құны, төлеуші аты, төлем алушының есептелген құны, төлем алушының аты, төленетін қаражат. Пернетақтадан енгізілген төлеушінің есептік шотынан алынған қаражат жайлы мәліметтер экранға шығарылады. Егер мұндай есептік шот болмаса, сәйкес мәліметті хабарлау керек.

10

Көрмеге қатысатын иттер жайлы мәліметтер берілген: тұқымы; жынысы; лақаб аты; жасы; иесі. Экранға бір жылғы қатысушылар жайлы мәліметтерді шығарыңыз.

11

Кітапханадағы кітаптар жайлы мәліметтер берілген: кітап авторы; атауы; баспасы; шығарылған жылы; жалпы саны. Авторы бойынша кітапты анықтаңыз.

12

Спортшылар жайлы мәліметтер берілген: тегі, аты, әкесінің аты; азаматтығы; спорт түрі; клубы (командасы); туылған күні. Бір командада ойнайтын спортшыларды көрсетіңіз.

13

Кинотеатрлар тұралы ақпарат берілген: кинотеатр; фильм; жанр; көрсетілу мерзімі; уақыты. Бір кинотеатрда көрсетілетін фильмдердің тізімін көрсету керек.

14

Өнеркәсіптегі қызметкерлер жайлы мәліметтер берілген: тегі, аты, мекен жайы (көшесі, үйі, пәтері), бөлімі. Берілген көшеде тұратын қызметкерлер жайлы мәліметтерді көрсету керек.

15

Көлік салонындағы көліктер жайлы мәліметтер берілген: моделі; шығарылған жылы; техникалық мінездемесі; техникалық жағдайы; құны. Экранға бір жылда шыққан көліктер тізімін шығару керек.


Бақылау сұрақтары

1. Құрылым дегеніміз не?

2. Құрылым мен қосылулардың айырмашылықтары?

3. Құрылым элементтерінің сипаттамасы?

4. Қосылулар мен құрылымдар элементтеріне қол жеткізудің жолдары

5. Жасырын қосылулар дегеніміз не?

6. Құрылым өзгертетін жады көлемін қалай анықтауға болады ?

7. Құрылымда неше элементке дейін сақтауға болады? Қосылуларда ше?

8. Құрылымды тэгтер дегеніміз не?

9. Құрылым типін қалай анықтауға болады?

10. Зертханалық жұмыста бағдарлама құрылымын қосындыға айналдыр-са не өзгереді?