# intercalacion simple

• ### Pregunta

• ``este es el codigo quisiera su ayuda  ingresar datos no aleatorios y para guardar los resultados en una tercer matrizusing System;using System.Collections.Generic;using System.Text;namespace ConsoleApplication1{    class Intercalacion_Simple    {        public int[] A;        public int[] B;        int[] C;        int[] TempA;        int[] TempB;        int N = 10;        int M = 10;        int i, j, x, w;        int I, J, K, X;        public Intercalacion_Simple()        {            A = new int[N];            B = new int[M];            C = new int[A.Length+B.Length];            TempA = new int[A.Length];            TempB = new int[B.Length];        }        public void Generar()        {            Random Aleatorio = new Random();            for (int i = 0; i < N; i++)            {                A[i] = Aleatorio.Next(10, 99);                TempA[i] = A[i];            }            for (int i = 0; i < M; i++)            {                B[i] = Aleatorio.Next(10, 99);                TempB[i] = B[i];            }        }        public void quicksortA(int L, int R)        {            i = L;            j = R;            x = A[(L + R) / 2];            do            {                while (A[i] < x)                    i = i + 1;                while (x < A[j])                    j = j - 1;                if (i <= j)                {                    w = A[i];                    A[i] = A[j];                    A[j] = w;                    i = i + 1;                    j = j - 1;                }            } while (i < j);            if (L < j)                quicksortA(L, j);            if (i < R)                quicksortA(i, R);        }        public void quicksortB(int L, int R)        {            i = L;            j = R;            x = B[(L + R) / 2];            do            {                while (B[i] < x)                    i = i + 1;                while (x < B[j])                    j = j - 1;                if (i <= j)                {                    w = B[i];                    B[i] = B[j];                    B[j] = w;                    i = i + 1;                    j = j - 1;                }            } while (i < j);            if (L < j)                quicksortB(L, j);            if (i < R)                quicksortB(i, R);        }        public void Intercalar()        {            I = 0;            J = 0;            K = 0;            X = 0;            while (I < N && J < M)            {                if (A[I] <= B[J])                {                    C[K] = A[I];                    I = I + 1;                    K = K + 1;                }                else                {                    C[K] = B[J];                    J = J + 1;                    K = K + 1;                }            }            if (I > N)            {                for (X = J; X < M; X++)                {                    C[K] = B[X];                    K = K + 1;                }            }            else            {                for (X = I; X < N; X++)                {                    C[K] = A[X];                    K = K + 1;                }            }        }        public void DesplegarDesA()        {            int Cont = 1;            Console.Write("Vector A\n\n");            for (int i = 0; i < TempA.Length; i++)            {                Console.Write("{0}:  {1}\t\t", i + 1, TempA[i]);                if (Cont == 5)                {                    Console.Write("\n\n");                    Cont = 0;                }                Cont++;            }        }        public void DesplegarDesB()        {            int Cont = 1;            Console.Write("\nVector B\n\n");            for (int i = 0; i < TempB.Length; i++)            {                Console.Write("{0}:  {1}\t\t", i + 1, TempB[i]);                if (Cont == 5)                {                    Console.Write("\n\n");                    Cont = 0;                }                Cont++;            }        }        public void DesplegarOrdA()        {            int Cont = 1;            Console.Write("Vector A\n\n");            for (int i = 0; i < A.Length; i++)            {                Console.Write("{0}:  {1}\t\t", i + 1, A[i]);                if (Cont == 5)                {                    Console.Write("\n\n");                    Cont = 0;                }                Cont++;            }        }        public void DesplegarOrdB()        {            int Cont = 1;            Console.Write("\nVector B\n\n");            for (int i = 0; i < B.Length; i++)            {                Console.Write("{0}:  {1}\t\t", i + 1, B[i]);                if (Cont == 5)                {                    Console.Write("\n\n");                    Cont = 0;                }                Cont++;            }        }        public void DesplegarIntercalado()        {            int Cont = 1;            for (int i = 0; i < C.Length; i++)            {                Console.Write("{0}:  {1}\t\t", i + 1, C[i]);                if (Cont == 5)                {                    Console.Write("\n\n");                    Cont = 0;                }                Cont++;            }         }    }    class Program    {        static void Main(string[] args)        {            int Opcion;            Intercalacion_Simple I = new Intercalacion_Simple();                    do                    {                        Console.Clear();                        Console.WriteLine("Menú");                        Console.WriteLine("1.- Generar numeros aleatorios");                        Console.WriteLine("2.- Ordenamiento de vectores");                        Console.WriteLine("3.- Intercalar");                        Console.WriteLine("4.- Salir");                        Console.Write("\nQue opcion desea realizar: ");                        Opcion = Int32.Parse(Console.ReadLine());                        Console.Clear();                        switch (Opcion)                        {                            case 1:                                I.Generar();                                Console.WriteLine("\nValores generados\n");                                I.DesplegarDesA();                                I.DesplegarDesB();                                break;                            case 2:                                Console.WriteLine("\nDespliegue Ordenado\n");                                I.quicksortA(0, I.A.Length-1);                                I.quicksortB(0, I.B.Length-1);                                I.DesplegarOrdA();                                I.DesplegarOrdB();                                break;                            case 3:                                Console.WriteLine("\nDespliegue Intercalado\n");                                                                I.Intercalar();                                I.DesplegarIntercalado();                                break;                            case 4:                                break;                            default:                                Console.WriteLine("\nOpción Incorrecta");                                break;                        }                        Console.ReadLine();                    } while (Opcion != 4);        }    }}``
jueves, 29 de septiembre de 2016 1:17

### Respuestas

• hola

donde estarian esos valores aleatorios que se generan actualmente ?

el codigo que publicas es bastante extenso para analizarlo completo, seria de ayuda si aproximas un poco la explicacion

es una aplicacion de consola podrias pedirle al usuario que ingrese los valores

ademas sera algo dinamico, por lo que un array no aplica, deberias usar un List<> para poder por medio del Add() ir agregando valores que el usuario ingrese

saludos

Leandro Tuttini

Blog
MVP Profile
Buenos Aires
Argentina

jueves, 29 de septiembre de 2016 22:27
• hola

cual seria la duda ? veo que has puesto bastante codigo pero no queda claro cual es el problema

recuerda

saludos

Leandro Tuttini

Blog
MVP Profile
Buenos Aires
Argentina

jueves, 29 de septiembre de 2016 10:23

### Todas las respuestas

• hola

cual seria la duda ? veo que has puesto bastante codigo pero no queda claro cual es el problema

recuerda

saludos

Leandro Tuttini

Blog
MVP Profile
Buenos Aires
Argentina

jueves, 29 de septiembre de 2016 10:23
• quiero que ingrese valores no aleatorios y que cual sea la opcion guarde los resultados en cualquier matriz
jueves, 29 de septiembre de 2016 21:11
• hola

donde estarian esos valores aleatorios que se generan actualmente ?

el codigo que publicas es bastante extenso para analizarlo completo, seria de ayuda si aproximas un poco la explicacion

es una aplicacion de consola podrias pedirle al usuario que ingrese los valores

ademas sera algo dinamico, por lo que un array no aplica, deberias usar un List<> para poder por medio del Add() ir agregando valores que el usuario ingrese

saludos

Leandro Tuttini

Blog
MVP Profile
Buenos Aires
Argentina

jueves, 29 de septiembre de 2016 22:27