int N,br1,br2; // Броячи float a[21],b[21],c[21]; // Масиви за Страните на различните триъгълници float M[21][4]; // Масив за Медианите float r[21]; // Масив за Радиусите float SaR; // Средноаритметично на радиусите void Input (); void MedianaRadius(); void Output(); // Фунция за вход и проверка за коректност на данните void Input () { int i=1; N = -1; bool isValid = true; do { printf ("wywedete broq na Triygylnicite - N, N<20 N = "); scanf("%d",&N); }while (N > 20|| N<0); for (i=1; i < N+1; i++) { do { printf("Vyvedete stranata a za %d triygylnik, a= ",i); scanf("%f",&a[i]); printf("Vyvedete stranata b za %d triygylnik, b= ",i); scanf("%f",&b[i]); printf("Vyvedete stranata c za %d triygylnik, c= ",i); scanf("%f",&c[i]); if (a[i]>=b[i]+c[i] || c[i]>=b[i]+a[i] || b[i]>=a[i]+c[i]) { printf("Proverkata ostanovi che takyv triygylnik ne syshtestwuwa\n\n\n"); isValid = false; } else { isValid = true; } printf("\n\n"); } while(isValid == false); //l1: // To4no tuk !!!!!!!!!!!!!!!!!!!!!!!!!!! // // // if (a[i]>=b[i]+c[i] || c[i]>=b[i]+a[i] || b[i]>=a[i]+c[i]) // { // printf("Proverkata ostanovi che takyv triygylnik ne syshtestwuwa\n"); // // goto l1; // To4no TUK !!!!!!!!!!!!!!!!!!!!!!!!! // // } } } // Функция изчисляваща Всяка Меридиана, Радиус на Вписана // Средно.Аритм. за Радиусите и колко радиуса са по-големи(малки) от средния void MedianaRadius() { int i; double p,Sumr; Sumr = 0; for (i=1; i < N+1; i++) { p = 0.5*(a[i]+b[i]+c[i]); M[i][1] = 0.5*(sqrt((2*((b[i]*b[i])+(c[i]*c[i])))-(a[i]*a[i]))) ; M[i][2] = 0.5*(sqrt((2*((a[i]*a[i])+(c[i]*c[i])))-(b[i]*b[i]))) ; M[i][3] = 0.5*(sqrt((2*((b[i]*b[i])+(a[i]*a[i])))-(c[i]*c[i]))) ; r[i] = sqrt(((p-a[i])*(p-b[i])*(p-c[i]))/p); } for (i=1; i < N+1; i++) Sumr+=r[i]; SaR = Sumr/N; for (i=1; i < N+1; i++) { if (r[i]< SaR) br1++; else br2++; } } // Функция която изписва всички резултати на Монитора void Output() { int i; for (i=1; i < N+1; i++) { printf("\nZa triygylnik No %d - \n",i); printf("A = %f, B = %f, C = %f\n",a[i],b[i],c[i]); printf("Ma = %f, Mb = %f, Mc = %f\n",M[i][1],M[i][2],M[i][3]); printf("r = %f\n",r[i]); } printf ("\nSrednoaritmetichniq radius na vpisanata na vsichki triygylnici e : %f",SaR); printf ("\nBroqt na triygylnicite s po-malyk radius ot sredniq e %d",br1); printf ("\nBroqt na triygylnicite s po-golqm radius ot sredniq e %d\n",br2); }