Файл: Документ Microsoft Word.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 01.03.2019

Просмотров: 163

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

6 помоему вариант 7

#include <stdio.h> 
#include <stdlib.h> 
#include <locale.h> 


int main() 
{ 
setlocale(LC_ALL,"RUS"); 

int n; 
int i,j,k; 
printf("Введите кол-во точек на множестве M: "); scanf("%d",&n); 
int x[n], y[n]; 
int checkPoint[n]; 
printf("Введите точки (координаты х и у через пробел)\n"); 
for(i=0;i<n;i++) 
{ 
printf("M%d: ",i+1); 
scanf("%d %d",&x[i],&y[i]); 
checkPoint[i]=0; 
} 
int f;int leftSide=0, rightSide=0; 

for(i=0;i<n-1;i++) 
{ 
for(j=i+1;j<n;j++) 
{ 
leftSide=0; rightSide=0; 
for(k=0;k<n;k++) 
{ 
f = (x[k]-x[i])*(y[j]-y[i])-(y[k]-y[i])*(x[j]-x[i]); 
if(f>0) leftSide=1; 
if(f<0) rightSide=1; 
} 
if(leftSide==0 || rightSide ==0) {checkPoint[i]=1; checkPoint[j]=1;} 
} 
} 
for(i=0;i<n;i++) 
{ 
if(checkPoint[i]==0) 
{ 
printf("Условие не выполнено, не для каждой точки A существует точка B, такая, что что не существует двух точек множества M, лежащих по разные стороны от прямой AB."); 
return 0; 
} 
} 
printf("Условие выполнено! Для каждой точки A существует точка B, такая, что что не существует двух точек множества M, лежащих по разные стороны от прямой AB."); 
return 0; 
}



4лаба вариант 7

#include <stdio.h> 
#include <stdlib.h> 
#include <locale.h> 
#include <string.h> 


char * inverce(char*); 
char * decTo3(int); 
int isEquals(char*,char*); 

int main() 
{ 
setlocale(LC_ALL,"RUS"); 
int n; 
int i,k,l; 
printf("Введите число N: "); scanf("%d",&n); 
int s[n]; s[0]=0; 
for(i=1;i<n;i++) 
{ 
s[i]=1; 
} 
for(k=1; (k+1)*(k+1)<n; k++) 
{ 
if(s[k]==1) 
{ 
for(l=(k+1)*(k+1)-1; l<n; l+=k+1) 
{ 
s[l]=0; 
} 
} 
} 
int *a=malloc(999999); int aN=0;; 

for(i=0;i<n;i++) 
{ 
if(s[i]==1) 
{ 
a[aN]=i+1; 
aN++; 
} 
} 
for(i=0; i<aN;i++) 
{ 
printf("%d ",a[i]); 
} 
printf("\n"); 
for(i=0;i<aN-1;i++) 
{ 
char *g,*h; 
g=decTo3(a[i]); h= inverce(decTo3(a[i+1])); 
if(isEquals(g,h)) 
{ 
printf("Пара %d , %d -> %s : %s\n",a[i],a[i+1],decTo3(a[i]),decTo3(a[i+1])); 
} 
} 

return 0; 
} 

char * inverce(char *t) 
{ 
int i; 
int k = strlen(t) - 2; 
int m = k / 2; 
for (i = 0; i <= m; i++) 
{ 
char tmp = t[i]; 
t[i] = t[k - i + 1]; 
t[k - i + 1] = tmp; 
} 
return t; 
} 
char * decTo3(int x) 
{ 
char *t = (char *)malloc(1000); 
int i = 0; 
do 
{ 
t[i++] = x % 3 + '0'; 
x = x / 3; 
} while (x != 0); 
t[i] = '\0'; 
return inverce(t); 
} 
int isEquals(char* g, char* h) 
{ 
int i; 
if(strlen(g)!=strlen(h)){return 0;} 
for(i=0;i<strlen(g);i++) 
{ 
if(g[i]!=h[i]) return 0; 
} 
return 1; 
}

















