Escolar Documentos
Profissional Documentos
Cultura Documentos
INTRODUCCION:
En la actualidad existe un sinfn de lenguajes de programacin. Estos han sido de suma
importancia para los avances tecnolgicos en el mundo.
Entre estos lenguajes se encuentra C++, que es el sucesor de C, en este documento
datamos caractersticas de este lenguaje.
Abordara los temas de:
Estructuras (struct)
Uniones (union)
Clases (class)
res=floor(x);
Escribir El resultado es : res
FinSubProceso
SubProceso re<-VALOR ABSOLUTO(x)
Escribir 'Dame x'
Leer x
res=fabs(x);
Escribir El resultado es : res
FinSubProceso
SubProceso re<-RAIZ CUBICA(x)
Escribir 'Dame x'
Leer x
res=sbrt(x);
Escribir El resultado es : res
FinSubProceso
SubProceso re<-RAIZ CUADRADA(x)
Escribir 'Dame x'
Leer x
res=sqrt(x);
Escribir El resultado es : res
FinSubProceso
SubProceso re<-POTENCIA(x)
Escribir 'Dame x'
Leer x
Escribir 'Dame y'
Leer y
res=pow(x);
Escribir El resultado es : res
FinSubProceso
SubProceso re<-EXPONENCIAL(x)
Escribir 'Dame x'
Leer x
res=exp(x);
Escribir El resultado es : res
FinSubProceso
SubProceso re<-LOGARITNMO NATURAL(x)
Escribir 'Dame x'
Leer x
res=logn(x);
Escribir El resultado es : res
FinSubProceso
SubProceso re<-LOGARITMO BASE 10(x)
Escribir 'Dame x'
Leer x
res=log(x);
Escribir El resultado es : res
FinSubProceso
SubProceso re<-SENO(x)
Escribir 'Dame x'
Leer x
res=sin(x);
Escribir El resultado es : res
FinSubProceso
SubProceso re<-COSENO(x)
Escribir 'Dame x'
Leer x
res=cos(x);
Escribir El resultado es : res
FinSubProceso
SubProceso re<-TANGENTE(x)
Escribir 'Dame x'
Leer x
res=tan(x);
Escribir El resultado es : res
FinSubProceso
SubProceso re<-ARCO TANGENTE DE X,Y(x,y)
Escribir 'Dame x'
Leer x
Escribir 'Dame y'
Leer y
res=arctan(x,y);
Escribir El resultado es : res
FinSubProceso
SubProceso re<-RESTO DE LA DIVISION(x)
Escribir 'Dame x'
Leer x
Escribir 'Dame y'
Leer y
res=fmod(x,y);
Escribir El resultado es : res
FinSubProceso
Inicio
Bienvenido
Qu deseas evaluar?
1
3
5
7
9
11
13
15
SENO HIPERBOLICO
REDONDEO A UN NUMERO MENOR
RAIZ CUBICA
POTENCIA
LOGARITNMO NATURAL
SENO
TANGENTE
RESTO DE LA DIVISION
2
4
6
8
10
12
14
Resto de la divisin
SENO HIPERBOLICO
opc
Arco tangente()
RED AL MAYOR
Seno()
RED AL MENOR
Tangente()
VALOR ABSOLUTO
opc
Coseno()
RAZ CUBICA
Logaritmo base 10
RAZ CUADRADA
Log bas
Logaritmo natural
Potencia
Exponencial
Seno hiperblico
Dame X
Dame X
Dame X
res=sinh(x);
res=ceil(x);
res=floor(x);
Valor absoluto
Raz cbica
Raz cuadrada
Dame X
Dame X
Dame X
res=fabs(x);
res=cbrt(x);
res=sqrt(x);
Potencia
Exponencial
Logaritmo natural
Dame X y Y
Dame X
Dame X
X,Y
res=pow(x,y);
res=exp(x);
res=log(x);
Logaritmo base 10
Seno
Coseno
Dame X
Dame X
Dame X
res=log10(x);
res=sin(x*PI/180);
res=cos(x*PI/180);
Tangente
Resto de la division
Dame X
Dame X y Y
Dame X y Y
X,Y
X,Y
res=tan(x*PI/180);
res=atan2(x,y)*180/PI;
res=fmod(x,y);
Cdigo
/*Programa 1
Programa que realiza calculosmatematicos y se emplean funciones de la
biblioteca <cmath>
ICA
2AM2
Fundamentos de programacin orientada a objetos
*/
#include<iostream>
#include<cstdlib>
#include<cmath>//Biblioteca que permite el uso de funciones de la libreria<cmath>
#define PI 3.1415926//Definicion del valor PI como constante
usingnamespacestd;
intopc;
floatx,y,res;
//PROTOTIPOS
floatsenohi(float x);
floatredonmayor (float x );
floatredonmenor (float x );
floatvalabs(float x);
float raiz3(float x);
floatraiz(float x);
intpot(int x, int y);
float expo(float x);
float logan(float x);
float loga10(float x);
float seno(float x);
float coseno(float x);
float tangente(float x);
floatarctangxy(floatx,float y);
floatresdiv(float x, float y);
intmain()
{
cout<<"\n\t\t\t\tBienvenido\n\n"<<endl;//Imprime en pantalla, endl funciona como fin
de instruccin y salto de linea
cout<<"\tQue deseas evaluar?\n\n";
cout<<"\n\t1 SENO HIPERBOLICO\n\t2 REDONDEO A UN NUMERO
MAYOR\n\t3 REDONDEO A UN NUMERO MENOR\n\t4 VALOR
ABSOLUTO\n\t5 RAIZ CUBICA";
cout<<"\n\t6 RAIZ CUADRADA\n\t7 POTENCIA\n\t8 EXPONENCIAL\n\t9
LOGARITNMO NATURAL\n\t10 LOGARITMO BASE 10";
cout<<"\n\t11 SENO\n\t12 COSENO\n\t13 TANGENTE\n\t14 ARCO
TANGENTE DE X,Y\n\t15 RESTO DE LA DIVISION";
break;
default:
system("cls");
cout<<"\nNo elegiste opcion \n";
}
return (0);
}
/*SENO HIPERBOLICO*/
floatsenohi(float x)
{system("cls");
cout<<"\n\nDame x: ";
cin>>x;
res=sinh(x);
cout<<"\nEl resultado del seno hiperbolico de "<<x<<" es: "<<res<<"\n"<<endl;}
/*REDONDEO AL NUMERO MAYOR*/
floatredonmayor (float x )
{system("cls");
cout<<"\n\nDame x: ";
cin>>x;
res=ceil(x);//Redondeo al numero mayor entero ms cercano
cout<<"\nNumero a redondear: "<<x<<"\nNumero redondeado: "<<res<<endl;}
/*REDONDEO AL NUMERO MENOR*/
floatredonmenor (float x )
{system("cls");
cout<<"\n\nDame x: ";
cin>>x;
res=floor(x);//Redondeo al numero menor entero ms cercano
cout<<"\nNumero a redondear: "<<x<<"\nNumero redondeado: "<<res<<endl;}
/*VALOR ABSOLUTO*/
floatvalabs(float x)
{system("cls");
cout<<"\n\nDame x: ";
cin>>x;
res=fabs(x);
cout<<"\nNumero ingresado: "<<x<<"\nValorabsoulto: "<<res<<endl;}
/*RAZ CUBICA*/
float raiz3(float x)
{system("cls");
cout<<"\n\nDame x: ";
cin>>x;
res=cbrt(x);
cout<<"\nEl resultado de la raiz cubica de "<<x<<" es: "<<res<<"\n"<<endl;}
/*RAZ CUADRADA*/
floatraiz(float x)
{system("cls");
cout<<"\n\nDame x: ";
cin>>x;
res=sqrt(x);
cout<<"\nEl resultado de la raiz cuadrada de "<<x<<" es: "<<res<<"\n"<<endl;}
/*POTENCIA*/
intpot(intx,int y)
{system("cls");
cout<<"\n\nDame x: ";
cin>>x;
cout<<"\nDame y: ";
cin>>y;
res=pow(x,y);
cout<<"\nEl resultado de la potencia de "<<x<<" elevado a "<<y<<" es:
"<<res<<"\n"<<endl;}
/*EXPONENCIAL*/
float expo(float x)
{system("cls");
cout<<"\n\nDame x: ";
cin>>x;
res=exp(x);
cout<<"\nEl resultado de e elevado a "<<x<<" es: "<<res<<"\n"<<endl;}
/*LOGARITMO NATURAL*/
float logan(float x)
{system("cls");
cout<<"\n\nDame x: ";
cin>>x;
res=log(x);
cout<<"\nEl resultado del logaritmo natural de "<<x<<" es: "<<res<<"\n"<<endl;}
/*LOGARITMO BASE 10*/
float loga10(float x)
{system("cls");
cout<<"\n\nDame x: ";
cin>>x;
res=log10(x);
cout<<"\nEl resultado del logaritmo base 10 de "<<x<<" es: "<<res<<"\n"<<endl;}
/*SENO*/
float seno(float x)
{system("cls");
cout<<"\n\nDame x: ";
cin>>x;
res=sin(x*PI/180);
cout<<"\nEl resultado del seno de "<<x<<" es: "<<res<<"\n"<<endl;}
/*COSENO*/
float coseno(float x)
{system("cls");
cout<<"\n\nDame x: ";
cin>>x;
res=cos(x*PI/180);
cout<<"\nEl resultado del coseno de "<<x<<" es: "<<res<<"\n"<<endl;}
/*TANGENTE*/
float tangente(float x)
{system("cls");
cout<<"\n\nDame x: ";
cin>>x;
res=tan(x*PI/180);
cout<<"\nEl resultado de la tangente de "<<x<<" es: "<<res<<"\n"<<endl;}
/*ARCO TANGENTE DE X,Y*/
floatarctangxy(floatx,float y)
{system("cls");
cout<<"\n\nDame x: ";
cin>>x;
cout<<"\nDame y: ";
cin>>y;
res=atan2(x,y)*180/PI;
cout<<"\nEl resultado del arco tangente de "<<x<<","<<y<<" es:
"<<res<<"\n"<<endl;}
/*RESTO DE LA DIVISIN*/
//Calcula el resto de la divisin de x entre y. El valor devuelto es x n * y, donde n
es el cociente de x / y.
floatresdiv(float x, float y)
{system("cls");
cout<<"\n\nDame x: ";
cin>>x;
cout<<"\nDame y: ";
cin>>y;
res=fmod(x,y);
cout<<"\nEl resultado del resto de la division de "<<x<<"/"<<y<<" es:
"<<res<<"\n"<<endl;}
Fin Para
Fin Para
Fin SubProceso
SubProcesovoid<- matrizdatos(i,j)
DimensionA[10][4];
Para i<-1 Hasta 10 Con Paso 1 Hacer
Para j<-1 Hasta 4 Con Paso 1 Hacer
Escribir "Digite la posicion ",i,",",j," : ";
Leer A[i][j]
Fin Para
Fin Para
Fin SubProceso
CODIGO
/*Programa 2
Programa que imprime los datos de una matriz
ICA
2AM2
Programacin orientada a objetos
*/
#include<iostream>
#include<cstdio>
#include<cstdlib>
usingnamespacestd;
int matriz (inti,int j);
//PROTOTIPOS. Funcion 1
intmatrizdatos (inti,int j); //PROTOTIPOS. Funcion 2
int A[10][4],i,j; //VARIABLES GLOBALES
intmain()
{
cout<<"\n\n\tIMPRESION DE DATOS DE UNA MATRIZ\n\n";
matriz(i,j);
//llamada de funcion 1. Imprime los datos inicializados en cero
matrizdatos(i,j);
//llamada de funcion 2. Se ingresan valores a la matriz
matriz(i,j);
//llamada de funcion 1. Se imprimen los valores ingresados
system("cls");
}
RESULTADOS
opcion_7:
Para n<-x Hasta Jul Con Paso 1 Hacer
res<-Jun+n
Escribir "Los dias transcurridos desde el 01/Enero/2015
son:"
Escribir res
Fin Para
opcion_8:
Para n<-x Hasta Ago Con Paso 1 Hacer
res<-Jul+n
Escribir "Los dias transcurridos desde el 01/Enero/2015
son:"
Escribir res
Fin Para
opcion_9:
Para n<-x Hasta Sep Con Paso 1 Hacer
res<-Ago+n
Escribir "Los dias transcurridos desde el 01/Enero/2015
son:"
Escribir res
Fin Para
opcion_10:
Para n<-x Hasta Oct Con Paso 1 Hacer
res<-Sep+n
Escribir "Los dias transcurridos desde el 01/Enero/2015
son:"
Escribir res
Fin Para
opcion_11:
Para n<-x Hasta Nov Con Paso 1 Hacer
res<-Oct+n
Escribir "Los dias transcurridos desde el 01/Enero/2015
son:"
Escribir res
Fin Para
opcion_12:
Para n<-x Hasta Dic Con Paso 1 Hacer
res<-Nov+n
Escribir "Los dias transcurridos desde el 01/Enero/2015
son:"
Escribir res
Fin Para
De Otro Modo:
Escribir "ERROR"
Fin Segun
FinProceso
CODIGO
/*Programa 4
Programa que imprime los datos de una matriz
ICA
2AM2
Programacin orientada a objetos
*/
#include<iostream>
#include<cstdio>
#include<cstdlib>
usingnamespacestd;
//DECLARACION DE CONSTANTES
#define Ene 31 //total de dias del mes de enero
#define Feb 59 //total de dias del mes de febrero mas los dias de enero
#define Mar 90 //total de dias del mes de marzo mas los dias de los meses anteriores
#define Abr 120 //total de dias del mes de abril mas los dias de los meses anteriores
#define May 151 //total de dias del mes de abril mas los dias de los meses anteriores
#define Jun 181 //total de dias del mes de mayo mas los dias de los meses anteriores
#define Jul 212 //total de dias del mes de junio mas los dias de los meses anteriores
#define Ago 243 //total de dias del mes de agosto mas los dias de los meses anteriores
#define Sep 273 //total de dias del mes de septiembre mas los dias de los meses anteriores
#define Oct 304 //total de dias del mes de octubre mas los dias de los meses anteriores
#define Nov 334 //total de dias del mes de noviembre mas los dias de los meses anteriores
#define Dic 365 //total de dias del mes de diciembre mas los dias de los meses anteriores
//VARIABLES GLOBALES
intx,y,z,n,res;
intmain()
{
cout<<"Bienvenido\nPrograma que cuenta los dias transcurridos de este anio\nDame la
fecha actual (dd/mm/aa)\n";
res=Jun+n;
cout<<"\nLosdias transcurridos desde el 01/Enero/2015 son: "<<res<<endl;
break;
case 8:
for(Ago;n<=x;n++)
res=Jul+n;
cout<<"\nLosdias transcurridos desde el 01/Enero/2015 son: "<<res<<endl;
break;
case 9:
for(Sep;n<=x;n++)
res=Ago+n;
cout<<"\nLosdias transcurridos desde el 01/Enero/2015 son: "<<res<<endl;
break;
case 10:
for(Oct;n<=x;n++)
res=Sep+n;
cout<<"\nLosdias transcurridos desde el 01/Enero/2015 son: "<<res<<endl;
break;
case 11:
for(Nov;n<=x;n++)
res=Oct+n;
cout<<"\nLosdias transcurridos desde el 01/Enero/2015 son: "<<res<<endl;
break;
case 12:
for(Dic;n<=x;n++)
res=Nov+n;
cout<<"\nLosdias transcurridos desde el 01/Enero/2015 son: "<<res<<endl;
break;
}
}
RESULTADOS
1.- Se solicitan datos a introducirlos desde teclado, los cuales son dia, mes y ao
actual.
ESTRUCTURAS:
Profesor: Torres Sabino Manuel
Grupo: 2AM2
Integrantes:
(struct)
OBJETIVO:
Desarrollar mltiples programas utilizando estructuras as miso debern hacer uso de los
objetos de la estructura, adems el operador punto para relacionar a los objetos con los
atributos de la estructura.
FUNDAMENTO TEORICO
Qu es una estructura (struct)?
Una estructura es un tipo de dato compuesto que permite almacenar un conjunto de
datos de diferente tipo. Los datos que contiene una estructura pueden ser de tipo simple
(caracteres, nmeros enteros o de coma flotante etc.) o a su vez de tipo compuesto
(vectores, estructuras, listas, etc).
A cada uno de los datos o elementos almacenados dentro de una estructura se les
denomina miembros de esa estructura y stos pertenecern a un tipo de dato
determinado.
Una estructura contiene varios datos. La forma de definir una estructura es haciendo uso
de la palabra clave struct.
Una estructura puede estar dentro de otra estructura a esto se le conoce como
anidamiento o estructuras anidadas. Ya que se trabajan con datos en estructuras si
definimos un tipo de dato en una estructura y necesitamos definir ese dato dentro de otra
estructura solamente se llama el dato de la estructura anterior.
Una estructura es un grupo de variables las cuales pueden ser de diferentes tipos
sostenidas o mantenidas juntas en una sola unidad. La unidad es la estructura.
Sintaxis y reglas para estructuras en C++ En C++ se forma una estructura utilizando la
palabra reservada struct, seguida por un campo etiqueta opcional, y luego una lista de
miembros dentro de la estructura. La etiqueta opcional se utiliza para crear otras variables
del tipo particular de la estructura:
Struct campo_etiqueta
{
tipo_miembro miembro_1;
tipo_miembro miembro_2;
15 tipo_miembro miembro_3;
tipo_miembro miembro_n; };
Un punto y coma finaliza la definicin de una estructura puesto que esta es realmente
una sentencia C/C++ . Algunos de los ejemplos usan la estructura:
struct stbarco
{
char sztipo[iString15+iNull_char];
char szmodelo[iString15+iNull_char];
char sztitular[iString20+iNull_char];
Int ianio;
long int lhoras_motor;
float fprecioventa;
};
En un programa, podemos asociar una variable con una estructura utilizando una
sentencia similar a la siguiente:
struct stbarco stbarco_usado;
La sentencia define stbarco_usado de tipo struct stbarco. La declaracin requiere el uso
del campo etiqueta de la estructura. Si esta sentencia est contenida dentro de una
funcin, entonces la estructura, llamada stbarco_usado, tiene un mbito local a esa
funcin. Si la sentencia est contenida fuera de todas las funciones de programa, la
estructura tendr un mbito global. Es posible declarar una variable usando esta sintaxis:
struct stbarco{
Char sztipo [iString15+iNull_char];
Char szmodelo [iString15+iNull_char];
Char sztitular [iString20+iNull_char];
Int ianio;
Long int lhoras_motor;
Float fprecioventa;
} stbarco_usado;
Aqu la declaracin de variable va antes del punto y coma final. Cuando se asocia solo una
variable con el tipo estructura, el campo etiqueta puede ser eliminado, por lo que ser a
posible escribir:
Struct {
char sztipo[iString15+iNull_char];
char szmodelo[iString15+iNull_char];
16 char sztitular[iString20+iNull_char];
int ianio;
long int lhoras_motor;
float fprecioventa;
} stbarco_usado;
CODIGO
/*Programa 6
RectangulosR[3]={ {1.0,2.0},
{3.5,4.5},
{5.1,6.2} };
pR=R;
cout<<"BASE \t ALTURA \t AREA";
for (int i=1;i<=3;i++)
{
cout<<endl<<pR->b
<<"\t"<<pR->h
<<"\t"<<(pR->b)*(pR->h);
pR++;
}
cout<<"\n";
return 0;
}
RESULTADOS
1.- Se imprimen las dimensiones de tres rectngulos con sus respectivas areas
PSEUDOCODIGO
Proceso DATOS_DE_UNA_CASA
Escribir 'Impresion de datos de una casa'
void<-ingresar_datos_uno()
void<-imprimir_datos()
void<-nuevos_datos()
void<-imprimir_datos()
void<-otros_datos()
void<-imprimir_datos()
void<-ingresar_mas_datos()
void<-imprimir_datos()
void<-ult_datos()
void<-imprimir_datos()
FinProceso
SubProcesovoid<- ingresar_datos_uno ()
lugar="Recamaras";
cantidad=3;
area=45.08;
color="Blanco,Azul,Rosa";
Total_de_Puertas=3;
Total_de_Ventanas=6;
Fin SubProceso
SubProcesovoid<-imprimir_datos()
Escribir "LUGAR:"
Escribir " ",lugar
Escribir "CANTIDAD:"
Escribir " ",cantidad
Escribir "AREA:"
Escribir " ",area
Escribir "COLOR:"
Escribir " ",color
Escribir "NUMERO DE PUERTAS:"
Escribir " ",Total_de_Puertas
Escribir "TOTAL DE VENTANAS:"
Escribir " ",Total_de_Ventanas
Fin SubProceso
SubProcesovoid<-nuevos_datos()
lugar ="Salas";
cantidad= 2;
area= 14.56;
color="Rojo,Azul";
Total_de_Puertas=2;
Total_de_Ventanas=4;
Fin SubProceso
SubProcesovoid<-otros_datos()
lugar ="Banio";
cantidad= 2;
area= 10.31;
color="Durazno,Azul";
Total_de_Puertas=2;
Total_de_Ventanas=0;
Fin SubProceso
SubProcesovoid<-ingresar_mas_datos()
lugar ="Cocina";
cantidad= 1;
area= 6.31;
color="Blanco";
Total_de_Puertas=0;
Total_de_Ventanas=2;
Fin SubProceso
SubProcesovoid<-ult_datos()
lugar ="Cuarto de Servicio";
cantidad= 1;
area= 8.31;
color="Azul";
Total_de_Puertas=1;
Total_de_Ventanas=2;
Fin SubProceso
CODIGO
/*Programa 8
Programa que muestra los datos de la diferentes areas de una casa,
utilizando estructuras como argumento de funcion
ICA
2AM2
Programacin orientada a objetos
*/
#include<iostream>
#include<cstdio>
#include<cstdlib>
usingnamespacestd;
struct casa { char *lugar;
int cantidad;
doublearea;
char *color;
intTotal_de_Puertas;
intTotal_de_Ventanas;
}x;
voidingresar_datos_uno (struct casa *px);
voidimprimir_datos (struct casa *px);
voidnuevos_datos (struct casa *px);
voidotros_datos (struct casa *px);
voidingresar_mas_datos(struct casa *px);
voidult_datos (struct casa *px);
intmain ()
{
system("color 3F");
cout<<"\n\t******DATOS DE UNA CASA****** \n"<<endl;
ingresar_datos_uno(&x);
imprimir_datos(&x);
cout<<endl;
nuevos_datos(&x);
imprimir_datos(&x);
cout<<endl;
otros_datos(&x);
imprimir_datos(&x);
cout<<endl;
ingresar_mas_datos(&x);
imprimir_datos(&x);
cout<<endl;
ult_datos(&x);
imprimir_datos(&x);
cout<<endl;
return 0;
}
voidingresar_datos_uno (struct casa *px)
{
px->lugar="Recamaras";
px->cantidad=3;
px->area=45.08;
px->color="Blanco,Azul,Rosa";
px->Total_de_Puertas=3;
px->Total_de_Ventanas=6;
}
voidimprimir_datos (struct casa *px)
{
cout<<"\tLUGAR:
"<<px->lugar <<endl;
cout<<"\tCANTIDAD:
"<<px->cantidad <<endl;
cout<<"\tAREA:
"<<px->area<<"m2"<<endl;
cout<<"\tCOLOR:
"<<px->color <<endl;
cout<<"\tNUMERO DE PUERTAS: "<<px->Total_de_Puertas<<endl;
cout<<"\tTOTAL DE VENTANAS: "<<px->Total_de_Ventanas<<endl;
}
voidnuevos_datos (struct casa *px)
{
px->lugar ="Salas";
px->cantidad= 2;
px->area= 14.56;
px->color="Rojo,Azul";
px->Total_de_Puertas=2;
px->Total_de_Ventanas=4;
}
voidotros_datos (struct casa *px)
{
px->lugar ="Banio";
px->cantidad= 2;
px->area= 10.31;
px->color="Durazno,Azul";
px->Total_de_Puertas=2;
px->Total_de_Ventanas=0;
}
voidingresar_mas_datos(struct casa *px)
{
px->lugar ="Cocina";
px->cantidad= 1;
px->area= 6.31;
px->color="Blanco";
px->Total_de_Puertas=0;
px->Total_de_Ventanas=2;
}
voidult_datos (struct casa *px)
{
px->lugar ="Cuarto de Servicio";
px->cantidad= 1;
px->area= 8.31;
px->color="Azul";
px->Total_de_Puertas=1;
px->Total_de_Ventanas=2;
}
RESULTADOS
SEUDOCODIGO
Inicio
Escribir: Programa que genera un codigo de identificacion personal ID
Escribir: Porfavor ingresa tus datos personales
Subproceso->
FinProceso
Usuario_Ingresando_Datos(Usuario1.x,Usuario1.y,Usuario1.z,Usuario1.a)
Subproceso->
Usuario_Ingresando_Datos(Usuario1.x,Usuario1.y,Usuario1.z,Usuario1.a)
Escribir: Ingresa el ao en que naciste Leer: usuario1.x
Escribir: Ingresa el ao en que te registras Leer: ususario1.y
Escribir: Ingresa tu primer nombre (Sin dejar espacios)
Leer: usuario1.z Escribir: Ingresa tu primer apellido (Sin dejar espacios)
Leer: usuario1.a Res= (x/100)-(y/100)-[3][3]
Escribir: Tu cdigo es: Res
FinSubproeso
Cdigo
/*Programa 3
Programa que genera un codigo ID utlizando tres tipos de datos diferentes
ICA
2AM2
Fundamentos de programacin orientada a objetos
*/
#include<iostream>
#include<cstdio>
#include<cstring>
usingnamespacestd;
structGenerador_ID
{
double x;//Ao de nacimiento
int y;//Ao de registro
char z[30];//Nombre de Usuario
char a[30];//Nombre de Usuario
};
intUsuario_Ingresando_Datos(int x, float y, char z[30], char a[30]);
int
main()
{
Generador_ID Usuario1;
cout<<"\n ********Programa que genera un codigo de identificacion personal
ID********"
<<"\n\nPorfavor ingresa tus datos personales\n\n\n";
Usuario_Ingresando_Datos(Usuario1.x,Usuario1.y,Usuario1.z,Usuario1.a);
}
intUsuario_Ingresando_Datos(int x, float y, char z[30], char a[30])
{
Generador_ID Usuario1;
cout<<"Ingresa el a"<<char(164)<<"o en que naciste :
";//<<Usuario1.x<<Usuario1.y<<Usuario1.z<<endl;
cin>>Usuario1.x;
cout<<"Ingresa el a"<<char(164)<<"o en que te registras : ";
cin>>Usuario1.y;
cout<<"Ingresa tu primer nombre (Sin dejar espacios) : ";
cin>>Usuario1.z;
cout<<"Ingresa tu primer apellido (Sin dejar espacios) : ";
cin>>Usuario1.a;
//La diferencia de lo valores al dividir con flotantes y con enteros
cout<<"\nTucodigo es: "<<Usuario1.x/100<<"-"<<Usuario1.y/100<<"-"
<<Usuario1.z[0]<<Usuario1.z[1]<<Usuario1.z[2]
<<Usuario1.a[0]<<Usuario1.a[1]<<Usuario1.a[2]<<endl;
}
El tipo de impresin vara segn el tipo de dato ya que los datos ingresados tipo int
y float se dividen entre 100 pero vara el resultado ya que float acepta dgitos con
punto decimal y los datos tipo int no.
alumno
int boleta[9];
char nombre[9][25];
char apellido[9][25];
char carrera[9][25];
float promedio[9];
CDIGO
/*PROGRAMA 5
Programa que imprime los datos de un alumno
Programa que da el nombre, edad y calificacion de un alumno
ICA
2AM2
Fundamentos de programacin orientada a objetos
*/
#include<iostream>
#include<cstdio>
#include<cstdlib>
usingnamespacestd;
struct alumno
{
int boleta[9];//Representa un arreglo de 9 espacios de memoria
char nombre[9][25];//Representa un arreglo de 9 espacios de memoria y 25
para caracteres
char apellido[9][25];//Representa un arreglo de 9 espacios de memoria y 25
para caracteres
char carrera[9][25];//Representa un arreglo de 9 espacios de memoria y 25
para caracteres
float promedio[9];//Representa un arreglo de 9 espacios de memoria
}alumn;
intmain ()
{
inti,b;
alumn.nombre[9][25];
alumn.apellido[9][25];
alumn.carrera[9][25];
alumn.promedio[9];
alumn.boleta[9];
do{
for (i=1;i<10; i++)//Por medio del ciclo for se ir asignando el arreglo a cada
elemento de i
{
system ("cls");
cout<<"\t*****Programa que da informacion sobre un alumno*****\n"<<endl;
cout<<"Ingresa tu primer nombre"<<endl;
cin>>alumn.nombre[i];
cout<<"Ingresa tu apellido"<<endl;
cin>>alumn.apellido[i];
cout<<"Ingresa tu carrera"<<endl;
cin>>alumn.carrera[i];
cout<<"Ingresa tu promedio"<<endl;
cin>>alumn.promedio[i];
cout<<"Ingresa tu numero de boleta"<<endl;
cin>>alumn.boleta[i];
}
system ("cls");
for (i=1;i<10; i++)
{
cout<<i<<"\t\tNombre: "<<alumn.nombre[i]<<endl<<"\t\tApellido: "
<<alumn.apellido[i]<<endl<<"\t\tCarrera: "<<alumn.carrera[i]<<endl
<<"\t\tPromedio: "<<alumn.promedio[i]<<endl<<"\t\tBoleta:
"<<alumn.boleta[i]<<"\t\n"<<endl;
}
cout<<"Desea ingresar un nuevo alumno "<<endl<<endl<<"Si=1 No=0"<<endl;
cin>>b;
}
while (b!=0);
}
Esta imagen muestra las impresiones de pantalla por cada alumno, como se
declar un arreglo, ste aparta memoria suficiente para la informacin de 9
alumnos a los que se les pide que ingresen su nombre, apellido, carrera, promedio
y boleta.
Una vez impresos los 9 alumnos el programa te pregunta si deseas realizar otra
vez el proceso.
escuela
materia1
materia2
Cdigo
/*Programa 7
Se tienen dos grupos de alumnos cada grupo tiene 5 alumnos, cada alumno cursa
2 materias, encontrar el promedio por alumno,
el promedio de cada materia por grupo, el promedio general de ambos grupos, el
promedio mas alto, y el promedio mas bajo
ICA
2AM2
Fundamentos de programacin orientada a objetos
*/
#include<iostream>
#include<cmath>
#include<cstdio>
#include<cstdlib>
usingnamespacestd;
struct escuela
{
float materia1;
float materia2;
}alum_g1[5],alum_g2[5];
main ()
{
system ("color 1F");
float
promedio_alug1[5],promedio_alug2[5],promedio_mat1g1=0,promedio_mat1g2=0,p
romedio_mat2g1=0,promedio_mat2g2=0,promedio_g1=0,
promedio_g2=0,promedio_total=0,alto=0,bajo=1000;
cout<<"\n\n\t\t*****Programa que calcula promedios de grupos*****\n\n\n\n"<<endl;
cout<<"GRUPO 1\n\n";
for(int i=1;i<6;i++)//Registro de calificaciones por alumno del grupo 1
{
cout<<"Dame la calificacion del alumno "<<i<<" de la Materia 1 : ";
cin>>alum_g1[i].materia1;
cout<<"Dame la calificacion del alumno "<<i<<" de la Materia 2 : ";
cin>>alum_g1[i].materia2;
cout<<endl;
}
cout<<"GRUPO 2\n\n";
for(int j=1;j<6;j++)//Registro de calificaciones por alumno del grupo 2
{
cout<<"Dame la calificacion del alumno "<<j<<" de la Materia 1 : ";
cin>>alum_g2[j].materia1;
cout<<"Dame la calificacion del alumno "<<j<<" de la Materia 2 : ";
cin>>alum_g2[j].materia2;
cout<<endl;
}
cout<<"-------------------------Promedios-------------------------\n\n";
//Promedio por alumno del grupo 1
for(int r=1;r<6;r++)
{
promedio_alug1[r]=(alum_g1[r].materia1+alum_g1[r].materia2)/2;
cout<<"Promedio alumno "<<r<<" del grupo 1 : "<< promedio_alug1[r]<<endl;
}
cout<<"\n\n";
//Promedio por alumno del grupo 2
for(int s=1;s<6;s++)
{
promedio_alug2[s]=(alum_g2[s].materia1+alum_g2[s].materia2)/2;
cout<<"Promedio del alumno "<<s<<" del grupo 2 : "<< promedio_alug2[s]<<endl;
}
cout<<"\n\n";
//Promedio materia 1 del grupo 1
for(int t=1;t<=6;t++)
{
promedio_mat1g1=promedio_mat1g1+(alum_g1[t].materia1)/5;
}
Grupo 2
CONCLUSIONES:
Luis Alberto Salazar Bravo
Struct
Se concluy que es un buen inicio al mundo de la programacin orientada a objetos, las
estructuras. Una estructura es un tipo de dato compuesto que permite almacenar un
ESTRUCTURAS
Concluyo que conocer ste tema es muy importante ya que te proporciona las bases y los
conceptos elementales para poder adentrarse a lo que son las clases. Los primeros
elementos que constituyen a las estructuras son los datos miembro o atributos y nos
sirven para darnos una idea al momento de emplear las clases.
REFERENCIAS BIBLIOGRAFICAS:
Deitel, Harvey M. y Paul J. Deitel
Cmo programar en C++
Sexta edicin
Pearson Educacin, Mxico 2009
1112 pp.
Gary J. Bronson
C++ para ingeniera y ciencias
Segunda edicin
CengageLearning, Mxico 2010
826 pp.
Ernesto Pealoza Romero
Fundamentos de programacin C/C++
Cuarta edicin
Alfaomega grupo editor, Mxico 2004
550 pp.
http://es.slideshare.net/dmcuenca4/estructuras-y-uniones-en-c
UNIONES: (union)
Profesor: Torres Sabino Manuel
Grupo: 2AM2
Integrantes:
OBJETIVO:
Que el alumno comprenda el tema de uniones, respecto a sus funcionalidades y a sus
aplicaciones de programacin.
FUNDAMENTO TEORICO
Qu es una unin (union)?
Las uniones son un recurso de programacin que permite alojar distintos tipos de objetos
en un mismo espacio cuando estos objetos no coexisten en el tiempo y no hay suficiente
memoria disponible para asignarles espacios distintos. Se trata por tanto de objetos muy
especializados en cuanto a su uso, propio de aplicaciones muy "afinadas", de tiempos en
que la memoria era un bien escaso, pero cuya utilizacin real es bastante rara y
desaconsejada.
Las uniones son un tipo especial de estructuras que permiten almacenar elementos de
diferentes tipos en las mismas posiciones de memoria, aunque evidentemente no
simultneamente.
La definicin de "unin" es similar a la de "estructura", La diferencia entre las dos es que
en una estructura, los miembros ocupan diferentes areas de la memoria, pero en una
unin, los miembros ocupan la misma rea de memoria. Entonces como ejemplo:
Union
{
int i;
double d;
} u;
El programador puede acceder a travs de "u.i" o de "u.d", pero no de ambos al mismo
tiempo. Como "u.i" y "u.d" ocupan la misma rea de memoria, modificar uno modifica el
valor del otro y algunas veces de maneras impredecibles
Sintaxis:
union [<identificador>]
{
[<tipo><nombre_variable>[,<nombre_variable>,...]];
} [<variable_union>[,<variable_union>,...];
Una unin es un tipo de datos derivado, como una estructura, con miembros que
comparten el mismo espacio de almacenamiento. Una variable de tipo unin puede
contener (en momentos diferentes) objetos de diferentes tipos y tamaos. Las uniones
proporcionan una forma de manipular diferentes clases de datos dentro de una sola rea
de almacenamiento. En cualquier momento una unin puede contener un mximo de un
objeto debido a que los miembros de una unin comparten el espacio de
almacenamiento.
Una unin se declara con el mismo formato de una struct. Primero declaramos el tipo
unin y luego declaramos variables de ese tipo.
Por ejemplo:
typedef char str[10];
union tipo union
{
int ival;
float fval;
str sval;
};
Declara el tipo union y declaramos una variable del tipo unin o puntero a unin con:
Tipo unin u, *v;
La variable ser lo suficientemente grande como para mantener el mayor de los tres tipos.
Valores de cualquiera de esos tipos pueden ser asignados a u y despus empleado en
expresiones mientras que el uso sea consistente: el tipo recuperado debe ser el tipo que
se almacen ms recientemente. Es responsabilidad del programador llevar el registro del
tipo que est almacenado actualmente en una unin.
El resultado de referenciar un miembro de unin diferente al ultimo que se guard es
indefinido, ya que el dato almacenado se trata como de tipo diferente. Tenemos acceso a
los miembros de una unin con:
nombre union.miembro.
///////////////////////////////////////////////////////////////////////////////
Cdigo
/*Programa 9
Programa para conocer el uso de union
ICA
2AM2
Fundamentos de programacin orientada a objetos
*/
#include<iostream>
#include<cstdlib>
#include<cstdio>
usingnamespacestd;
union numero/*Union solo perimte utilizar una casilla de espacio de memoria
lo que significa que se sobreescriben los datos al utilizarla mas de una vez*/
{
int x;
float y;
};
intmain()
{
union numero val;//Objeto llamado val (Si se omite union funciona igual)
val.x = 100;//x esta previamente declarada como un dato tipo int en numero y
equivale a 100
cout<<"Coloca un valor en el entero"
<<"\ne imprime ambos datos.\n"
<<"int :\n"<<val.x<<endl<<"float :\n"<<val.y<<endl<<"\n\n";//Memoria basura en y
val.y=253.35;//y esta previamente declarada como un dato tipo float en numero y
equivale a 253.35
cout<<"Coloca un valor en el dato flotante"
<<"\ne imprime ambos datos.\n"
<<"int :\n"<<val.x<<endl<<"float:\n" <<val.y<<"\n\n";//Memoria basura en x
}
Imprime en pantalla los valores que el programa asigna a x en este caso 100,
como dato tipo entero y despus vuelve a imprimir x pero sale un valor asignado a
x por que previamente ya se le haba asignado el valor de 100, el uso de unionsolo
perimte utilizar una casilla de espacio de memoria. De igual manera sucede con y.
CONCLUSIONES:
Moreno Prieto Vctor Mario
UNIONES
Es importante tambin conocer el tema de las uniones, son similares a las estructuras con
la nica diferencia de la palabra unin y de que nos ocupan la misma localidad de
memoria ya que se reparte la memoria
Luis Alberto Salazar Bravo
Union
Se puede concluir que una estructura union es muy similar a la de una estructura struct a
diferencia de que en ambas los miembros ocupan diferentes reas de memoria ya que en
las estructuras union los miembros de la clase ocupan una misma localidad de memoria.
lvarez Gmez Luis Alberto
Las uniones servan antes puesto que los equipos de cmputo contaban con muy poco espacio de
memoria, pero en la actualidad ya no se utilizan, puesto que es muy tardado e innecesario.
REFERENCIAS BIBLIOGRAFICAS:
Deitel, Harvey M. y Paul J. Deitel
Cmo programar en C++
Sexta edicin
Pearson Educacin, Mxico 2009
1112 pp.
Gary J. Bronson
C++ para ingeniera y ciencias
Segunda edicin
CengageLearning, Mxico 2010
826 pp.
Ernesto Pealoza Romero
Fundamentos de programacin C/C++
Cuarta edicin
Alfaomega grupo editor, Mxico 2004
550 pp.
http://es.slideshare.net/dmcuenca4/estructuras-y-uniones-en-c
CLASES:
Profesor: Torres Sabino Manuel
Grupo: 2AM2
Integrantes:
(class)
OBJETIVO:
El alumno deber desarrollar mltiples programas mediante el uso de clases, aplicando las
caractersticas principales como: operadores de mbito, funciones miembro,
constructores y destructores.
FUNDAMENTO TEORICO
CLASES (CLASS)
La clase puede definirse como la agrupacin o coleccin de objetos que comparten una
estructura comn y un comportamiento comn. Es una plantilla que contiene la
descripcin general de una coleccin de objetos. Consta de atributos y mtodos que
resumen las caractersticas y el comportamiento comunes de un conjunto de objetos.
Uno de los procesos ms comunes que los seres humanos empleamos para solucionar
problemas, es la clasificacin de los objetos dentro de categoras ms amplias que los
abarquen. Estas categoras de objetos reciben el nombre de clases. Una clase agrupa a
todos aquellos objetos que poseen caractersticas similares. Un objeto que pertenece a
una clase recibe el nombre de instancia.
La clasificacin de los objetos dentro de clases se obtiene relacionando aquellas
caractersticas comunes a los objetos. Cada clase debe de poseer un conjunto de
conocimientos que le permitan realizar las responsabilidades que le sean conferidas.
Cuando se enva un mensaje a una clase, sta determina cul de sus miembros tiene la
capacidad necesaria para resolver la tarea que le ha sido encomendada.
La clasificacin correcta de los objetos dentro de las clases, permite a los elementos de un
sistema orientado a objetos ser reutilizados en otros sistemas, adems de constituir
plataformas sobre las cuales uno puede construir un programa sin necesidad de partir de
la nada.
FClase<Nombre de la Clase>;
CLASE:
una clase es una plantilla para la creacin de objetos de datos segn un modelo
predefinido. Las clases se utilizan para representar entidades o conceptos, como los
sustantivos en el lenguaje. Cada clase es un modelo que define un conjunto de variables el estado, y mtodos apropiados para operar con dichos datos -el comportamiento. Cada
objeto creado a partir de la clase se denomina instancia de la clase.
Las clases son un pilar fundamental de la programacin orientada a objetos. Permiten
abstraer los datos y sus operaciones asociadas al modo de una caja negra. Los lenguajes
de programacin que soportan clases difieren sutilmente en su soporte para diversas
caractersticas relacionadas con clases. La mayora soportan diversas formas de herencia.
Muchos lenguajes tambin soportan caractersticas para proporcionar encapsulacin,
como especificadores de acceso.
OPERADOR DE AMBITO:
Qu es un operador de mbito?
En C++ solemos referirnos a dos tipos de mbitos: temporal y de acceso. As, el mbito
temporal indica el intervalo de tiempo en el que un objeto existe o es accesible. El mbito
de acceso nos dice desde donde es accesible.
Adems de los que pueden declararse explcitamente con la palabra clave namespace en
C++ existen mltiples espacios de nombres. El operador que aqu nos ocupa, debe su
nombre precisamente a que sirve como puente o camino para acceder a objetos que
momentneamente estn fuera de mbito. El operador :: de acceso a mbito o resolucin
de mbito, permite referenciar (acceder) a un tipo, objeto, funcin o enumerador incluso
si su identificador est oculto
Existen dos tipos de operador de acceso a mbito: unario y binario, que adoptan
respectivamente las siguientes sintaxis:
:: <objeto>
// Op. unario
FUNCIONES MIEMBRO:
Las funciones miembros de una clase slo pueden ser llamadas relativas a un objeto
especfico. Para llamar a una funcin miembro desde alguna parte del programa que se
encuentre fuera de la clase, se debe usar el nombre del objeto y el operador de
direcionamiento '.' ( punto ). Por ejemplo, lo siguiente llama a m_Renderizar() en el objeto
objeto1.
CRender objeto1, objeto2;
objeto1.m_Renderizar();
Mtodos:
En comparacin con la programacin tradicional, un mtodo es lo mismo que una
funcin cualquiera, salvo que como los mtodos se declaran para pertenecer a una
clase especfica, se dice que todos los mtodos de dicha clase son miembros de la
misma. Por lo dems, la declaracin y definicin de los mtodos es exactamente
igual que declarar y definir cualquier otra funcin.
Atributos:
CONSTRUCTORES:
Qu es un constructor?
Cada objeto o instancia de una clase debe ser creada explcitamente a travs de un
mtodo u operacin especial denominado Constructor. Los atributos de un objeto toman
valores iniciales dados por el constructor. Por convencin el mtodo constructor tiene el
mismo nombre de la clase y no se le asocia un modo de acceso (es pblico).
Algunos lenguajes proveen un mtodo constructor por defecto para cada clase y/o
permiten la definicin de ms de un mtodo constructor.
Qu es un destructor?
Los objetos que ya no son utilizados en un programa, ocupan intilmente espacio de
memoria, que es conveniente recuperar en un momento dado. Segn el lenguaje de
programacin utilizado esta tarea es dada al programador o es tratada automticamente
por el procesador o soporte de ejecucin del lenguaje.
En la notacin algortmica no tomaremos en cuenta ese problema de administracin de
memoria, por lo tanto no definiremos formas para destruir objetos. En cambio al utilizar
lenguajes de programacin si debemos conocer los mtodos destructores suministrados
por el lenguaje y utilizarlos a fin de eliminar objetos una vez no sean tiles.
////////////////////////////////////////////////////////
PROGRAMA 10. Calculo del rea de un rectngulo utilizando clases
PSEUDOCODIGO
SubProcesovoid<-rectangulo()
base=0
altura=0
Fin SubProceso
SubProceso x <- dimensiones ( b,h )
base = b;
altura = h;
Fin SubProceso
SubProceso x <- area ( )
return<-(base*altura)
Fin SubProceso
Proceso Area_de_rectangulo
x<-dimensiones(2,3)
Escribir "EL AREA DEL RECTANGULO ES:"
Escribir " ", x<-area()
FinProceso
DIAGRAMA DE CLASES
Rectangulo
-base : int
-altura : int
+Rectangulo ();
+dimensiones(int,int) : void
+area() : int
CODIGO
/*Programa 10
Programa que calcula el area de un rectangulo utilizando clases
ICA
2AM2
Programacin orientada a objetos
*/
#include<iostream>
#include<cstdio>
#include<cstdlib>
usingnamespacestd;
classrectangulo { //IMPLEMENTACION DE LA CLASE
private:
int base, altura; //ATRIBUTOS
public:
rectangulo (); //FUNCION CONSTRUCTORA
void dimensiones (int,int); //FUNCION MIEMBRO
intarea (); //FUNCION MIEMBRO
};
rectangulo :: rectangulo() //
{
base=altura=0; //INICIALIZACION DE DATOS MIEMBRO
}
voidrectangulo :: dimensiones(int b, int h)
{
base = b;
altura = h;
}
intrectangulo :: area()
{
return (base*altura);
}
///////////////////////////////////////////////
intmain ()
{
rectangulo x;
RESULTADOS
PSEUDOCODIGO
SubProcesovoid<- coche ()
modelo="Chevy 2010";
nopuertas=2;
potencia=100;
velmax=240.0;
velmin=5.0;
velact=60.0;
color="rojo";
Fin SubProceso
SubProcesovoid<- acelerar ( ace )
velact=ace;
Fin SubProceso
SubProcesovoid<- caracnuev(m,np,p,vma,vmi,va,c)
modelo=m;
nopuertas=np;
potencia=p;
velmax=vma;
velmin=vmi;
velact=va;
color=c;
Fin SubProceso
SubProcesovoid<- Imprim ( )
Escribir "Modelo: ",modelo
Escribir "No de puertas: ",nopuertas
Escribir "Velocidad maxima: ",velmax
Escribir "Velocidad minima: ",velmin
Escribir "Velocidad actual: ",velact
Escribir "Potencia: ",potencia
Escribir "Color: ",color
Fin SubProceso
Proceso CaracteristicasCoche
void<-Imprim ( )
Dimensionc[30],m[30]
DIAGRAMA DE CLASES
Coche
-NoPuertas : int
-Potencia : int
- velmax : float
-velmin : float
-velact :float
-color : char
-modelo : char
+coche();
+caracnuev(char*,int,int,float,float,float,char*):void
+acelerar(float) : float
+imprimir() : void
CODIGO
/*Programa 12
Programa que imprime las caracteristicas de un auto
ICA
2AM2
Programacin orientada a objetos
*/
#include<iostream>
#include<cstdio>
#include<cstdlib>
usingnamespacestd;
class coche{
private:
intnopuertas,potencia;
floatvelmax,velmin,velact;
char *color, *modelo;
public:
coche();
voidcaracnuev(char*,int,int,float,float,float,char*);
float acelerar(float);
void imprimir();
};
coche::coche(){
modelo="Chevy 2010";
nopuertas=2;
potencia=100;
velmax=240.0;
velmin=5.0;
velact=60.0;
color="rojo";
}
float coche::acelerar(floatace){
velact=ace;
}
void coche::caracnuev(char *m,intnp,intp,floatvma,floatvmi,floatva,char *c){
modelo=m;
nopuertas=np;
potencia=p;
velmax=vma;
velmin=vmi;
velact=va;
color=c;
}
void coche::imprimir(){
cout<<"\nModelo: "<<modelo;
cout<<"\nNo de puertas: "<<nopuertas;
cout<<"\nVelocidadmaxima: "<<velmax;
cout<<"\nVelocidadminima: "<<velmin;
cout<<"\nVelocidad actual: "<<velact;
cout<<"\nPotencia: "<<potencia;
cout<<"\nColor: "<<color;
}
intmain()
{
coche c1;
c1.imprimir();
floatvmax,vmin,va,ace;
intnp,p;
char c[30],m[30];
cout<<"\n\nIngreseaceleracion: "; cin>>ace;
c1.acelerar(ace);
c1.imprimir();
cout<<"\n\nIngrese nuevos datos:\n";
cout<<"Modelo: ";cin>>m;
cout<<"No. de puertas: ";cin>>np;
cout<<"Potencia: ";cin>>p;
cout<<"Vel. max: ";cin>>vmax;
cout<<"Vel. min: ";cin>>vmin;
cout<<"Vel. actual: ";cin>>va;
cout<<"Color: ";cin>>c;
c1.caracnuev(m,np,p,vmax,vmin,va,c);
c1.imprimir();
return 0;
}
RESULTADOS
2.- Ahora se observa que se imprimen de nuevo los mismos atributos con la nueva
velocidad actual que fue ingresada en la funcin acelerar, adems se solicitan
introducir nuevos datos en los atributos.
3.- Y por ultimo se observa la impresin de los nuevos valores en los atributos,
tambin se imprimen los primeros y segundos valores.
/////////////////////////////////////////////////////////////////////////////////
Cdigo
/*Programa 11
El area de tres tringulos, estructura tipo class
ICA
2AM2
Fundamentos de programacin orientada a objetos
*/
#include<iostream>
#include<cstdlib>
#include<cstdio>
usingnamespacestd;
class triangulo
{
public:
floata,b,c,h;
triangulo ();
floatarea ();
floatperimetro ();
float dimensiones (float, float, float, float);
};
triangulo::triangulo()
{
a=b=c=h=1;//Inicializa los valores en 1
}
float triangulo::area()
{
return((b*h)/2);//Realiza el calculo del area
}
float triangulo::perimetro()
{
return(a+b+c);//Realiza el calculo del perimetro
}
float triangulo::dimensiones( float w, float x, float y, float z)//Funcion en la que
asigna nuevos valores por teclado
{
a=w;
b=x;
c=y;
h=z;
cout<<"\n\n\t\tDame la base del triangulo : ";
cin>>b;
cout<<"\n\t\tDame la altura del triangulo : ";
cin>>h;
cout<<"\n\t\tDame el cateto A del triangulo : ";
cin>>a;
cout<<"\n\t\tDame el cateto B del triangulo : ";
cin>>c;
system("cls");
}
intmain()
{
floata,b,c,h;
Te pide que ingreses la base y altura del tringulo para calcular el rea
[(b*h)/2]
Al igual que te pide los otros catetos del tringulo para calcular el permetro
[cateto A + cateto B + base]
13.- Elevador
Elevator
+int n=1;
- intpiso_act;
+ Elevator (int n=1);
+ void solicitud (int);
Cdigo
/*Programa 13
Elevador
ICA
2AM2
Fundamentos de programacin orientada a objetos
Salazar Bravo Luis Alberto*/
#include<iostream>
#include<math.h>
#include<windows.h>
usingnamespacestd;
constint PISOMAX = 15;//Declara que 15 es un valor constante y que solo hay 15
pisos en el edificio
classElevator
{ private:
intpiso_act;
public:
Elevator (int n=1);//Se declara el piso en el que se va a empezar el recorrido (Piso
actual)
void solicitud (int);
};
Elevator::Elevator(intpisoa)
{
piso_act=pisoa;
}
voidElevator::solicitud(intpisonuevo)
{
//Si el piso nuevo es menor a uno o piso nuevo es mayor que el piso 15 o piso
nuevo es igual al actual
if(pisonuevo<1||pisonuevo>PISOMAX||pisonuevo==piso_act);//Si se cumple no
hacer nada
if (pisonuevo>piso_act&&piso_act<PISOMAX)//Condiciones de recorrido del
elevador
{
cout<<"\nEmpezando en el piso : "<<piso_act<<endl;//Empieza en el piso
while (pisonuevo>piso_act&&piso_act<PISOMAX)
{
piso_act ++;//El elevador va subiendo
cout<<"\nSe detiene en el piso : "<<piso_act<<endl;
Sleep(1000);
}
}
else
{
cout<<"\n\nEmpezando en el piso : "<<piso_act<<endl;
while(pisonuevo<piso_act&&piso_act>1)//Condiciones de recorrido del elevador
{
piso_act--;//El elevador va bajando
cout<<"\nVa para abajo, ahora esta en el piso : "<<piso_act<<endl;
Sleep(1000);
}
cout<<"\nSe detiene en el piso : "<<piso_act<<endl;
}
return;
}
intmain()
{
system("color 3f");
Elevator a;
intx,n;
do{
Beep(290,500);//Reproduce un sonido
cout<<"\nA que piso quieres ir? ";
cin>>x;
a.solicitud(x);
Beep(290,500);//Reproduce un sonido
cout<<"\nA que piso quieres ir? ";
cin>>x;
a.solicitud(x);
Beep(290,500);//Reproduce un sonido
cout<<"\n\nQuieres ir a otro piso?\n"
<<"Si es asi presiona cualquier numero\n"
Le dices el piso al que deseas ir, te lleva y te vuelve a preguntar a qu piso deseas
ir
///////////////////////////////////////////////////////////////////////////////////////////////
CONCLUSIONES:
Luis Alberto Salazar Bravo
Class
En conclusin una class se considera una agrupacin o coleccin de objetos que
comparten una estructura comn y un comportamiento comn que posteriormente los
objetos tendrn comportamientos respecto a las acciones declaradas en la clase.
Agiliza la programacin y es ms reducido el tiempo de programacin
Los operadores de mbito son dgitos dentro del cdigo ASCCI (. , ::) y existen dos tipos de
operador de acceso a mbito: unario y binario con los cuales sirven como puente o
camino para acceder a objetos
Los constructores permiten inicializar los datos miembro de las clases
Las clases en c++ son la base y son el principal tema para casi cualquier programa que
realicemos, ya que a partir de una clase de desarrollan todos los elementos del programa,
en los programas realizados, la mayor parte del programa (codigo) se desarrolla en las
clases y en las funciones de las clases.
REFERENCIAS BIBLIOGRAFICAS:
Deitel, Harvey M. y Paul J. Deitel
Cmo programar en C++
Sexta edicin
Pearson Educacin, Mxico 2009
1112 pp.
Gary J. Bronson
C++ para ingeniera y ciencias
Segunda edicin
CengageLearning, Mxico 2010
826 pp.
Ernesto Pealoza Romero
Fundamentos de programacin C/C++
Cuarta edicin
Alfaomega grupo editor, Mxico 2004
550 pp.