codigo c++:
#include<iostream>
#include <stdio.h>
#include <assert.h>
#include <ctype.h>
using namespace std;
void ctaip();
int main ()
{
int opcion;
do
{
cout<<"\n";
cout<<"~~~~~Menu librerias~~~~~\n";
cout<<"1) Ejemplo libreria <assert.h> \n";
cout<<"2) Ejemplo libreria <cassert> \n";
cout<<"3) Ejemplo libreria <cctype> \n";
cout<<"4) Ejercicios aplicacion de librerias \n";
cin>>opcion;
switch (opcion)
{
case 1:
{
cout<<"Libreria assert.h: \n";
cout<<"sirve para crear aseveraciones que si no se cumplen el programa falla subitamente\n ";
cout<<"https://www.youtube.com/watch?v=pe_PabqjKMI - video explicativo";
int i;
for (i=0; i<=9; i++)
{
assert( i <= 7 );
printf("i = %i \n", i);
}
}; break;
case 2:
{
cout<<"Libreria cassert: \n";
{
std::cout<<"Divion entre a y b, b no puede ser cero"<< std::endl;
std::cout << "Uso de assert" << std::endl ;
int a,b,c;
std::cout << "Numero 1: ";
std::cin >> a;
std::cout << "Numero 2: ";
std::cin >> b;
assert( b != 0 ); // Se agrega una aserción
c = a / b;
std::cout << "Resultado: " << c << std::endl;
return 0;
}
cout<<"\n ";
}; break;
case 3:
{
ctaip();
};break;
case 4:
{
int opcion2;
do
{
cout<<"\n";
cout<<"~~~~~ Ejercicios aplicacion ~~~~\n";
cout<<"1) asssert.h : MRUV - aceleracion \n";
cout<<"2) cassert: MRUV - Velocidad final \n";
cout<<"3) Ctype macro isalnum \n";
cout<<"4) Macro isgraph ANSI C \n";
cin>>opcion2;
switch (opcion2)
{
cout<<"\n";
cout<<"\n";
case 1:
{
double vf, vi, t, a;
cout<<"asssert.h : MRUV - aceleracion\n";
cout<<"Ingrese velocidad final\n";cin>>vf;
cout<<"Ingrese velocidad inicial\n";cin>>vi;
cout<<"ingrese tiempo\n";cin>>t;
assert( t != 0 );
a=(vf-vi)/t;
}; break;
case 2:
{
double vf, vi, t, a;
cout<<"cassert: MRUV - Velocidad final\n";
cout<<"Ingrese velocidad inicial\n";cin>>vi;
cout<<"Ingrese aceleracion\n";cin>>a;
cout<<"Configuracion del tiempo es: 0;<4;+1 \n";
for (t=0; t<4; t++)
{
vf=vi+a*t;
assert( vf <= 10 );
cout<<"Velocidad final es"<<vf<<endl;
}
}; break;
case 3:
{
cout<<"Ctype macro isalnum : Verificar si mensaje es correcto\n";
cout<<"mensaje: 012jhp$%$& \n";
char cadena[] = "012jhp$%$&";
int i;
for(i = 0; cadena[i]; i++)
printf("%c, %d \n", cadena[i], isalnum(cadena[i]));
}; break;
}
}while (opcion2<4);
}; break;
}
}while (opcion<5);
return 0;
}
void ctaip()
{
int opcion1;
do
{
cout<<"\n";
cout<<"~~~~~Menu libreria ctype.h ~~~~\n";
cout<<"web recomendada^2 : http://c.conclase.net/librerias/?ansimac=isalpha#inicio \n";
cout<<"1) Macro isalnum \n";
cout<<"2) Funcion tolower \n";
cout<<"3) Funcion toupper \n";
cout<<"4) Macro isgraph ANSI C \n";
cout<<"5) Salir a menu librerias \n";
cin>>opcion1;
switch (opcion1)
{
case 1:
{
cout<<"Libreria ctype.h: \n";
cout<<"Macro isalnum \n";
cout<<"\n";
cout<<"Comprueba sin un carácter es alfanumérico.\n";
cout<<"isalnum es una macro que verifica el entero c pertenece al rango de letras (A a Z o a a z)\n";
cout<<"o al de dígitos (0 a 9), por defecto. La verificación se hace mediante una tabla, y su\n";
cout<<"comportamiento depende le la categoría LC_CTYPE actual.\n";
cout<<"El valor de retorno será no nulo si c es una letra o un número, y cero en caso contrario.\n";
cout<<"Ejemplo\n";
cout<<";0sR(h&R1\n";
char cadena[] = ";0sR(h&R1/";
int i;
for(i = 0; cadena[i]; i++)
printf("%c, %d \n", cadena[i], isalnum(cadena[i]));
}; break;
case 2:
{
cout<<"Libreria ctype.h: \n";
cout<<"Funcion tolower\n ";
cout<<"ch debe estar en el rango 0 a 255, y si está entre A y Z lo convierte a su equivalente \n";
cout<<"en el rango a a z, el resto de los valores no son modificados. El valor de retorno es \n";
cout<<"el valor convertido si ch era una mayúscula, o el valor original en caso contrario. \n";
cout<<"Nota: los caracteres en acentuados, o con diéresis, en mayúscula y la Ñ no sufren modificaciones \n" ;
cout<<"Ejemplo: \n";
cout<<"esto ES UNA CADENA DE PRUEBA ñ \n";
char cadena[] = "esto ES UNA CADENA DE PRUEBA ñ";
int i;
for(i = 0; cadena[i]; i++)
cadena[i] = tolower(cadena[i]);
printf("%s\n", cadena);
}; break;
case 3:
{
cout<<"Libreria ctype.h: \n";
cout<<"Funcion toupper";
cout<<"ch debe estar en el rango 0 a 255, y si está entre a y z lo convierte a su equivalente \n";
cout<<"en el rango A a Z, el resto de los valores no son modificados. El valor de retorno es el valor \n";
cout<<"convertido si ch era una minúscula, o el valor original en caso contrario \n";
cout<<"Nota: los caracteres en acentuados, o con diéresis, en minúscula y la ñ no sufren modificaciones. \n";
cout<<"Ejemplo: \n";
cout<<"esto es una CADENA de prueba \n";
char cadena[] = "esto es una CADENA de prueba";
int i;
for(i = 0; cadena[i]; i++)
cadena[i] = toupper(cadena[i]);
printf("%s\n", cadena);
}; break;
case 4:
{
cout<<" Macro isgraph ANSI C \n";
cout<<"Comprueba sin un carácter es imprimible.\n";
cout<<"isgraph es una macro que verifica el entero c pertenece al rango de caracteres con\n";
cout<<"representación gráfica, que por defecto son todos menos el espacio ' '.\n";
cout<<"El comportamiento depende de la categoría local de LC_CTYPE.\n";
cout<<"El valor de retorno será no nulo si c es un carácter gráfico.\n";
cout<<"Ejemplo\n";
cout<<";0 ñsáR(h &~?RÛ 1/ \n";
char cadena[] = ";0 ñsáR(h &~?RÛ 1/";
int i;
for(i = 0; cadena[i]; i++)
printf("%c, %d\n", cadena[i], isgraph(cadena[i]));
}; break;
}
}while (opcion1<5);
}
Ejecucion:
Comentários