Лабораторная работа № 1 на тему: "Внутрішні формати даних" Мета роботи: Дослідити представлення в пам’яті комп’ютера статичних даних. Зміст звіту: Титульна сторінка (з назвою лабораторної роботи і номером варіанту) Мета роботи. Постановка задачі ( тобто завдання зі своїми конкретними значеннями) . Тестування (тобто ручні розрахунки ) . Результати виконання програми. Висновки. Додаток ( Текст програми з коментарями ). Завдання: Дослідити представлення в пам’яті комп’ютера даних статичної структури. Розглянути основні прості і складні структури даних:
char ch; unsigned char i1; signed char i2; unsigned short i3; signed short i4; unsigned int i5 ; int i6 float r1; double r2; char str[16]; char m[2][5]; struct { char a1[16]; char b1; char a2[16]; char b2; int c1; char b3; int c2; } rec;
union { float un_float; short int un_sint; char un_char; } u; FILE *f; Тестування провести для наступних значень змінних: ch – перша літера Прізвища (велика латинська літера); i1 – день народження; i2 = -i1; i3 = i1*125; i4 = -i3; i5 = i3* X; // де X – це місяць народження i6 = -i5; r1– дробове число: ціла частина – день народження, дробова частина - місяць народження; r2– дробове число: ціла частина – місяць народження, дробова частина - рік народження; r2 = -r2; { Наприклад, якщо дата народження 21.10.1982, то: i1 = 21; i2 = -21; i3 = 2625; i4 = -2625; i5 = 26250; i6 = -26250; r1 = 21.10; r2 = -10.1982; } str – Прізвище (латинські літери, перша - велика, решта - малі); m[0][0] = символ, який відповідає першій цифрі номера мобільного телефону; m[0][1] = символ, який відповідає другій цифрі номера мобільного телефону; m[0][2] = символ, який відповідає 3-тій цифрі номера мобільного телефону; m[0][3] = символ, який відповідає 4-тій цифрі номера мобільного телефону; m[0][4] = символ, який відповідає 5-тій цифрі номера мобільного телефону; m[1][0] = символ, який відповідає 6-тій цифрі номера мобільного телефону; m[1][1] = символ, який відповідає 7-тій цифрі номера мобільного телефону; m[1][2] = символ, який відповідає 8-тій цифрі номера мобільного телефону; m[1][3] = символ, який відповідає 9-тій цифрі номера мобільного телефону; m[1][4] = символ, який відповідає 10-тій цифрі номера мобільного телефону; {Якщо мобільного телефону немає, обрахунки проводити для номера телефону 097 2582196: m[0][0]=’0’; m[0][1]=’9’; m[0][2]=’7’; m[0][3]=’2’; m[0][4]=’5’; m[1][0]=’8’; m[1][1]=’2’; m[1][2]=’1’; m[1][3]=’9’; m[1][4]=’6’}; rec.a1 – назва міста в адресі прописки (латинські літери, перша - велика, решта - малі); rec.a2 – назва вулиці в адресі прописки (латинські літери, перша - велика, решта - малі); rec.с1 – номер будинку в адресі прописки; rec.с2 – номер квартири в адресі прописки; rec.b1 = ’,’ ; rec.b2 = ’,’ ; rec.b3 = ’/’ ; u.un_float = r1; u.un_sint = i4; u.un_char = ch; f – текстовий файл з короткою інформацією про батьків.