#include <math.h> int main(int argc, char* argv[]) { const int n=4;//для простоты double a[n]={-5,-4,3,1}, b[n]={2,-3,5,0};//надо заполнить значениями double max=0,min=0; int maxI=0,minI=0; for(int i=0; i<n; i++) { if(max ==0 && min ==0) { max=min=fabs(b[i]-a[i]); maxI=minI=i; continue; } double tmp = fabs(b[i]-a[i]); if(tmp > max) { max = tmp; maxI=i; } if(tmp < min) { min = tmp; minI = i; } } printf("max%d = %f, min%d = %f ", maxI,max, minI,min); //если хотя бы одна из границ меньшего из отрезков попадает внутрь большего if( (b[minI]>b[maxI] && b[minI]>a[maxI]) || (a[maxI]<a[minI] && a[minI]<b[maxI]) ) printf("crossed\n"); else printf("not crossed\n"); } |