CABRERA BERNAOLA FELIX GUILLERMO II-EE-2
LIBRERÍA DEL C++
#include<assert.h>
#INCLUDE<CASSERT>
assert.h es un archivo de encabezado en la biblioteca estándar del lenguaje de programación C que define el asertivo de macro del preprocesador C (). [1] [2] En C ++ también está disponible a través del archivo de encabezado <cassert>.
Afirmar (assert)
afirmar (a! = 1);
Esta es una macro que implementa una aserción de tiempo de ejecución, que se puede usar para verificar las suposiciones hechas por el programa e imprimir un mensaje de diagnóstico si esta suposición es falsa.
Cuando se ejecuta, si la expresión es falsa (es decir, se compara igual a 0), assert () escribirá información sobre la llamada que falló en stderr y luego llamará abort (). La información que escribe a stderr incluye:
el nombre del archivo fuente (la macro predefinida __FILE__)
el número de línea de origen (la macro predefinida __LINE__)
la función de origen (el identificador predefinido __func__) (agregado en C99)
El texto de expresión que se evaluó a 0 .
Ejemplo de salida de un programa compilado en Linux:
programa:a! = 1 'falló. Abortar (núcleo volcado) .
Los programadores pueden eliminar las aserciones simplemente compilando el programa, sin cambiar el código fuente: si la macro NDEBUG se define antes de la inclusión de <assert.h>, la macro assert () se puede definir simplemente como:
#define assert (ignore) ((void) 0) y, por lo tanto, no tiene efecto en la unidad de compilación, ni siquiera evalúa su argumento. Por lo tanto, las expresiones pasadas a assert () no deben contener efectos secundarios, ya que no ocurrirán cuando la depuración esté deshabilitada. Por ejemplo: afirmar (x = obtiene ()); no leerá una línea y no asignará a x cuando la depuración esté deshabilitada
#include<iostream>
#include<assert.h>//biblioteca para aserciones
#include<cassert>
#include<math.h>
using namespace std;
int ca,co,m,v,a,b,d1,i;
void ejemplo_1(),ejemplo_2(),ejemplo_3(),ejemplo_4();
double h,d,p,h1;
int main()
{
int opcion;
do
{
cout<<"******************menu************* : \n";
cout<<"1) opcion 1 :1_ejemplo del <assert.h> : \n";
cout<<"2) opcion 2 :2_ejemplo del <assert.h> : \n";
cout<<"3) opcion 3 :1_ejemplo del <cassert> : \n";
cout<<"4) opcion 4 :2_ejemplo del <cassert> : \n";
cin>>opcion;
switch(opcion)
{
case 1:
{
ejemplo_1();
}
break;
case 2:
{
ejemplo_2();
}break;
case 3:
{
ejemplo_3();
}break;
case 4:
{
ejemplo_4();
};break;
}
}while(opcion!=0);
return 0;
}//fin del switch:
//zona de funciones...
void ejemplo_1()
{
cout<<"teorema de pitagoras";
cout<<"ingrese cateto opuesto",cin>>co;
cout<<"ingrese cateto adyacente",cin>>ca;
h = sqrt(pow(co,2)*pow(ca,2));
assert(h>6);//confirmacion.
cout<<"hipotenuza es igual a:"<<h<<endl;
cout<<endl<<endl;
}//fin del teorema.
void ejemplo_2()
{
cout<<"hallando la densidad";
cout<<"ingrese la masa",cin>>m;
cout<<"ingrese el volumen",cin>>v;
d=m/v;
assert(d>10);//confirmacion.
cout<<"densidad es igual a :"<<d<<endl;
cout<<endl<<endl;
}//fin de la densidad.
void ejemplo_3()
{
cout<<"suma de cuadrados";
cout<<"ingrese valor de a",cin>>a;
cout<<"ingrese valor de b",cin>>b;
assert(b>10);//confirmacion.
p=pow(a,2)+2*a*b+pow(b,2);
cout<<"resultado es : "<<p<<endl;
cout<<endl<<endl;
}//fin de la suma de cuadrados.
void ejemplo_4()
{
cout<<"hallando la intensidad luminosa";
cout<<"ingrese distancia",cin>>d1;
assert(d1<20);//confirmacion.
for (i=0; i<=9; i++)
{
cout<<"intencidad igual :"<<i<<endl;
}
h1=i/pow(d,2);
cout<<"el resultado es:"<<h1<<endl;
cout<<endl<<endl;
}
//fin del proceso
TRABAJO EN C++
