Unión y Concatenación

Código

#include <iostream>           
#include<stdio.h>            
#include<stdlib.h>
#include<string.h>
using namespace std;

char Concatenar(char A[], char B[]);
void Op_Letra(char A[],char B[], int, int);
double Op_Numero(int A[], int B[], int, int);

int main(int argc, char** argv) {
      int num_elem;    
            int tip_lenguaje;

            cout<<"Tipo de Lenguaje: "<<endl;
            cout<<"1.- Letras"<<endl;
            cout<<"2.- N\xa3meros"<<endl;
            cout<<"Elige una opci\xa2n: ";
            cin>>tip_lenguaje;
            if(tip_lenguaje == 1){
                  int elem_A,elem_B;
                  cout<<"\nN\xa3mero de Elementos del Conjunto A: ";
                  cin>>elem_A;
                  cout<<"N\xa3mero de Elementos del Conjunto B: ";
                  cin>>elem_B;
                  char conjunto_A[elem_A],conjunto_B[elem_B];
                  cout<<"\n*Ingrese los elementos separados por un espacio*"<<endl;
                  cout<<"\nIngrese los Elementos del Conjunto A: ";
                  for(int i=0; i<elem_A; i++){
                        cin>>conjunto_A[i];
                  }
                  cout<<"Ingrese los Elementos del Conjunto B: ";
                  for(int j=0; j<elem_B; j++){
                        cin>>conjunto_B[j];
                  }
                  cout<<"\nConjunto A = {";
                  for(int k=0; k<elem_A; k++){
                        cout<<conjunto_A[k]<<",  ";
                  }
                  cout<<"}";
                  cout<<endl;
                  cout<<"Conjunto B = {";
                  for(int l=0; l<elem_B; l++){
                  cout<<conjunto_B[l]<<",  ";
                  }
                  cout<<"}";
                  Op_Letra(conjunto_A,conjunto_B,elem_A,elem_B);
                  }
            if(tip_lenguaje == 2){
                             int elem_A,elem_B;
                  cout<<"\nIntroduzca N\xa3meros mayores a 0"<<endl;
                  cout<<"\nN\xa3mero de Elementos del Conjunto A: ";
                  cin>>elem_A;
                  cout<<"N\xa3mero de Elementos del Conjunto B: ";
                  cin>>elem_B;
                  int conjunto_A[elem_A],conjunto_B[elem_B];
                  cout<<"\n*Ingrese los elementos separados por un espacio*"<<endl;
                  cout<<"\nIngrese los Elementos del Conjunto A: ";
                  for(int i=0; i<elem_A; i++){
                        cin>>conjunto_A[i];
                        if(conjunto_A[i]<1){
                             cout<<"La cadena inica con 0, Ingrese otra..."<<endl;
                             cin>>conjunto_A[i];
                        }
                  }
                  cout<<"Ingrese los Elementos del Conjunto B: ";
                  for(int j=0; j<elem_B; j++){
                        cin>>conjunto_B[j];
                        if(conjunto_B[j]<1){
                             cout<<"La cadena inicia en 0, Ingrese otra..."<<endl;
                             cin>>conjunto_B[j];
                        }    
                  }
                  cout<<"\nConjunto A = {";
                  for(int k=0; k<elem_A; k++){
                  cout<<conjunto_A[k]<<",  ";
                  }
                  cout<<"}";
                  cout<<endl;
                  cout<<"Conjunto B = {";
                  for(int l=0; l<elem_B; l++){
                  cout<<conjunto_B[l]<<",  ";
                  }
                  cout<<"}";
                  cout<<Op_Numero(conjunto_A,conjunto_B,elem_A,elem_B);
            }
            cout<<endl;
            system("pause");
      return 0;
}

void Op_Letra(char A[], char B[],int elem_A, int elem_B){
      cout<<endl<<endl;
      int cont=0;
      cout<<"Concatenaci\xa2n = { ";
      while(cont != elem_A){ 
            for (int b=0; b<elem_B; b++){
                  cout<<A[cont]<<B[b]<<", ";
            }
            cont++;
      }
      cout<<"}"; 
      int mayor;
      if(elem_A<=elem_B){
            mayor=elem_B;
      }
      else{
            mayor=elem_A;
      }
      int numero=0;
      while(numero!=mayor){
            for (int d=0; d<mayor; d++){
                  if(A[numero]== B[d]){
                        B[d]=0;
                  }
            }numero++;
      }
      cout<<endl;
      cout<<"\nUni\xa2n = { ";
            for(int i=0; i<elem_A; i++){
                  cout<<A[i];
                  cout<<", ";
            }
            for(int j=0; j<elem_B; j++){
                  cout<<B[j];
                  cout<<", ";      
            }
            cout<<"}";
}

double Op_Numero(int A[],int B[],int elem_A,int elem_B){
      cout<<endl<<endl;
      int cont=0;
      cout<<"Concatenaci\xa2n = { ";
      while(cont != elem_A){
            for (int b=0; b<elem_B; b++){
                  cout<<A[cont]<<B[b]<<", ";
            }
            cont++;
      }
      cout<<"}"; 
      int mayor;
      if(elem_A<=elem_B){
            mayor=elem_B;
      }
      else{
            mayor=elem_A;
      }
      int numero=0;
      while(numero != mayor){
            for (int d=0; d<mayor; d++){
                  if(A[numero]== B[d]){
                        B[d]=0;
                  }
            }
            numero++;
      }
      cout<<endl;
      cout<<"\nUni\xa2n = { ";
            for(int i=0; i<elem_A; i++){
                  cout<<A[i];
                  cout<<", ";
            }
            for(int j=0; j<elem_B; j++){
                  cout<<B[j];
                  cout<<", ";      
            }
            cout<<"}";

}

Pantalla de Salida



No hay comentarios:

Publicar un comentario