Int main(void)
{
float x0, y0, r, x, y, R;
cout<<"x0=";
cin>>x0;
cout<<"y0=";
cin>>y0;
cout<<"r=";
cin>>r;
cout<<"x=";
cin>>x;
cout<<"y=";
cin>>y;
R=sqrt(float(((x-x0)*(x-x0))+((y-y0)*(y-y0))));
if (R<=r) cout<<"POPADAET!"; else
cout<<"NE POPADAET!";
_getch();
return 0;
}
Задачи повышенной сложности:
Задача №1. Две точки заданы на плоскости своими координатами, которые могут быть как декартовыми, так и полярными. Требуется вычислить расстояние между этими двумя точками.
#include <iostream>
using namespace std;
#include <conio.h>
#include <math.h>
Int main(void)
{
double x1, y1, x2, y2, r1, fi1, r2, fi2, R;
char S;
cout<<"Vvedite D dlya dekartovoy sistemy koordinat ili P dlya
polyarnoy... \n";
cin>>S;
if (S=='D')
{
cout<<"x1=";
cin>>x1;
cout<<"y1=";
cin>>y1;
cout<<"x2=";
cin>>x2;
cout<<"y2=";
cin>>y2;
R=sqrt(double((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)));
cout<<"R=";
cout<<R;
} else
if
(S=='P')
{
cout<<"r1=";
cin>>r1;
cout<<"fi1=";
cin>>fi1;
cout<<"r2=";
cin>>r2;
cout<<"fi2=";
cin>>fi2;
R=sqrt(double(((r2*cos(fi2*3.14/180))-
(r1*cos(fi1*3.14/180)))*((r2*cos(fi2*3.14/180))-
(r1*cos(fi1*3.14/180)))+
((r2*sin(fi2*3.14/180))-
(r1*sin(fi1*3.14/180)))*((r2*sin(fi2*3.14/180))-
(r1*sin(fi1*3.14/180)))));
cout<<"R=";
cout<<R;
} else
if ((S!='D') && (S!='P')) cout<<"NE VIBRANA SISTEMA KOORDINAT!";
_getch();
return 0;
}
Задача №2. Даны действительные числа a, b, c, x, y. Выяснить, пройдет ли кирпич с ребрами a,b,c в прямоугольное отверстие со сторонами x и y. Просовывать кирпич в отверстие разрешается только так, чтобы каждое из его ребер было параллельно или перпендикулярно каждой из сторон отверстия.
#include <iostream>
using namespace std;
#include <conio.h>
#include <math.h>
Int main(void)
{
float x, y, a, b, c;
cout<<"x=";
cin>>x;
cout<<"y=";
cin>>y;
cout<<"a=";
cin>>a;
cout<<"b=";
cin>>b;
cout<<"c=";
cin>>c;
if (((a<y) && (b<x)) || ((b<y) && (a<x)) || ((a<y) && (c<x)) || ((c<y) && (a<x)) || ((b<y) && (c<x)) || ((c<y) && (b<x)))
cout<<"kirpich PROYDET"; else cout<<"kirpich NE PROYDET";
_getch();
return 0;
}
Задача №3. Сможет ли шар радиуса R пройти в ромбообразное отверстие со стороной P и острым углом Q?
#
include
<iostream>
using namespace std;
#include <conio.h>
#include <math.h>
Int main(void)
{
float Q, P, R, H;
cout<<"Q=";
cin>>Q;
cout<<"P=";
cin>>P;
cout<<"R=";
cin>>R;
H=P*cos(Q*3.14/360)*sin(Q*3.14/360);
if (R<H) cout<<"shar PROYDET v otverstie"; else
cout<<"shar NE PROYDET v otverstie";
_getch();
return 0;
}
Задача №4. Написать программу, которая печатает True или False в зависимости от того, выполняются или нет заданные условия:
1) квадрат заданного трехзначного числа равен кубу суммы цифр этого числа;
2) сумма двух первых цифр заданного четырехзначного числа равна сумме двух его последних цифр;
3) среди цифр заданного трехзначного числа есть одинаковые;
4) среди первых трех цифр из дробной части заданного положительного вещественного числа есть цифра 0.
1)
#include <iostream>
using namespace std;
#include <conio.h>
#include <math.h>
int main(void)
{
float a, b, c;
int x;
cout<<"Vvedite 3-znachnoe chislo... \n";
cout<<"x=";
cin>>x;
a=x/100;
b=(x%100)/10;
c=x%10;
if (x*x==(a+b+c)*(a+b+c)*(a+b+c)) cout<<"TRUE"; else
cout<<"FALSE";
_getch();
return 0;
}
2)
#include <iostream>
using namespace std;
#include <conio.h>
#include <math.h>
int main(void)
{
float a, b, c, d;
int x;
cout<<"Vvedite 4-znachnoe chislo... \n";
cout<<"x=";
cin>>x;
a=x/1000;
b=(x%1000)/100;
c=(x%100)/10;
d=x%10;
if ((a+b)==(c+d)) cout<<"TRUE"; else
cout<<"FALSE";
_getch();
return 0;
}
3
)
#include <iostream>
using namespace std;
#include <conio.h>
#include <math.h>
int main(void)
{
float a, b, c;
int x;
cout<<"Vvedite 3-znachnoe chislo... \n";
cout<<"x=";
cin>>x;
a=x/100;
b=(x%100)/10;
c=x%10;
if ((a==b) || (a==c) || (b==c)) cout<<"TRUE"; else
cout<<"FALSE";
_getch();
return 0;
}
4)
#include <iostream>
using namespace std;
#include <conio.h>
#include <math.h>
int main(void)
{
float x, a, b, c;
cout<<"Vvedite veshestvennoe chislo... \n";
cout<<"x=";
cin>>x;
a=(int(x*10)%10);
b=(int(x*100)%10);
c=(int(x*1000)%10);
if ((a==0) || (b==0) || (c==0)) cout<<"TRUE"; else
cout<<"FALSE";
_getch();
return 0;
}
З
адача
№5.
Проверить,
можно ли из четырех данных отрезков
составить параллелограмм.
#include <iostream>
using namespace std;
#include <conio.h>
#include <math.h>
