Advertisement
Guest User

Untitled

a guest
Oct 21st, 2019
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.78 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. typedef struct FechaPublicacion{
  5.     int dia;
  6.     int mes;
  7.     int anio;
  8. }Fecha;
  9.  
  10. typedef struct MercadoLibre{
  11.     char Sitio[100];
  12.     char NombreProducto[100];
  13.     char Categoria[100];
  14.     float Precio;
  15.     char Pago;
  16.     float Descuento;
  17.     int Stock;
  18.     Fecha Publicacion;
  19. }datos;
  20.  
  21. datos cargarDatos(){
  22.     datos retorno;
  23.     printf("Ingrese la dirección url del sitio.\n");
  24.     gets(retorno.Sitio);
  25.     printf("Ingrese el nombre del producto.\n");
  26.     gets(retorno.NombreProducto);
  27.     printf("Ingrese la categoría del producto.\n");
  28.     gets(retorno.Categoria);
  29.     printf("Ingrese el precio del producto.\n");
  30.     scanf("%f", &retorno.Precio);
  31.     printf("Ingrese la forma de pago (Efectivo=E/Tarjeta=T).\n");
  32.     scanf(" %c", &retorno.Pago);
  33.     printf("Ingrese el descuento correspondiente.\n");
  34.     scanf("%f", &retorno.Descuento);
  35.     printf("Ingrese la cantidad de productos en Stock.\n");
  36.     scanf("%d", &retorno.Stock);
  37.     printf("Ingrese la fecha de publicación del producto (formato dd/mm/aaaa).\n");
  38.     scanf("%d/%d/%d", &retorno.Publicacion.dia, &retorno.Publicacion.mes, &retorno.Publicacion.anio);
  39.     return retorno;
  40. }
  41.  
  42. void mostrarDatos(datos *Producto){
  43.     printf("url: %s\n", Producto->Sitio);
  44.     printf("Producto: %s\n", Producto->NombreProducto);
  45.     printf("Categoria: %s\n", Producto->Categoria);
  46.     printf("Precio: %.2f\n", Producto->Precio);
  47.     printf("Pago: %c\n", Producto->Pago);
  48.     printf("Descuento: %.2f\n", Producto->Descuento);
  49.     printf("Stock: %d\n", Producto->Stock);
  50.     printf("Fecha Publicacion: %d/%d/%d\n", Producto->Publicacion.dia,Producto->Publicacion.mes,Producto->Publicacion.anio);
  51. }
  52.  
  53. void modificarPrecio(float *precio, int *stock){
  54.     if(*stock<3) (*precio)*=1.1;
  55.     else if(*stock>4) (*precio)*=0.85;
  56. }
  57.  
  58. int i=1;
  59.  
  60. void cargarProductos(datos *arreglo){
  61.     char opcion = 'S';
  62.     while(opcion=='S'){
  63.         printf("Ingrese los datos del producto %d.\n", i);
  64.         *arreglo = cargarDatos();
  65.         printf("¿Desea ingresar los datos de otro producto? S/N\n");
  66.         scanf(" %c", &opcion);
  67.         i++;
  68.         arreglo++;
  69.     }
  70. }
  71.  
  72. void mostrarProductos(datos *arreglo){
  73.     int j=0;
  74.     while(j<i-1){
  75.         printf("Datos del producto %d.\n", j+1);
  76.         mostrarDatos(arreglo);
  77.         j++;
  78.         arreglo++;
  79.     }
  80. }
  81.  
  82. int computacion(datos *arreglo){
  83.     int k=0, cantidad=0;
  84.     while(k<i-1){
  85.         if(strcmp(arreglo->Categoria, "computacion") == 0){
  86.             cantidad++;
  87.         }
  88.         k++;
  89.         arreglo++;
  90.     }
  91.     return cantidad;
  92. }
  93.  
  94. int main(void){
  95.   int cantidad;
  96.     datos PRODUCTOS[1000];
  97.     cargarProductos(PRODUCTOS);
  98.   mostrarProductos(PRODUCTOS);
  99.   cantidad = computacion(PRODUCTOS);
  100.     printf("La cantidad de productos de la categoria Computacion son: %d",cantidad);
  101.     //datos producto = cargarDatos();
  102.     //modificarPrecio(&producto.Precio, &producto.Stock);
  103.     //printf("Precio final: %f", producto.Precio);
  104.     //mostrarDatos(&producto);
  105.     return 0;
  106. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement