Конус - прав, кръгов, пресечен, повърхнина и обем

повърхнина и обем на прав кръгов конус
повърхнина на пресечен конус
ротационен конус и тъпоъгълен триъгълник
ротационен конус и правоъгълен триъгълник
пресечен конус - сечение равнобедрен трапец
пресечен конус - сечение правоъгълен трапец

Повърхнината на конус включва равнинна основа и конична околна повърхнина. Последната е формирана от движението на права, наречена образувателна, около друга права, наречена ос на конуса. Ако оста на един кръгов конус е перпендикулярна на основата му, то този конус е прав кръгов конус, в противен случай е наклонен конус. Ос на конус е отсечката, свързваща върха на конуса и центъра на окръжността. Осно сечение на кръгов конус е сечение на конуса с равнина минаваща през оста му. Осното сечение на прав кръгов конус е равнобедрен триъгълник. Прав кръгов конус, наричан също и ротационен конус, може да се получи при завъртането на правоъгълен триъгълник около един от катетите му. Ако завъртим същия правоъгълен триъгълник около хипотенузата ще се получи фигура съставена от два кръгови конуси с долепени основи. Образователните ще са катетите, радиус на основата – височината към хипотенузата, а общата височина на двата конуса е дължината хипотенузата. Пресечен кръгов конус е част от кръгов конус, заключена между две негови успоредни сечения, наречени основи. Пресечен конус може да се получи с ротация на равнобедрен трапец. Осно сечение на прав кръгов пресечен конус е равнобедрен трапец. лице на основата на конус: π * r * r - аналогично с лице на кръг;
лице на околна повърхнина на конус: S = π *r* l;
лице на пълна повърхнина: S1 = π* r* (r + l);.
обем на конус: V = π* r*r* h/3.

Начало на страницата

повърхнина и обем на прав кръгов конус

Имаме въведени данни за прав кръгов конус - радиус на основата r и височина на конуса h. Търсим околна и пълна повърхнина, както и обем на прав кръгов конус.

повърхнина и обем на прав кръгов конус

Алгоритъм

Въвеждат се радиус r и височина h на прав кръгов конус. От въведените радиус и височина на конуса се изчислява образуваща L по теоремата на Питагор. образуваща на конус L = sqrt(r*r +h*h);
околна повърхнина на конус Sok = pi*r*L;
пълна повърхнина на конус Sp =pi*r*(r+L)

Следващата примерна програма дава решена задача за повърхнина и обем на прав кръгов конус:

#include <iostream>
#include <cmath>
using namespace std;

 double const pi=3.141592;

int main()
{ double r,h,L,Sp,Sok,V;
  char ose;
  cout<<"Imame wywedeni radius r i wisochina h za praw krygow konus - realni\n";
  cout<<"chilsa ot interwala [1..101]. Tyrsim okolnata powyrhnina Sok,\n";
  cout<<"pylnata powyrhnina Sp i obem na konus V.\n";
  cout<<"Primer: r=3, h=4 Izhod Sok=47.1239 , Sp =75.3982 , V=37.6991  \n";

  do {
  cout<<"Wywedete radius na konus : ";cin>>r;
  cout<<"Wywedete wisochina na konus : ";cin>>h;
  L = sqrt(r*r +h*h);//obrazuwatelna na konus 
  cout<<"obrazuwatelna na konus L = "<<L<<endl;
  Sok = pi*r*L;//okolna powyrhnina na konus 
  Sp =pi*r*(r+L);//pylna powyhnina na konus 
  V= (pi*r*r*h)/3;//obem na konus 
  cout<<" okolna powyrhnina na konus Sok = "<<Sok<<endl;
  cout<<" pylna powyrhnina na konus Sp = "<<Sp<<endl;
  cout<<" obem na konus V = "<<V<<endl;
  cout<<"She wywevdate li drugi danni <y/n>: ";cin>>ose;
 } while (ose=='y');

system ("pause");
return 0;
}//kraj na programa konus 

Начало на страницата

повърхнина на пресечен конус

