Лабораторная работа №4

Лабораторная работа №2

«Целочисленные операции»

Задача 1

.Текущее показание электронных часов T час (0<T<23), N мин (0<N<59), K сек (0<K<59).

Какое время будут показывать часы через X часов Y мин Z секунд.

1. Переводим обе величины в меньшую единицу измерения (сек)
 В1=T*3600+N*60+K;

B2=X*3600+Y*60+Z;

2. Находим их сумму
 В=В1+В2;

3. Из общих секунд выделяем число часов, минут и секунд
 а=В/3600;

в=В/60%60;

с=В%60;

int T, N, K, X, Y, Z, B1, B2, B, a, b, c;

T=CSpinEdit1->Value;

N=CSpinEdit2->Value;

K=CSpinEdit3->Value;

X=CSpinEdit4->Value;

Y=CSpinEdit5->Value;

Z=CSpinEdit6->Value;

B1=T*3600+N*60+K;

B2=X*3600+Y*60+Z;

B=B1+B2;

a=B/3600;

b=B/60%60;

c=B%60;

Label1->Caption=(String) a + " часов "

 +(String) b+ " минут " + (String) c+ " секунд";

 


Задача 2.

С начала суток прошло N секунд (N-целое). Найти количество секунд, прошедших с начала последнего часа.

Находим количество секунд прошедших с последней минуты
X=N%3600

int x, N;

N=CSpinEdit1->Value;

x=N%3600;

Label1->Caption=(String)x+" количество секунд,

 прошедших с начала последнего часа.";

 

 







Задача 3.

Дни недели пронумерованы следующим образом:

0-воскресенье, 1-понедельник, 2-вторник, 6-суббота.

Дано целое число К, лежащее в диапазоне 1-365. Определить номер дня недели для К-го дня года если известно, что в этом году 1 января было четвергом

Находим число соответствующее дню недели
Y=(x+3)%7

int x, y;

x=CSpinEdit1->Value;

y=(x+3)%7;

Label1->Caption=(String)y+"номер дня недели.";

 

Лабораторная работа №3

«Вычисление на С++»

Вариант № 3

Разработайте программу для расчета значения выражения, используя заданные значения констант. На форму поместите выражение, используя объект Image. Сделайте проверку правильности расчета в MS Ekcel.

 

double a0=2.35, a1=-1.01, b=0.8, x, d, z, t, y;

x=pow(b,a1)+a0;

d=pow(-b*a1,3);

z=fabs(b-a0+pow(2,d));

t=fabs(a0-1);

y=cos(b)/x*(pow(log(z),4)+pow(t, 1./3));

Label1->Caption=y;

 

 

 





Лабораторная работа №4

«Логические выражения»

Задача 1.

Составить программу, которая будет выводить true или false в зависимости от принадлежности точки с координатами x, y закрашенной области.

Для ввода координат используйте объекты CSpinEdit, для вывода результата — окно Memo. Результаты отладки сохраните в файл. На форму поместите рисунок с закрашенной областью

 

 

 


                                                                                                                        

и ( и                   или       и      )

int x,y;

x=CSpinEdit1->Value;

y=CSpinEdit2->Value;

Image1->Canvas->Ellipse(

249./12*(4+x)-3, 241./12*(9-y)-2,

249./12*(4+x)+1, 241./12*(9-y)+2);

bool f=pow(x-2,2)+pow(y-3,2)<=25 && (y>=-x+2&&x<=0||y<=-x+2&&x>=0);

Memo1->Lines->Add("Точка (" +(String)x+ ", " +(String)y+ ") - " + BoolToStr(f, true));

Memo1->Lines->SaveToFile(GetCurrentDir()+"\\1.txt");

 

 


Задача 2.

Составить программу, которая будет выводить true, если указанное высказывание является истинным и false — в противном случае.

Треугольник, заданный своими сторонами является разносторонним.

X не равно Y и X не равно Z и Y не равно Z

      и       и  

int x,y,z;

x=CSpinEdit1->Value;

y=CSpinEdit2->Value;

z=CSpinEdit3->Value;

bool f=x!=y&&x!=z&&y!=z;

Memo1->Lines->Add("Треугольник со сторонами ("+(String)x+","+(String)y+","+(String)z+")-"+BoolToStr(f,true));




Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: