Варіанти індивідуальних завдань
1. 1) unsigned int x = 43, b = 0xfa68;
printf( "\n\t %-10o %-10d %#0.10x \n", x, ~b, x ^ b );
2) long l = 045612; double gw = 0.0173;
2. 1) int s = 'A'; unsigned c = 0x54, sm = c + s - '0';
printf( "\n sm = %c = %d\n mc = %#08X \n exp = %d", sm, sm,
s & ~c, c % 3 );
2) long t = 0xb1d2; double y = -441731.7e-6;
3. 1) int a = -16; long b = -5*a;
printf( "\n ~a = %u \n b - %s \n expr => %#08lX ", ~a,
b & 1 ? "непарне":"парне", (long)a <<4 & b );
2) unsigned kp = 0612; double s = 317.98234е-4;
4. 1) unsigned v = 0xa2d3; long w = 332;
printf("\n rv: %3d rw: %#08lX \n result -> %c\n",
v&25, w | ~v, (unsigned char)w /5 );
2) double y = 1.3703e-5; int d = ′K′;
5. 1) short a = 388; int k = a >> 2;
printf("\n\n op1 = %d op2 = %o \n op3 = %#x op4 = %d\n",
k, ~k, k % 3 ? a ^ k:a & k, sizeof(a+k) );
2) long qq = 0xc1c2; double y = -1.7563e4;
6. 1) unsigned char sm = 'B'; float z = 350.62; int d = 14;
printf("\n \t sm = %c = %d \n вираз = %#x\n z = %.2g\n",
sm, sm, sm ^ ~d, z );
2) unsigned long m = 0126634; double w = -1.598e6;
7. 1) long m = 0x2а1; unsigned n = m >> 3;
printf("\n %#X \t %d \t %#o \n", n, n%3 ? n/2 :(int)m /10,
~n |(unsigned)m );
2) int r = ′Z′; double x = -7.4513;
8. 1) int x = 0217; long y = -14;
printf("\n\t x = %u \nz1 = %ld\t z2 = %8o z3 = %#lx",
x, ~y << 2, x ^(int)y, ~x & y );
2) unsigned a = 0xdd00; double t = 136.87;
9. 1) int c1 = 50, c2 = '7'; long double z = 5.2477;
printf("\n c1 = %2c c2 = %04d \n вираз = %#x \t z = %-8.3Le ",
c1, c2, c1 ^ ~c2, z );
2) long s = 0xf12a; float d = 15173;
10. 1) int a = 98, c = ′Y′;
printf("\n a/3 = %u \t c = %u\n smb1 = %c smb2 = %c \n",
a /3, c, a > c ? a + 3 : c - 5, c-(a -'a') );
2) double w = -47.438e-4; unsigned long k = 04120073;
|
|
11. 1) unsigned v = 0xfd17; long w = 108;
printf("\n v: %-10d w: %#lo \n size = %u \t resul = %#X ",
v & 124, w, sizeof(w)*25, v ^(unsigned)w );
2) int ch = ′9′; double sum = -66.517;
12. 1) long y = -48; short int x = -y / 5;
printf("\n y = %#lX x = %d\n z = %06o\n", y, x, (short)~y | x << 4 );
2) unsigned long asd = 54312; double rt = 0.175e6;
13. 1) int b = 66, c = ′8′;
printf("\n\n b/4 = %u \t c = %u\n sm1 = %c sm2 = %c ",
b /4, c, b <= c ? b + 2 : c - 5, b+(c -'0') );
2) unsigned char c = '8'; float u = -34.36;
14. 1) int x = 07305; double y = 0.3568;
printf("\t x = %d, ~x = %#o, y = %10.2E (%d байт) \n",
x, ~x, y, sizeof (2*y) );
2) double y = 71.745e-5; int a = -4569;
15. 1) int r = 'D', a = 0123, s = а + r -'A';
printf("\n symbol = %c = %d \n ~a = %d \n exp = %#0.6X ",
s, s, ~a, r ^ a );
2) unsigned int pp = 092; long double gg = 4.983e-9;
16. 1) unsigned d = 0XC25B; int h = 131;
printf("\n\t zh: %4d zd: %#012X \n symbol=> %c\n",
h&15, d | ~h, (char)h /2 );
2) double w = -17.7455; unsigned a = 0x56d8;
17. 1) double z = 118.75; signed char k = 67;
printf("\n\tk = %d = %c, ~k >>3 = %#o, z = %10.3e, sz = %u ",
k, k, ~k >>3, z, sizeof z );
2) float p = 77.9387e-2; long d = 67050;
18. 1) unsigned int a = 23, b = 0x7a;
printf("%-7o | %7d | %-#07x | %d \n", a, ~b, a ^ b, a & b);
2) long ln = 0731045; double y = -17.86;
19. 1) long m=0x3af; unsigned n=m>>4;
printf("\n\t%ld %#lo %#x \n", m/3, n%2 ? ~m : m&0xffaf,
n |(unsigned)m );
|
|
2) long double gg = -74.983; unsigned q = 0X102D;
20. 1) char c1 = 70, c2 = '2'; float z =126.83e-3; int d = 14;
printf("\n c1 = %3c c2 = %3d\n вираз = %#X \t z = %-8.3f ",
c1, c2, c1 ^ ~d, z );
2) double x = -57.21; unsigned long b = 0xd12aa;
21. 1) int a = -6; long b = 3*a;
printf("\n\t ab = %u bo = %lo expr = %#lX \n", a &0xff, b,
~a | b << 4 );
2) unsigned dd = 0712; double s = -317.98237;
22. 1) int a = 0703; char c = a >> 4;
printf("\n op1 = %5d op2 = %5u \n op3 = %#x op4 = %d\n",
(int)c, a/5, c % 2 ? a ^ c: ~a & c, sizeof(a) );
2) double ry = 517.438; long rl = 0x9a12;
23. 1) int x = 0xb7; unsigned char y = -34;
printf("\n\t x = %d \n z1 = %u\t z2 = %-#10x\t z3 = %#o",
x, x & y, x | y, y >> 3 );
2) float t = 13; int u = 071200;
24. 1) int ch = '3'; unsigned b = 0123, s = b + ch - '0';
printf(" ch = %c = %d \n ~b = %d\ nexpr = %#06X \n", ch, ch,
~b& 0xfff, s^ b);
2) long rr = 67012; double z = -5879.7E-2;
25. 1) long w = 372; unsigned v = 0xad3;
printf("v: %-5d w: %#lo \n size = %u \t resul = %#x\n",
v, w, sizeof(w * 10), v ^ ~ w );
2) int ch = ′R′; double sum = 0.034517;
26. 1) int m = 0134; unsigned char n = m >> 3;
printf(" %#o \t %d \t %#X\n", (int)n, n&1 ? n%5 : m /10, ~m |n );
2) long w = 0xd02; float zar = -5617.73e-4;
27. 1) unsigned x = 0xb217; int y = -14;
printf("\n\t x = %#o \t z1 = %u \t z2 = %d \n z3 = %#x",
x, x >> 7, ~y + 8, x | y << 4 );
|
|
2) long q = 037512; double y = -81.7456;
28. 1) int c = '5', b = 0123, a = b + c - '0';
printf( "\n\t c = %-2c = %3d \n dyz = %#0.8X", c, c, a ^ ~b );
2) double u = 0.58797e5; long s = 0xb12;
29. 1) double y = 29.951; short x = 0x3c3;
printf("\tx = %d, ~x /100 = %d, y = %10.2e (%d байт)\n",
x, ~x /100, y, sizeof y );
2) unsigned q = 070512; float g = 918.73e-4;
30. 1) int h = -18; long b = -3*h;
printf( "\n h = %hu bh = %#lo expr = %lX\n", (short)h, b & h,
~h << 3 | b );
2) int sym = ′6′; double y = -145.13;
Лабораторна робота № 9
ПРОГРАМУВАННЯ РОЗГАЛУЖЕНИХ
ТА ЦИКЛІЧНИХ ПРОЦЕСІВ
Мета роботи: Ø розширити вміння розробляти алгоритми обчислювальних задач, що включають циклічні та розгалужені процеси, і зображати їхні блок-схеми; Ø вивчити синтаксис і семантику операторів мови С;
Ø навчитисязастосовувати різні оператори для програмування циклічних та розгалужених обчислень.
Завдання лабораторної роботи
1. Уважно прочитати умову задачі з індивідуального завдання. Визначити, що має бути отримано в результаті її розв’язування, які вхідні дані та додаткові змінні для цього потрібні.
2. Розробити алгоритм розв’язування задачі – з можливих варіантів вибрати той, що дає змогу отримати розв’язок за найменшу кількість кроків. Врахувати, що жодна із задач не потребує застосування масивів. Накреслити блок-схему алгоритму і навести її короткий опис (або прокоментувати).
|
|
3. За розробленим алгоритмом записати програму мовою С. Складаючи програму, обов’язково звернути увагу на:
• типи даних, що будуть використані в програмі;
• змістовність імен змінних;
• вибір даних, які дані будуть вводитись з клавіатури, та які доцільно оголосити як константи;
• організацію введення даних – кожне введення має супроводжуватися відповідною підказкою;
• вибір операторів для запису циклічних і розгалужених процесів (уникати оператора goto);
• виведення результатів роботи програми – вони повинні давати відповідь на всі питання, поставлені в умові задачі (в індивідуальних завданнях використано термін “надрукувати”, що означає – вивести на екран); виведені дані мають наочно виділятися (наприклад, можна вивести попередньо один-два порожні рядки) та супроводжуватися відповідними текстовими поясненнями; наприкінці програми доцільно встановити затримку для перегляду та аналізу результатів (для затримки зображення можна скористатися бібліотечними функціями введення).
4. Ввести текст програми, контролюючи форму його запису: вертикальне вирівнювання дужок і операторів одного рівня, використання відступів для вкладених операторів, однаковий стиль розстановки дужок тощо.
5. Виконати програму для декількох значень вхідних даних (щонайменше 3-4 різні варіанти), зокрема, перевірити нестандартні ситуації – чи реалізовано в програмі захист від помилок введення? Проаналізувати і записати отримані результати; якщо потрібно, то внести виправлення в текст програми.
6. Змінити текст програми, використавши (там, де це можна зробити) інші оператори для організації розгалужень і циклів. Зберегти кожну нову версію програми в окремому файлі. Виконати її і занотувати результати.
7. Оформити звіт з лабораторної роботи, в якому вказати: • текст задачі індивідуального завдання; • блок-схему алгоритму розв’язування задачі та її опис; • текст розробленої програми з коментарями; • результати виконання програми для кожного набору вхідних даних; • зміни, зроблені в програмі, та результати виконання модифікованої програми; • висновок, в якому зазначити, переваги або недоліки кожної розробленої версії програми.
Дата добавления: 2018-04-15; просмотров: 1266; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!