Имаме прав кръгов пресечен конус, за който са въведени следните данни:
h - височина на конус;
m - разлика между радиусите на двете основи;
P - периметър на осното сечение на разглеждания пресечен конус.
Търсим пълна повърхнина на този пресечен конус.

повърхнина на пресечен конус

Алгоритъм

Осно сечение на кръгов конус е равнина през оста на конуса - права свързваща върха на конуса и центъра на основата. В разглеждания случай осното сечение представлява равнобедрен трапец с разлика между основите 2*m (диаметъра на основите на конуса) и височина h. В този трапец вече разглеждаме правоъгълен триъгълник със страни: хипотенуза - образувателна L; катет - височина h, катет - разлика между половините на основите m. Изчисляваме: L по формулата на Питагор. радиус на малката основа на конус r1= (P - 2*L - 2*m)/4;
радиус на голямата основа на конус r2 = r1 + m;
Пълна повърхнина на конус: Sp=pi *( L*(r1+r2) + r1*r1 + r2*r2);

  Следващата примерна програма дава решена задача за пълна повърхнина на пресечен конус:
#include <iostream>
#include <cmath>
using namespace std;

double const pi=3.141592;
int main()
{ double h,m,L, r1,r2, P,Sp;
  cout<<"Imate presechen konus za kojto sa wywedeni: wisochina h, razlika\n";
  cout<<"mevdu radiusite na dwete osnowi m, kakto i permetyr na osnoto\n";
  cout<<"sechenie P. Tyrsim pylna powyrhnina na konus Sp.\n";
  cout<<"Primer: P=52; h=8;  m=6 Izhod: S=961.327 \n";
  cout<<"Wywedete perimetyr na osnoto secheniq: ";cin>>P;
  cout<<"Wywedete wisochina na konus : ";cin>>h;
  cout<<"Wywedete razlikata mevdu radiusite: ";cin>>m;
  L = sqrt(h*h + m*m);//po formula na Pitagor
  cout<<" obrazuwatelna na konus : "<<L<<endl;
  r1 = (P - 2*L - 2*m)/4;//po-malkiq radius na konus 
  cout<<"radius na malkata osnowa: "<<r1<<endl;
  r2 = r1 + m;//po-golemiq radius na konus 
  cout<<"radius na golqmata osnowa: "<<r2<<endl;
  Sp=pi *( L*(r1+r2) + r1*r1 + r2*r2);//okolna powyrhnina + 2-te osnowi
  cout<<"pylna powyrhnina na presechen konus : "<<Sp<<endl;
system ("pause");
return 0;
}//kraj na programa konus 

Начало на страницата

ротационен конус и тъпоъгълен триъгълник

Имаме тъпоъгълен триъгълник, за който са въведени дължини на страните a,b,c. Триъгълникът е ротиран с ос на симетрия най-късата му страна. Да се изчисли обем и повърхнина на полученото тяло - ротационен конус, състоящо се от два конуса.

ротационен конус и тъпоъгълен триъгълник

Алгоритъм:

Полученото тяло може да се разгледа като съставено от два отделни конуса ( съставен конус ), като от големия конус с образувателна най-дългата страна е изваден обема на празня конус с образувателна средната страна. Разликата във височините на двата конуса е най-късата страна.
Подреждаме страните във възходящ ред a<b<c.
Изчисляваме лицето на триъгълника по формулата на Херон
Полупериметър p=(a+b+c)/2
Лице по Херон St= sqrt(p*(p-a)*(p-b)*(p-c))
Изчисляваме височината към най-късата страна. Това е и радиус на основата и за двата разглеждани конуса ha=2*St/a;
Разглеждаме правоъгълен триъгълник с хипотенуза c и катет ha.
Изчисляваме продължението на страната a до петата на хипотенузата ha по формулата на Питагор
височина на целия конус h1 = sqrt(c*c - ha*ha)
височина на празния конус h2= h1-a
обем на целия конус V1=pi*r*r*h1/3
обем на празния конус V2=pi*r*r*h2/3
обем на съставния конус V=V1-V2
околна повърхнина на целия конус S1=pi*ha*h1
околна повърхнина на празния конус S2=pi*ha*h2
околна повърхнина на съставния конус S=S1+S2

   Следващата примерна програма съдържа решена задача за ротационен конус:

