Universidad Nacional Experimental “Francisco de Miranda”
Área Ciencias de la Educación
Aprendizaje Dialógico Interactivo
Unidad Curricular: Computación II
Realizado por:
Omar Petit
C.I.: 17.178.365
Santa Ana de Coro, Mayo de 2013
Una librería estima los precios de sus N libros de
la siguiente forma: el precio básico del libro es
de 5000Bs más 300Bs por página. Sin embargo
si el número de páginas excede de 300, el precio
sufrirá un recargo adicional de 4000Bs. además
si el número de páginas excede de 550 el precio
se incrementará en otros 6000Bs más. Se tiene
un conjunto de registros cada uno de los cuales
contiene el código de un libro y el número de
páginas. Se requiere calcular e imprimir el
código y el precio de cada uno de los libros.
Np > 550 –
R= 6000
bs
Np > 300 –
R= 4000 bs
Pb=5000 bs
+ 300 bs pp
Imprimir el
código y precio
de cada libro
#include <iostream>
#include <stdlib.h>
using namespace std;
void validar (int *);
void registrar (int);
void listar ();
typedef int enteros;
struct {
char codigo[50];
int npaginas;
float precio;
}libros[1000];
Librería
Funciones
cambiamos a través del
typedef el tipo de dato int
por enteros.
Declaración de la variable
estructura
enteros n, *p;
int main (){
int opcion;
menu:
system("cls");
cout<<"Libreria UNEFM"<<endl;
cout<<"Menu de opciones : "<<endl;
cout<<"1. Ingresar Libros a la base de datos"<<endl;
cout<<"2. Imprimir listado"<<endl;
cout<<"3. Salir"<<endl;
cout<<"Opcion: ";
cin>>opcion;
Menu del programa
switch (opcion){
case 1:
system("cls");
cout<<" REGISTRAR LIBROS nn";
cout<<"Ingrese N libros: ";
cin>>n;
p=&n;
validar(p); // llamado a la funcion validar
registrar(n); // llamado a la funcion registrar
goto menu; // ir a menu:
break;
case 2:
listar(); // llamado a la funcion listar
system("pause");
goto menu; // ir a menu
break;
case 3:
exit (1); // exit, cuando posee el parametro "1" se sale del programa.
system("pause");
break;
default:
cout<<"Opcion incorrecta, vuelva a intentarlo"<<endl;
system("pause");
goto menu; // ir a menu
break;
}
system("pause");
return 0;
estructura Switch, esta permite crear el
menu, se crearon 4 casos, el primero
para ingresar los datos de los libros, la
segunda para listarlos, la tercera para
cerrar el programa y el cuarto como
opcion default en caso de que el usuario
introduzca un dato incorrecto.
void registrar(int n){
for(int i=0;i<n;i++)
{
libros[i].
cout<<"nLibro "<<i+1<<endl;
cout<<"Codigo del libro: ";
cin>>libros[i].codigo;
cout<<"Numero de paginas: ";
cin>>libros[i].npaginas;
cout<<"n";
}
}
Funcion registrar, esta funcion
usa un ciclo for para recorrer e
ir llenando los valores del
arreglo estructurado .
Aquí usamos arreglos
Atrás
void listar (){
system("cls");
cout<<"LISTAR LIBROS nn";
for(int i=0;i<n;i++)
{
cout<<"Libro"<<i+1<<endl;
cout<<"Codigo del libro: "<<libros[i].codigo<<endl;
if(libros[i].npaginas<=300)
{
libros[i].precio=5000+(libros[i].npaginas*300);
cout<<"Precio : "<<libros[i].precio<<"nn";
}
if (libros[i].npaginas>300 && libros[i].npaginas<550)
{
libros[i].precio=9000+(libros[i].npaginas*300);
cout<<"Precio : "<<libros[i].precio<<"nn";
}
if (libros[i].npaginas>550)
{
libros[i].precio=11000+(libros[i].npaginas*300);
cout<<"Precio : "<<libros[i].precio<<"nn";
}
}
}
Esta funcion al igual que la funcion
registrar, emplea un ciclo for, pero en
este caso para leer los datos guardados
en el arreglo estructurado, libro [i]. Se
crearon varias condiciones para validar el
numero de paginas de los libros y sus
precios.
Atrás
void validar ( int *p ){
if (*p<=0){
cout<<"Dato invalido"<<endl;
cout<<"Ingrese N libros:"<<endl;
cin>>n;
p=&n;
validar (p);
}
}
se hace uso de una función
recursiva a través del empleo de
punteros para validar que n
libros, no sea menor o igual a
cero. Se envía el valor de n a
través del puntero p, si este es
menor o igual a cero se vuelve a
solicitar el dato y se vuelve a
llamar la función dentro de ella
misma, esto permite crear una
especie de bucle, que no finaliza
hasta que se introduzca el dato
correcto.
Atrás
Presentacion proyecto final

Presentacion proyecto final

  • 1.
    Universidad Nacional Experimental“Francisco de Miranda” Área Ciencias de la Educación Aprendizaje Dialógico Interactivo Unidad Curricular: Computación II Realizado por: Omar Petit C.I.: 17.178.365 Santa Ana de Coro, Mayo de 2013
  • 2.
    Una librería estimalos precios de sus N libros de la siguiente forma: el precio básico del libro es de 5000Bs más 300Bs por página. Sin embargo si el número de páginas excede de 300, el precio sufrirá un recargo adicional de 4000Bs. además si el número de páginas excede de 550 el precio se incrementará en otros 6000Bs más. Se tiene un conjunto de registros cada uno de los cuales contiene el código de un libro y el número de páginas. Se requiere calcular e imprimir el código y el precio de cada uno de los libros.
  • 3.
    Np > 550– R= 6000 bs Np > 300 – R= 4000 bs Pb=5000 bs + 300 bs pp Imprimir el código y precio de cada libro
  • 4.
    #include <iostream> #include <stdlib.h> usingnamespace std; void validar (int *); void registrar (int); void listar (); typedef int enteros; struct { char codigo[50]; int npaginas; float precio; }libros[1000]; Librería Funciones cambiamos a través del typedef el tipo de dato int por enteros. Declaración de la variable estructura
  • 5.
    enteros n, *p; intmain (){ int opcion; menu: system("cls"); cout<<"Libreria UNEFM"<<endl; cout<<"Menu de opciones : "<<endl; cout<<"1. Ingresar Libros a la base de datos"<<endl; cout<<"2. Imprimir listado"<<endl; cout<<"3. Salir"<<endl; cout<<"Opcion: "; cin>>opcion; Menu del programa
  • 6.
    switch (opcion){ case 1: system("cls"); cout<<"REGISTRAR LIBROS nn"; cout<<"Ingrese N libros: "; cin>>n; p=&n; validar(p); // llamado a la funcion validar registrar(n); // llamado a la funcion registrar goto menu; // ir a menu: break; case 2: listar(); // llamado a la funcion listar system("pause"); goto menu; // ir a menu break; case 3: exit (1); // exit, cuando posee el parametro "1" se sale del programa. system("pause"); break; default: cout<<"Opcion incorrecta, vuelva a intentarlo"<<endl; system("pause"); goto menu; // ir a menu break; } system("pause"); return 0; estructura Switch, esta permite crear el menu, se crearon 4 casos, el primero para ingresar los datos de los libros, la segunda para listarlos, la tercera para cerrar el programa y el cuarto como opcion default en caso de que el usuario introduzca un dato incorrecto.
  • 7.
    void registrar(int n){ for(inti=0;i<n;i++) { libros[i]. cout<<"nLibro "<<i+1<<endl; cout<<"Codigo del libro: "; cin>>libros[i].codigo; cout<<"Numero de paginas: "; cin>>libros[i].npaginas; cout<<"n"; } } Funcion registrar, esta funcion usa un ciclo for para recorrer e ir llenando los valores del arreglo estructurado . Aquí usamos arreglos Atrás
  • 8.
    void listar (){ system("cls"); cout<<"LISTARLIBROS nn"; for(int i=0;i<n;i++) { cout<<"Libro"<<i+1<<endl; cout<<"Codigo del libro: "<<libros[i].codigo<<endl; if(libros[i].npaginas<=300) { libros[i].precio=5000+(libros[i].npaginas*300); cout<<"Precio : "<<libros[i].precio<<"nn"; } if (libros[i].npaginas>300 && libros[i].npaginas<550) { libros[i].precio=9000+(libros[i].npaginas*300); cout<<"Precio : "<<libros[i].precio<<"nn"; } if (libros[i].npaginas>550) { libros[i].precio=11000+(libros[i].npaginas*300); cout<<"Precio : "<<libros[i].precio<<"nn"; } } } Esta funcion al igual que la funcion registrar, emplea un ciclo for, pero en este caso para leer los datos guardados en el arreglo estructurado, libro [i]. Se crearon varias condiciones para validar el numero de paginas de los libros y sus precios. Atrás
  • 9.
    void validar (int *p ){ if (*p<=0){ cout<<"Dato invalido"<<endl; cout<<"Ingrese N libros:"<<endl; cin>>n; p=&n; validar (p); } } se hace uso de una función recursiva a través del empleo de punteros para validar que n libros, no sea menor o igual a cero. Se envía el valor de n a través del puntero p, si este es menor o igual a cero se vuelve a solicitar el dato y se vuelve a llamar la función dentro de ella misma, esto permite crear una especie de bucle, que no finaliza hasta que se introduzca el dato correcto. Atrás