3 лаба вар 7

3,3

#include <stdio.h> 
#include <stdlib.h> 
#include <locale.h> 
#include <math.h> 

int main() 
{ 
setlocale(LC_ALL,"RUS"); 
double a = 1.45; 
double pi = 3.1415; 
double e = 0.0001; 
double x,k; 
printf("Введите x: "); 
scanf("%lf",&x); 
printf("Введите точность E: "); 
scanf("%lf",&e); 
int i=1; 
double t = x*cos(a+(pi*i/2)); 
double s = t; 
while((fabs(t*k-t)<e)) 
{ 
i++; 
k =(x/i)*(cos(a+(pi*i/2))/cos(a+(pi*(i-1)/2))); 
t=t*k; 
s+=t; 
} 
double res = cos(a)-s; 
printf("Ответ: %.3lf",res); 
return 0; 
}

3,2

#include <stdio.h> 
#include <stdlib.h> 
#include <math.h> 
#include <locale.h> 
int main() 
{ 
setlocale(LC_ALL,"RUS"); 

printf("Введите радиус R: "); 
double r; scanf("%lf",&r); 
double x,y; 
printf("Введите x: "); 
scanf("%lf",&x); 
printf("Введите y: "); 
scanf("%lf",&y); 
if(x>=0 && x<=2*r && y>=0) 
{ 
if(pow(x-r,2)+y*y<=r*r) 
{ 
printf("Точка принадлежит области!"); 
} 
else 
{ 
printf("Точка не принадлежит области!"); 
} 
} 
else if(x>=-r && x<=0 &&y>=-r && y<=0) 
{ 
if(pow(x+r,2)+pow(y+r,2)>=r*r) 
{ 
printf("Точка принадлежит области!"); 
} 
else 
{ 
printf("Точка не принадлежит области!"); 
} 
} 
else 
{ 
printf("Точка не принадлежит области!"); 
} 

return 0; 
}

3,1

#include <stdio.h> 
#include <stdlib.h> 
#include <locale.h> 
#include <math.h> 

int main() 
{ 
setlocale(LC_ALL,"RUS"); 
double x; 
printf("Введите х: "); 
scanf("%lf",&x); 
if(x>=-8 && x<=-5) /// если x=-5 лежит в этом отрезке, т.к это точка разрыва и непонятно, y=-3 или y=-2, предположили что у=-3; 
{ 
printf("y = -3,00"); 
} 
else if(x>-5&&x<=-3) 
{ 
printf("y = %.2lf",3+x); 
} 
else if(x>-3 && x<3) 
{ 
printf("y = %.2lf",sqrt(9-x*x)); 
} 
else if(x>=3 && x<8) 
{ 
printf("y = %.2lf",(3*x-9)/5); 
} 
else if(x>=8 && x<=10) 
{ 
printf("y = 3,00"); 
} 
return 0; 
}

2

#include <stdio.h> 
#include <stdlib.h> 

int main() 
{ int a,b,c; 
printf("a="); 
scanf("%d", &a); 
b=a+1; 
c=a-1; 
printf("The next number for the number %d\ ", a); 
printf("is %d", b); 
printf(".\n "); 
printf("The previous number for the number %d\ ", a); 
printf("is %d", c); 
printf(".\n "); 
return 0; 
}


1

#include <stdio.h> 
#include <stdlib.h> 
#include <locale.h> 
#include <math.h> 


int main() 
{ 
setlocale(LC_ALL,"RUS"); 
double a,b; 
printf("Введите а: "); 
scanf("%lf",&a); 
printf("Введите b: "); 
scanf("%lf",&b); 
double s = exp(a*a-13.4*b); 
if(s>=0 && a+b>0 || s<=0 && a+b<0) 
{ 
double res = pow(cos(a+b*b),3.0)*sqrt(s/pow(a+b,3)); 
printf("%.4lf\n",res); 
} 
else 
{ 
printf("Невозможно посчитать!\n"); 
} 
return 0; 
}