/*Crea un programa en C++ que haga lo siguiente:
1.- Permitir guardar 20 registros en una matriz; Nombre de película y año de lanzamiento.
2.- Un menú que nos va a dar tres opciones:
>> a) Mostrar películas desde las más viejas a las más nuevas.
>> b) Mostrar películas desde las más nuevas a las más viejas.
>> c) Mostrar películas de un año en concreto.
3.- Opción de regresar al menú o salir del programa.*/
#include <iostream>
#include<string.h>
#include <clocale>
using namespace std;
int main() {
setlocale(LC_CTYPE, "Spanish");
char nombrepeli[20][46], opcion='N', auxnombrepeli[20][46], decision='C';
int lan[20], aux1=0, contador=0, aux2=0, lan1;
for(int i=0; i<=19; i++){
fflush(stdin);
cout<<" Ingresa el nombre de la película "<<i+1<<": ";
cin.getline(nombrepeli[i], 46, '\n' );
cout<<"Ingresa el año de lanzamiento de la película "<<nombrepeli[i]<<": ";
cin>>lan[i];
cout<<endl;
}
cout<<"Las películas son: "<<endl;
for(int i=0; i<=19; i++){
cout<<nombrepeli[i]<<": "<<lan[i]<<endl;
}
{
do{
{
cout<<endl<<endl;
cout<<"¿Qué deseas hacer?: "<<endl<<endl;
cout<<" Si deseas mostrar las películas de las más antiguas a las más recientes, presiona la letra A"<<endl;
cout<<" Si deseas mostrar las películas de las más recientas a las más antiguas, presion la letra D "<<endl;
cout<<" Si deseas mostrar la película de un año en concreto, presiona L"<<endl;
cin>>opcion;
if(opcion=='A' || opcion=='a'){
for(int i=0; i<=19; i++){
for(int j=0; j<=19; j++){
if(lan[j]>lan[j+1]){
aux1=lan[j];
lan[j]=lan[j+1];
lan[j+1]=aux1;
contador=1;
if(contador==1){
strcpy(auxnombrepeli[0], nombrepeli[j]);
strcpy(nombrepeli[j], nombrepeli[j+1]);
strcpy(nombrepeli[j+1], auxnombrepeli[0]);
}
}
}
if(contador==0){
i=19;
}else{
contador=0;
}
}cout<<endl;
cout<<"Las películas en orden de lanzamiento desde el año más antiguo hasta el más reciente son: "<<endl<<endl;
for(int i=0; i<=19; i++){
cout<<nombrepeli[i]<<": "<<lan[i]<<endl;
}
}
if(opcion=='D' || opcion=='d'){
for(int i=0; i<=19; i++){
for(int j=0; j<=19; j++){
if(lan[j]>lan[j+1]){
aux1=lan[j];
lan[j]=lan[j+1];
lan[j+1]=aux1;
contador=1;
if(contador==1){
strcpy(auxnombrepeli[0], nombrepeli[j]);
strcpy(nombrepeli[j], nombrepeli[j+1]);
strcpy(nombrepeli[j+1], auxnombrepeli[0]);
}
}
}
if(contador==0){
i=19;
}else{
contador=0;
}
}cout<<"Las películas en orden de lanzamiento desde el año más reciente hasta el más antiguo son: "<<endl<<endl;
for(int i=19; i>=0; i--){
cout<<nombrepeli[i]<<": "<<lan[i]<<endl;
}
}
if(opcion=='L' || opcion=='l'){
for(int i=0; i<=0; i++){
cout<<"Ingresa el año para mostrar el nombre de la película que se lanzó en esa fecha: "<<endl;
cin>>lan1;
}
for(int i=0; i<=19; i++)
if(lan1==lan[i]){
aux2=lan1;
lan1=lan[i];
lan[i]=aux2;
cout<<nombrepeli[i]<<" = "<<lan[i]<<endl;
}
}else{
cout<<"El dato ingresado no corresponde a ninguna película de la lista"<<endl;
} cout<<endl<<endl;
}
cout<<"Si desea regresar al menú haz click en R, si desea salir haz click en S: "<<endl;
cin>>decision;
}
while (decision=='R'||decision=='r');
cout<<endl;
cout<<"Perfecto, nos alegró ayudarte"<<endl;
cout<<endl;
}
return 0;
}