#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct divisa{
char codigo[3];
char descrip[50];
char pais[20];
float valor;
}divisa[101];
void agregar(int cont){
printf("::::: Casa de Cambio (Opcion: Agregar):::::\n");
printf("Codigo:");
scanf("%s",divisa[cont].codigo);
printf("Descripccion:");
scanf("%s",divisa[cont].descrip);
printf("Pais:");
scanf("%s",divisa[cont].pais);
printf("Valor:");
scanf("%f",divisa[cont].valor);
}
void listard(int cont){
char temp;
int i, j, res;
for(i=0; i<=100; i++){
for(j=0; j<=cont; j++){
res=strcmp(divisa[j].descrip, divisa[j+1].descrip);
if(res == 1){
divisa[j] = divisa[101];
divisa[j] = divisa[j+1];
divisa[j+1] = divisa[101];
}
}
}
printf("Codigo\t Descripccion\t Pais\t Valor\t\n");
for(i=0; i<=cont;i++){
printf("%s\t %s\t %s\t %f\t\n",divisa[i].codigo, divisa[i].descrip, divisa[i].pais, divisa[i].valor);
}
printf("\n\n");
}
void listarv(int cont){
char temp;
int i, j, res;
for(i=0; i<=100; i++){
for(j=0; j<=cont; j++){
if(divisa[j].valor > divisa[j+1].valor){
divisa[j] = divisa[101];
divisa[j] = divisa[j+1];
divisa[j+1] = divisa[101];
}
}
}
printf("Codigo\t Descripccion\t Pais\t Valor\t\n");
for(i=0; i<=cont;i++){
printf("%s\t %s\t %s\t %f\t\n",divisa[i].codigo, divisa[i].descrip, divisa[i].pais, divisa[i].valor);
}
printf("\n\n");
}
void menu () {
printf("::::: Casa de Cambio :::::\n");
printf("1) Administrador\n");
printf("2) Conversor\n");
printf("3) Salir\n");
printf("Seleccione una opcion: ");
}
void clear () {
system("cls");
}
void menu2 () {
printf("::::: Casa de Cambio (Opcion: Administrador) :::::\n");
printf("1) Listado de divisas (Descripcion)\n");
printf("2) Listado de divisas (Valor)\n");
printf("3) Agregar\n");
printf("4) Modificar\n");
printf("5) Borrar\n");
printf("6)Regresar al menu anterior\n");
printf("Seleccione una opcion: ");
}
int main () {
char buscar[3];
int cont=1,x ,y;
do{
clear();
menu();
scanf("%i",&x);
switch (x){
case 1:
do{
clear();
menu2 ();
scanf("%i", &y);
switch (y){
case 1:
clear();
listard(cont);
system("pause");
break;
case 2:
clear();
listarv(cont);
system("pause");
break;
case 3:
clear();
agregar(cont);
cont++;
break;
case 4:
break;
case 5:
break;
}
}while (y!=6);
break;
case 2:
printf("caso 2");
break;
}
} while (x!=3);
return 0;
}