МIНIСТЕРСТВО ОСВIТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ "ЛЬВІВСЬКА ПОЛІТЕХНІКА"
Лабораторна робота № 4
на тему
Операції та вирази мови Сі
Мета роботи: Навчитись записувати та інтерпретувати вирази на основі
форматів машинного зображення даних, визначеної множини операцій мови С/C++ та їх пріоритетів.
Завдання лабораторної роботи:
Варіант №21:
a) long a=159; long c=60;int e=-25;
-a%sizeof(unsigned)^-c+++(sizeof(char)/~e)
b) Написати вираз, який приймає істинне значення, якщо відрізки [a,b] та [c,d]
перетинаються.
Блок-схема:
Текс програми:
a)
#include <stdio.h>
#include <conio.h>
void main()
{ long a=159, c=60; int e=25; long a1,a2,a3,a4,a5,a6,a7,a8,a9,a10;
a1=~e;
a2=sizeof(char);
a3=a2/a1;
a4=-a;
a5=-c;
a6=sizeof(unsigned);
a7=a4%a6;
a8=a5+a3;
a9=a7^a8;
a10=c++;
printf("rezult=%d",a9);
getch();
}
b)
#include <conio.h>
#include <stdio.h>
int is_in(int point, int from_p,int to_p);
void main()
{ int a,b,c,d,res;
clrscr();
printf("Vvedit\' a,b,c,d cherez komy: ");
scanf("%d,%d,%d,%d",&a,&b,&c,&d);
clrscr();
printf("[a,b] ==> [%d,%d]\n[c,d] ==> [%d,%d]\n",a,b,c,d);
res=is_in(a,c,d)||is_in(b,c,d)||is_in(c,a,b)||is_in(d,a,b);
printf("%s",(res==0)?"False: [a,b] i [c,d] ne peretynajut\'sja!!!":"True: [a,b] i [c,d] peretynajut\'sja!!!");
getch();
}
int is_in(int point, int from_p, int to_p)
{
return (point>=from_p)&&(point<=to_p);
}
Відлагодження програми:
a)
b)
Висновок: на лабораторній роботі я навчився записувати та інтерпретувати вирази на мові Сі.