Вы находитесь на странице: 1из 6

#include "stdafx.

h"
#include <iostream>
using namespace std;
// clase Punto
class Punto{
private:
double x, y;
public:
// funcionalidad basica
double getX(){ return x;}
double getY(){ return y;}
void setX(double nx){ x = nx;}
void setY(double ny){ y = ny;}
// funcionalidad adicional
double distancia(){
return sqrt(pow(x,2)+pow(y,2));
}
void lee(){
// ingresa coordenadas
cout<<"Ingrese x: "; cin>>x;
cout<<"Ingrese y: "; cin>>y;
}
void muestra(){
// muestra coordenadas y distancia
cout<<"resultados:"<<endl;
cout<<"X : "<<getX()<<endl;
cout<<"Y : "<<getY()<<endl;
cout<<"Distancia : "<<distancia()<<endl;
}
};
void main(){
// declara objeto
Punto a[10]; // ARREGLO DE OBJETOS DE TAMAO 10
// lee datos para los 10 objetos
for(int i=0; i<10; i++){
cout<<"Datos para el objeto: "<<i<<": "<<endl;
a[i].lee();
}
// muestra datos de los 10 objetos en forma de tabla
printf("Nro.\tX\tY\tDistancia\n");
for(int i=0; i<10; i++)
printf("%d\t%0.2f\t%0.2f\t%0.2f\n",i,a[i].getX(),a[i].getY(),a[i].distancia());
_gettch();
}

Para printf %d entero

%f float

Plantilla para su practica calificada nro. 3


/*
PROBLEMA 3a:
Disee una clase de nombre TV que tenga como atributos nmero de serie, marca, tamao y
precio en dlares, con la funcionalidad bsica y los siguientes mtodos/funciones adicionales.
a) Que retorne el precio en soles de acuerdo al tipo de cambio dado como parmetro.
b) Retorne el nombre de la marca (SONIC, LG, SAMSUNG, PANASONIC, OTRO).
Disee una clase administradora ArregloTV que permita agregar,
obtener, eliminar, buscar
Disee una clase de gestion GestionaTV que permita utilizar las
funciones de la clase administradora a traves de una funcion menu
En la funcion main() solamente declare un objeto de la clase
de gestion y llame a su funcion principal.
*/
"stdafx.h"
#include <iostream>
using namespace std;
class TV{
protected:
char serie[15];
int marca, tamao;
double precio;
public:
char * getSerie(){ return serie;}
int getMarca(){ return marca;}
int getTamao(){ return tamao;}
double getPrecio(){ return precio;}
void setSerie(char * serie){
strcpy(this->serie,serie);
}
void setMarca(int marca){
TV::marca = marca;
}
void setTamao(int tamao){
TV::tamao = tamao;
}
void setPrecio(double precio){
TV::precio = precio;

}
// funciones adicionales
double precioSoles(double tc){
return precio * tc;
}
char * nombreMarca(){
switch(marca){
case 1: return "Sonic";
case 2: return "LG";
case 3: return "Samsung";
case 4: return "Panasonic";
default: return "Otro";
}
}
};
// clase administradora
class ArregloTV{
protected:
TV a[10];// arreglo de objetos tipo TV
int n; // contador
public:
ArregloTV(){
n=0;
}
void agrega(TV t){
a[n] = t;
n++;
}
TV obtiene(int i){
return a[i];
}
int tamao(){ return n;}
int busca(char * serie){
for(int i=0; i<n; i++){
if(strcmp(a[i].getSerie(),serie)==0)
return i; // posicion encontrada
}
return -1; // no lo encuentra
}
void elimina(int p){
for(int i=p; i<n-1; i++)
a[i] = a[i+1];

n--;
}
};
// clase de gestion con menu de opciones
class GestionaTV{
protected:
ArregloTV atv;
public:
int menu();
void nuevo();
void consulta();
void elimina();
void listar1();
void listar2();
void listar3();
void principal();
};
int GestionaTV::menu(){
int opcion;
cout<<"MENU DE OPCIONES: "<<endl;
cout<<"[1] Nuevo "<<endl;
cout<<"[2] Consulta "<<endl;
cout<<"[3] Elimina "<<endl;
cout<<"[4] Lista 1 "<<endl;
cout<<"[5] Lista 2 "<<endl;
cout<<"[6] Lista 3 "<<endl;
cout<<"[0] Fin "<<endl;
cout<<"Ingrese su opcion: ";
cin>>opcion;
return opcion;
}
void GestionaTV::nuevo(){
}
void GestionaTV::consulta(){
}
void GestionaTV::elimina(){

}
void GestionaTV::listar1(){
}
void GestionaTV::listar2(){
}
void GestionaTV::listar3(){
}
void GestionaTV::principal(){
int op;
do{
op=menu();
switch(op){
case 1:
nuevo();
break;
case 2:
consulta();
break;
case 3:
elimina();
break;
case 4:
listar1();
break;
case 5:
listar2();
break;
case 6:
listar3();
break;
}
}while(op!=0);
}
void main()
{
GestionaTV gtv;
gtv.principal();
}

Вам также может понравиться