#include <iostream>
#include <cmath>
using namespace std;
double const pi=3.1415925;

double Heron( double mas[])
{double p,S;
 int fl=1;
 do 
 { cout<<"Wywedete strani ot typoygylen triygylnik\n";
  cout<<"Wywedete strana a: ";cin>>mas[0];
  cout<<"Wywedete strana b: ";cin>>mas[1];
  cout<<"Wywedete strana c: ";cin>>mas[2];   
  if (mas[0]>mas[1]) {mas[3]=mas[0];mas[0]=mas[1];mas[1]=mas[3];}
  if (mas[1]>mas[2]) {mas[3]=mas[1];mas[1]=mas[2];mas[2]=mas[3];}
  if (mas[0]>mas[1]) {mas[3]=mas[0];mas[0]=mas[1];mas[1]=mas[3];}      
  if ( ( mas[2]*mas[2] > mas[0]*mas[0] + mas[1]*mas[1] )   &&   ( mas[2] < mas[0]+ mas[1] )   )
   {  fl = 0;   
  //stranite podredeni wyw wyzhodqsh red  
  p=(mas[0]+mas[1]+mas[2])/2;//poluperimetyr
  S=sqrt(p*(p-mas[0])*(p-mas[1])*(p-mas[2]));//lice na triygylnik po Heron
   }//if
    }  while (fl);
  return S;    
}// Heron

void cone (double mas[])
{double St,ha,h1,h2,V,V1,V2,S,S1,S2;
  St= Heron (mas);
  cout<<"Lice po Heron: "<<St<<endl;
  ha=2*St/mas[0];//wisochina kym naj-kysata strana
  cout<<"Radius na osnowata ha: "<<ha<<endl;
  h1 = sqrt(mas[2]*mas[2] - ha*ha);//wisochina na celiq konus 
  cout<<"Wisochina na celiq konus : "<<h1<<endl;
  h2= h1-mas[0];//wisochna na prazniq konus 
  V1=pi*mas[2]*mas[2]*h1/3; //obem na celiq konus - obrazuwatelna naj-golqmata
  V2=pi*mas[1]*mas[1]*h2/3; //obem na prazniq konus - obrazuwatelna srednata
  S1=pi*ha*mas[2]; //okolna pow na celiq konus pi*r*L
  S2=pi*ha*mas[1]; //okolna pow na prazniq konus 
  V=V1-V2;  S=S1+S2; //obemite se izwavdat licata se sybirat
  cout<<" pylna powyrhnina na systawniq konus S= "<<S<<endl;
  cout<<" obem na systawniq konus V= "<<V<<endl;
} // cone  konus 

int main ()
 { double mas[4];
 cout<<"Imate wywedeni 3 strani na typoygylen triygylnik a,b,c.\n";
 cout<<"Tozi triygylnik e rotiran okolo naj-kysata strana.\n";
 cout<<"Da se izchisli pylna powyrhnina i obem na rotacionnoto tqlo - konus.\n";
 cout<<"Primer: 4,4,6 Izhod S=124.678;  V=161.268 \n";
 cone (mas);
 system("pause") ;
 return 0;
}//kraj na programa konus 

Начало на страницата

ротационен конус и правоъгълен триъгълник

Имаме правоъгълен триъгълник, за който са въведени дължини на катетите a,b. Триъгълникът е ротиран с ос на симетрия хипотенузата си. Да се изчисли повърхнина и обем на полученото тяло - ротационен конус.

ротационен конус и правоъгълен триъгълник

Алгоритъм

