Ir al contenido principal

Programacion: Arreglos con estructuras - ordenamientos

1.- Se pide realizar un ordenamiento de artículos, para ello se debe ingresar n artículos y ordenarlos por su monto de inversión.

struct articulo
{char codigo[10];
 char producto[20];
 float preciocompra;
 float monto;
 int cantidad;
 }


#include<iostream.h>
#include<string.h>
#include<conio.h>
#define MAX 50
struct articulo
{char codigo[10];
 char producto[20];
 float preciocompra;
 float monto;
 int cantidad;
 };
 void leer(int, struct articulo[]);
 void montodeinversion(int, struct articulo[]);
 void ordenmonto(int, struct articulo[]);
 void listado(int, struct articulo[]);
 void main()
 {int n;
  struct articulo Art[MAX];
  cout<<"Cantidad de articulos que desea poner:";
  cin>>n;
  leer(n,Art);
  montodeinversion(n,Art);
  ordenmonto(n,Art);
  cout<<"productos ordenados por su cantidad de monto mayor:"<<endl;
  listado(n,Art);
  getch();
  }
  void leer(int n, struct articulo x[])
  {int i;
   for(i=0;i<n;i++)
   {cout<<"codigo:"; cin>>x[i].codigo;
    cout<<"producto:"; cin>>x[i].producto;
    cout<<"precio:"; cin>>x[i].preciocompra;
    cout<<"cantidad:"; cin>>x[i].cantidad;
    }
    getch();
  }
  void montodeinversion(int n, struct articulo x[])
  {int i;
  for(i=0;i<n;i++)
  x[i].monto=x[i].preciocompra*x[i].cantidad;
  getch();
  }

  void ordenmonto(int n, struct articulo x[])
  {int i,j;
   struct articulo temp;
   for(i=0;i<n;i++)
    for(j=n-1;j>i;j--)
     if((x[j-1].monto,x[j].monto)>0)
     {temp=x[j-1];
      x[j-1]=x[j];
      x[j]=temp;
      }
      getch();
  }

  void listado(int n, struct articulo x[])
  {int i;
   for(i=0;i<n;i++)
   {cout<<x[i].codigo<<"\t";
    cout<<x[i].producto<<"\t";
    cout<<x[i].monto<<endl;
    }
    getch();
  }



Comentarios

Entradas más populares de este blog

Lenguaje de Programacion en Java: Ecuación de primer grado

public class Main {     public static void main(String[] args) {         float x,a,e;                   Scanner teclado = new Scanner(System.in);         System.out.println("Coeficiente de X:");         x=teclado.nextInt();         System.out.println("Término independiente:");         a=teclado.nextInt();         if(a==0)           System.out.println("No es una ecuación de primer grado");           else         {              e=-a/x;              System.out.println("La raíz es=" +e);         }                                     } ...

Programacion: Arbol binario - Programacion en c++

1.- Hacer un programa que permita buscar un elemento, el elemento mayor, el elemento menor y el menor de los mayores de un árbol binario. #include <iostream.h> #include <conio.h> struct nodo     {      int valor;      struct nodo* izq;      struct nodo* der;     }; typedef struct nodo *ABB; void inserta(ABB& ,int); void preorden(ABB); void postorden(ABB); void enorden(ABB); void verarbol(ABB,int); int buscar(ABB,int); int buscarmayor(ABB); int buscarmenor(ABB); void podar(ABB&,int); void main() { ABB arbol=NULL; ABB subarbol=NULL; int n,x,opc,a;   do     {      cout<<"menu principal"<<endl;      cout<<"1.ingresar elementos"<<endl;      cout<<"2.pre orden"<<endl;      cout<<"3.mostrar hojas"<...