Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КУРСАК МІЙ()()().doc
Скачиваний:
5
Добавлен:
09.12.2018
Размер:
249.86 Кб
Скачать

Мiнiстерство освiти і науки, молоді та спорту України

Національний університет «Львівська політехніка»

Кафедра ЕОМ

Курсова робота з дисципліни «Програмування. Частина ііі. Структури даних та алгоритми»

2 № варіанта = 4.4

3.2.1 № варіанта = (((22* 45) %1) * 9 + 45) % 30 = 15

3.2.2 № варіанта = ((22+45) * (1 +9)) % 30 = 10

3.2.3 № варіанта = (45* 10 +1*9) % 30 =10

3.2.4 № варіанта = (22 * 3 *1 + (9 % 3) *45) % 30 = 6

3.2.5 № варіанта = (22 + 9 + 1 * 45 +22 * 9) % 30 = 4

Виконав:

ст.гр.КІ-25

Кіндрат С.В.

Прийняв:

Матвейчук Т.А.

Львів 2011

Завдання на курсову роботу

Завдання 1. Визначити внутрішнє представлення в пам’яті комп’ютера даних базових типів. Розглянути основні прості (цілі, дійсні, символьні, логічні) типи даних:

Варіант: 4.0.

MN(09)%5 = 4;

DN(22)%6 = 4;

  1. bool b;

  2. wchar_t ch4;

  3. unsigned i3;

  4. long double d3;

Завдання 2: Внутрішні формати похідних типів

  1. Визначити представлення в пам’яті комп’ютера рядків символів. Оголосити рядок символів і ініціалізувати його.

№ варіанта = (((день народження * номер будинку) % номер квартири) * місяць народження + номер будинку) % 30

варіанта = (((22* 45) %1) * 9 + 45) % 30 = 15

моб. тел..: 0631728647

char *string15 = "\xabn\\\n\v""abcde""vnsc6\x23";

Після цього виконати деякі переприсвоювання згідно варіанту.

string№ [0] = символ, що відповідає 3 цифрі string15 [0] = '3';

string№ [2] = символ, що відповідає 4 цифрі string15 [2] = '1';

string№ [4] = символ, що відповідає 5 цифрі string15 [4] = '7';

string№ [6] = символ, що відповідає 6 цифрі string15 [6 ] = '2';

string№ [8] = символ, що відповідає 7 цифрі string15 [8] = '8';

string№ [10] = символ, що відповідає 8 цифрі string15 [10] = '6';

string№ [12] = символ, що відповідає 9 цифрі string15 [12] = '4';

string№ [14] = символ, що відповідає 10 цифрі string15 [14] = '7';

  1. Визначити представлення в пам’яті комп’ютера переліків. Оголосити три змінні перелікового типу і надати їм значення згідно варіанту.

Вибір варіанту індивідуального завдання:

№ варіанта = ((день народження + номер будинку) * (номер квартири + місяць народження)) % 30

варіанта = ((22+45) * (1 +9)) % 30 = 10

Тестування провести для наступних значень змінних:

enum color10 {

BLUE,

GREEN,

CYAN,

RED,

BROWN,

GRAY = 1,

YELLOW,

WHІTE,

MAGENTA,

LІGHTGRAY,

DARKGRAY = -2,

BLACK

} c1= CYAN,

c2= BROWN,

c3= DARKGRAY;

  1. Визначити представлення в пам’яті комп’ютера масивів. Оголосити масив та ініціалізувати його.

Вибір варіанту індивідуального завдання:

№ варіанта = (номер будинку * 10 + номер квартири * місяць народження) % 30

варіанта = (45* 10 +1*9) % 30 =10

моб. тел..: 0631728647

Тестування провести для наступних значень змінних:

wchar_t array10[][3][2] = {{1,123}, {23,'4', true}}

Після цього виконати переприсвоювання згідно варіанту.

array10[0][0][0] = 0; // 0 * 22 = 0

array10[0][0][1] = 132; // 6 * 22 = 132

array10[0][1][0] = 66; // 3 * 22 = 66

array10[0][1][1] = 22; // 1 * 22 = 22

array10[0][2][0] = 154 // 7 * 22 = 154

array10[0][2][1] = 44; // 2 * 22 = 44

array10[1][0][0] = 176; // 8 * 22 = 176

array10[1][0][1] = 132; // 6 * 22 = 132

array10[1][1][0] = 88; // 4 * 22 = 88

array10[1][1][1] = 154; // 7 * 22 = 154

  1. Визначити представлення в пам’яті комп’ютера структур. Оголосити структуру, після цього надати всім елементам структури значення згідно варіанту.

Вибір варіанту індивідуального завдання:

№ варіанта = (день народження * 3 * номер квартири + (місяць народження % 3) * номер будинку) % 30

варіанта = (22 * 3 *1 + (9 % 3) *45) % 30 = 6

моб. тел..: 0631728647

Тестування провести для наступних значень змінних:

struct str6 {

unsigned long e:3;

unsigned long :2;

short :2;

signed short d;

unsigned :7;

double a;

short b:7;

char f;

char c[9];

}str;

str.a = D.DM; // замість D підставити свій день народження

str.a = 22.198; // замість DM підставити значення, що дорівнює

// добутку дня народження на місяць народження

str.b = BD * KV * 124; // замість BD підставити номер свого будинку

str.b = 45 * 1 * 124 = 5 580; // замість KV підставити номер своєї квартири

str.c[0] = перша літера; str.c[0] = ‘K

str.c[1] = друга літера; str.c[1] = ‘i

str.c[2] = третя літера; str.c[2] = ‘n

str.c[3] = четверта літера; str.c[3] = ‘d

str.c[4] = п'ята літера; str.c[4] = ‘r

str.d = 764 * BD * Х; // замість BD підставити номер свого будинку

str.d = 764*45*7=0; // замість Х підставити шосту з кінця цифру номера

// мобільного телефона

str.e = DN * MN * 36; // замість DN підставити свій день народження

str.e = 22 *9 * 36=7 128; // замість MN підставити свій місяць народження

str.f = Y; // замість Y підставити останню цифру номера

str.f = 7; // мобільного телефона

  1. Визначити представлення в пам’яті комп’ютера об'єднань. Оголосити об'єднання, надати деяким елементам об'єднання початкові значення.

Вибір варіанту індивідуального завдання:

№ варіанта = (день народження + місяць народження + номер квартири * номер будинку +

+ день народження * місяць народження) % 30

варіанта = (22 + 9 + 1 * 45 +22 * 9) % 30 = 4

моб. тел..: 0631728647

Тестування провести для наступних значень змінних:

union un4 {

char a[14];

struct {

short d[5];

unsigned b;

float e;

};

int c;

} un;

un.e = KV * 325 + YEAR * DN; // замість KV підставити номер своєї квартири

un.e =1 * 325 + 1993 * 22=44 171; // замість YEAR підставити свій рік народження

// замість DN підставити свій день народження

un.c = DN * (MN + BD) * 100; // замість MN підставити свій місяць народження

un.c = 22 * (9 + 45) * 100= 118 800; // замість BD підставити номер свого будинку

un.a[0] = символ, що відповідає 6 цифрі номера мобільного телефона; un.a[0] = ‘2’

un.a[1] = символ, що відповідає 7 цифрі номера мобільного телефона; un.a[1] = ‘8’

un.a[2] = символ, що відповідає 8 цифрі номера мобільного телефона; un.a[2] = ‘6’

un.a[3] = символ, що відповідає 9 цифрі номера мобільного телефона; un.a[3] = ‘4’

un.a[4] = символ, що відповідає 10 цифрі номера мобільного телефона; un.a[4] = ‘7’

Зміст

Вступ

  1. Теоретична частина

  2. Система тестів

    1. Внутрішні формати базових типів

      1. Логічний тип

      2. Символьний тип

      3. Цілий тип

      4. Дійсний тип

    2. Внутрішні формати похідних типів

      1. Рядок символів

      2. Перерахування

      3. Масив

      4. Структура

      5. Об’єднання

  3. Результати виконання програми

Висновки

Список літератури

Додатки

Вступ

Дана курсова робота полягає у вивченні представлення в мові програмування С++ різних типів даних, як простих (логічний, символьний, дійсні, цілі), так і похідних(структури, масиви, перерахування, об’єднання)

Знати про структури даних важливо, оскільки від правильного вибору структур, на яких буде реалізуватися програмний продукт, залежить ефективність роботи програми. В цій роботі й буде продемонстровано, як саме різні типи даних зберігаються в комп’ютері.