Получават се два отделни конуса с долепени равни основи. Диаметърът на основата и за двата конуса е височината към хипотенузата.
Обща височина на двата конуса и едновременно хипотенуза в правоъгълния триъгълник: c = sqrt(a*a + b*b).
лице на триъгълник S=a*b/2
радиус на основата на конус hc = 2*S/c;
Изчисляваме поотделно височините на двата конуса от следствията на Питагоровата теорема - квадратът на катета a е равен на произведението от проекцията му върху хипотенузата m и хипотенузата c a*a=h1*c.
височина на конус с образувателна a: h1= a*a/c
височина на конус с образувателна b: h2= b*b/c
околна повърхнина на съставния конус: S = pi * hc * ( a + b)
обем на съставния конус: V = pi*hc*hc*(h1+h2) / 3

Следващата примерна програма съдържа решена задача за ротационен конус:

#include <iostream>
#include <cmath>
using namespace std;
double const pi=3.141592;
int main ()
{ double a,b,c,hc,h1,h2, S,V;
  cout<<"Imate prawoygylen triygylnk s dylvina na katetite a,b.\n";
  cout<<"Triygylnikyt e rotiran s os na simetriq hipotenuzata si.\n";
  cout<<"Izchislete okolna powyrhnina i obem na poluceniq systawen konus.\n";
  cout<<"Primer: a=3; b=4; Izhod S=52.7787; V=30.1593 \n";
  cout<<"Wywedete a: ";cin>>a;
  cout<<"Wywedete b: ";cin>>b;
  c= sqrt (a*a+b*b);//dylvina na hipotenuzata
  S=a*b/2; //lice na tiygylnik
  hc = 2*S/c;// wisochina kym hipotenuzata i radius na 2-ta konusa
  h1= a*a/c; // wisochina na konus s obrazuwatelna katet a
  h2= b*b/c; // wisochina na konus s obrazuwatelna katet b
  cout<<"c: "<<c<<" h1: "<<h1<<" h2: "<<h2<<endl;
  S = pi * hc * ( a  +  b);// powyrhnina na systawniq sdwoen konus 
  cout<<" powyrhnina na sysytawniq konus : "<<S<<endl;
  V = pi*hc*hc*(h1+h2) / 3;
  cout<<" obem na systawniq konus : "<<V<<endl;
  system ("pause");
  return 0;
}//kraj na programa konus 

Начало на страницата


пресечен конус - сечение равнобедрен трапец

Имаме пресечен конус със сечение равнобедрен трапец, за който са въведени: b - бедро на трапец; f - средно аритметично от двете основи на трапеца; g - средно геометрично от двете основи на трапеца. Търсим околна и пълна повърхнина на този пресечен конус.

пресечен конус - сечение равнобедрен трапец

Алгоритъм:
бедрото на равнобедрения трапец b е образувателна на този конус
Нека означим дължината на двете основи на трапеца с a=2*r1, b=2*r2.
f = (a+b)/2 = (2*r1+2*r2)/2 така r1+r2=f
f*f = r1*r1 +2*r1*r2 + r2*r2
g = sqrt(a*b) = sqrt(2*r1*2*r2)
g*g = 4*r1*r2
Формулите за повърхнина и обем на пресечен кръгов конус са съответно:
околна повърхнина на конус :
Sok = π * (r1+ r2) * b = 2 * pi * f * b;
пълна повърхнина на конус :
Sp = Sok + π * (r1*r1 + r2*r2) = Sok + π * (f*f – 0.5*g*g) ;

   Следващата примерна програма съдържа решена задача за пресечен конус :


#include <iostream>
#include <cmath>
using namespace std;
double const pi=3.141592;

int main()
{ double b,f,g,Sok,Sp;
  cout<<"Imame presechen konus, chieto osno sechenie e rawnobedren trapec.\n";
  cout<<"Za tozi trapec sa wywedeni b - dylvina na bedro;\n";
  cout<<"sredno aritemetichno f i sredno geometrichno g na dwete mu osnowi.\n";
  cout<<"Tyrsim okolna Sok i pulna powyrhnina Sp na presecheniq konus.\n";
  cout<<"Primer b=10, f=10; g=8  Izhod Sok=628.318  Sp=841.947\n";
  cout<<"Wywedete dylvina na bedroto na trapeca: ";cin>>b;
  cout<<"Wywedete sredno aritmetichnoto na dwete osnowi: ";cin>>f;
  cout<<"Wywedete sredno geomrtichnoto na dwete osnowi: ";cin>>g;
  cout<<"Perimetyr na trapec: "<<2*b+2*f<<endl;
  Sok = 2*pi*f*b;
  cout<<" okolna powyrhnina na presechen konus : "<<Sok<<endl;
  Sp =  Sok + pi*(f*f - 0.5*g*g);
  cout<<" pylna powyrhnina na presechen konus : "<<Sp<<endl;
  system("pause");
  return 0;
}//kraj na programa presechen konus 

Начало на страницата

пресечен конус - сечение правоъгълен трапец

Имаме правоъгълен трапец с въведени: дължина на двете основи - r1, r2 и височина - бедрото, сключващо прав ъгъл с двете основи. Избрана е ос на ротация правоъгълното бедро на трапеца. Полученото ново ротационно тяло е пресечен конус. Търсим: околна повърхнина, пълна повърхнина и обем на този пречен конус.

пресечен конус - сечение правоъгълен трапец

Алгоритъм:
Изчисляваме разликата в дължините на двете основи на конуса a_raz= abs (r1-r2);
Използваме торема на Питагор за изчисляване L образувателна на конус L = sqrt (h*h + a_raz*a_raz);
Изчисляваме околна повърхнина на пресечен конус Sok = pi * L * (r1 + r2);
Изчисляваме пълна повърхнина на пресечен конус Sp = pi * ( L * (r1+r2) + r1 * r1 + r2 * r2);
Изчисляваме обем на пресечен конус V = pi * h *(r1 * r1 + r2 * r2 + r1 * r2) / 3

   Следващата програма съдържа решена задача за пресечен конус:


#include <iostream>
#include <cmath>
using namespace std;

double const pi=3.141592;

void cone(double r1,double r2, double h)
{ double a_sr,a_raz,L,Sok,Sp,V;
 a_raz = abs (r1-r2);// absoliutna stojnost ot razlikata na 2-te osnowi
 L = sqrt (h*h + a_raz*a_raz);// obrazuwatelna na konus po Pitagor
 Sok = pi * L*(r1+r2);// okolna powyrhnina na presechen konus 
 Sp = pi *( L*(r1+r2) + r1*r1 + r2*r2);//  pylna powyrhnina na presechen konus 
 V = pi* h *(r1*r1 + r2*r2 + r1*r2)/3;// obem na presechen konus 
 cout<<" obrazuwatelna na konus  "<<L<<endl;
 cout<<" okolna powyrhnina na presechen konus  "<<Sok<<endl;
 cout<<" pylna powyrhnina na presechen konus  "<<Sp<<endl;
 cout<<" obem na presechen konus  "<<V<<endl;
}// presechen konus 

int main()
{double r1,r2,h;
  cout<<"Imame prawoygylen trapec s wywedeni osnowi r1,r2 i wisochina h.\n";
  cout<<"Tozi trapec e zawyrtqn s os na simetriq wisochinata. Nowoto \n";
  cout<<"tqlo e presechen konus za kojto tyrsim: Sok okolna powyrhnina,\n";
  cout<<"Sp - pylna powyrhnina i V - obem na konus.\n"; 
  cout<<"Primer: r1=10; r2=7; h=4 Izhod: Sok=267.035, Sp=735.133, V=917.345 \n";
  cout<<"Wywedete dylvina na osnowa r1: ";cin>>r1;
  cout<<"Wywedete dylvina na osnowa r2: ";cin>>r2;
  cout<<"Wywedete wisochina h: ";cin>>h;
  cone(r1, r2, h);
system("pause");
return 0;
}//kraj na programa presechen konus 

Обяснени и решени задачи с подобни алгоритми, функции и служебни думи са разгледани в страницата с електронни уроци по информатика - програмиране.
Илюстриране работата на характерни алгоритми можете да намерите в предоставените електронни помагала съдържащи решени задачи, примери.

Начало на страницата

 
Размер на шрифта
Increase Font Size Option 3 Reset Font Size Option 3 Decrease Font Size Option 3
Bulgarian Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish
Търсене в сайта: