jueves, 27 de noviembre de 2014

Punteros





¿Qué operaciones se realizan con un array unidimensional?

-          Lectura
-          Escritura
-          Asignación

Operaciones con arrays unidimensional

             Escritura:
           
            StringNombres [200]
           
            Hacer Desde C=1 Hasta 199

                        Nombres [C] ← C

            Fin Desde


            Asignación:
           
                    
    Int Numeros [500]
            Hacer Desde I= 0 Hasta 499

                        Numeros [I] ← 3

            Fin Desde

Lectura:
            String  Nombres [200]
            Hacer Desde C=0 Hasta 199

                        Leer Nombres [C]

            Fin Desde

martes, 25 de noviembre de 2014

Tarea en clases Programas

EJERCICIOS EN CLASES

SUMA DE ARREGLOS

namespace Suma_con_arreglos
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] numeros = new int[5];
            int suma;
            int i;
            for (i = 0; i <= 4; i++)
            {
                Console.Write("Introduce un numero {0}: ", i + 1);
                numeros[i] = Convert.ToInt32(Console.ReadLine());
            }
            suma = 0;
            for (i = 0; i <= 4; i++)
                suma += numeros[i];

            Console.WriteLine("Su suma es {0}", suma);
            Console.ReadLine();
        }
    }
}
                                                          



  MEDIA ARITMETICA



namespace Media_Aricmetica
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] numeros = new int[4];
            int suma,division;
            int i;
            for (i = 0; i <= 3; i++)
            {
                Console.Write("Introduce un numero {0}: ", i + 1);
                numeros[i] = Convert.ToInt32(Console.ReadLine());
            }

            suma = 0;
            for (i = 0; i <= 3; i++)
                suma += numeros[i];
            division = (suma / 4);


            Console.WriteLine("\nLa media es aritmetica  {0} :", division);
            Console.ReadLine();


        }
    }
}

Determinar si un número entero está o no está dentro de un array.
namespace arraydetermina
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.ForegroundColor = ConsoleColor.DarkRed;
            Console.BackgroundColor = ConsoleColor.White;
            Console.Clear();

            int[] arreglo = new int[1] { 4 };
            Console.ReadLine();

            string[] datos = new string[2] { "Hola", "Bienvenidos" };
            Console.ReadLine();

            double[] decimales = new double[2] { 0.12, 0.23 };
            Console.ReadLine();

            Console.WriteLine("\t\t\
tArrays");

            Console.WriteLine("\n\t" + arreglo[0]);
            Console.WriteLine("\n\t" + datos[0]);
            Console.WriteLine("\n\t" + datos[1]);
            Console.WriteLine("\n\t" + decimales[0]);
            Console.WriteLine("\n\t" + decimales[1]);
            Console.ReadLine();
            Console.Clear();

            Console.ForegroundColor = ConsoleColor.White;
            Console.BackgroundColor = ConsoleColor.DarkGreen;
            Console.Clear();

            Console.WriteLine("\n\n\t\tBuscando el número entero.....");
            Console.ReadLine();
            Console.Clear();

            Console.ForegroundColor = ConsoleColor.DarkBlue;
            Console.BackgroundColor = ConsoleColor.Yellow;
            Console.Clear();

            Console.WriteLine("\n\n\t\tEspere un momento.....");
            Console.ReadLine();
            Console.Clear();

            Console.ForegroundColor = ConsoleColor.Blue;
            Console.BackgroundColor = ConsoleColor.Gray;
            Console.Clear();

            Console.WriteLine("\n\n\t\tEl número entero es: " + arreglo[0]);
            Console.ReadLine();
      
        }
    }
}
 
 
Un array con 5 números enteros devuelve un número entero que será el mayor de los elementos del array.
namespace arraymayor
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.ForegroundColor = ConsoleColor.Black;
            Console.BackgroundColor = ConsoleColor.White;
            Console.Clear();
            int[] arreglo = new int[5] { 20, 100, 6, 89, 45 };
            int[] n1 = new int[5] { 20, 100, 6, 89, 45 };
            Console.ReadLine();
            Console.WriteLine("\t\t\t\tArray mayor");
            Console.WriteLine("\n\t" + arreglo[0]);
            Console.WriteLine("\n\t" + arreglo[1]);
            Console.WriteLine("\n\t" + arreglo[2]);
            Console.WriteLine("\n\t" + arreglo[3]);
            Console.WriteLine("\n\t" + arreglo[4]);
            Console.ReadLine();
            Console.Clear();
            Console.ForegroundColor = ConsoleColor.White;
            Console.BackgroundColor = ConsoleColor.DarkRed;
            Console.Clear();
            Console.WriteLine("\n\n\t\tBuscando el número mayor.....");
            Console.ReadLine();
            Console.Clear();
            Console.ForegroundColor = ConsoleColor.Gray;
            Console.BackgroundColor = ConsoleColor.DarkGreen;
            Console.Clear();
            Console.WriteLine("\n\n\t\tEspere un momento.....");
            Console.ReadLine();
            Console.Clear();
            Console.ForegroundColor = ConsoleColor.White;
            Console.BackgroundColor = ConsoleColor.DarkBlue;
            Console.Clear();
            Console.WriteLine("\n\n\t\tEl número mayor es: " + arreglo[1]);
            Console.ReadLine();
        }
    }
}
 
 
 



martes, 11 de noviembre de 2014

tarea en clase

namespace practica
{
    class Program
    {
        static void Main(string[] args)
        {
            int [] array =  {1,2,3,4,5 };
            Console.WriteLine("\tlos numeros son:");
            Console.WriteLine("\t" + array[0]);
            Console.WriteLine("\t" + array[1]);
            Console.WriteLine("\t" + array[2]);
            Console.WriteLine("\t" + array[3]);
            Console.WriteLine("\t" + array[4]);
            Console.WriteLine("\tlos numeros por bucles son :");
            for (int i = 0; i <= array.Length; i++)
            {
                Console.WriteLine(array[i]);
                Console.ReadKey();

            }
        }
    }
}

Preguntas de examen

1. ¿Se puede declarar una matriz unidimensional de cinco enteros? , si su

respuesta es sí, explique cómo.


Puede declarar una matriz unidimensional de cinco enteros como se muestra en el ejemplo siguiente:


int[] array = new int[5];
Esta matriz contiene elementos desde array[0] hasta array[4]. El operador new se utiliza para crear la matriz e inicializar sus elementos con valores predeterminados. En este ejemplo, todos los elementos de la matriz se inicializan con cero.


2. ¿Una matriz que almacena elementos de cadena se puede declarar del mismo 

modo que enteros?, si su respuesta e si, como?,

Una matriz que almacena elementos de cadena se puede declarar del mismo modo. Por ejemplo:


string[] stringArray = new string[6];
3. ¿Es posible inicializar una matriz en el momento de su declaración. si su 

respuesta e si, como?

Es posible inicializar una matriz en el momento de su declaración, en cuyo caso, no es necesario el especificador de rango ya que éste viene dado por el número de elementos de la lista de inicialización. Por ejemplo:


int[] array1 = new int[] { 1, 3, 5, 7, 9 };

4. ¿Cuándo se inicializa una matriz en el momento de su declaración, que 

métodos abreviados se pueden usar?

Cuando inicializa una matriz en el momento de su declaración, puede utilizar los siguientes métodos abreviados:
int[] array2 = { 1, 3, 5, 7, 9 };
string[] weekDays2 = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };

5. ¿Es posible declarar una variable de matriz sin inicializarla?, si su respuesta e si, 

como?


Es posible declarar una variable de matriz sin inicializarla, pero se debe utilizar el operador new al asignar una matriz a esta variable. Por ejemplo:
int[] array3;
array3 = new int[] { 1, 3, 5, 7, 9 };   // OK
//array3 = {1, 3, 5, 7, 9};   // Error




6. La siguiente declaración de matriz a que corresponde? 
SomeType[] array4 = new SomeType[10];

El resultado de esta instrucción depende de si SomeType es un tipo de valor o un tipo de referencia. Si es un tipo de valor, la instrucción crea una matriz de 10 elementos, cada una de las cuales tiene el tipo SomeType. 


7. ¿Qué es SomeType?

SomeType es un tipo de referencia, la instrucción crea una matriz de 10 elementos, cada uno de los cuales se inicializa con una referencia nula.

8. ¿Cuáles son las categorías del sistema de tipos de C#? 


El sistema de tipos de C# contiene las siguientes categorías:

9. ¿Qué propiedad se utiliza para obtener la longitud de una matriz?

 Se utiliza la propiedad Length para obtener la longitud de una matriz

10. ¿Qué  propiedad se usa para mostrar el número de dimensiones de una matriz?

GetUpperBound para determinar el número de elementos de cada dimensión de una matriz multidimensional.

11. La clase Array que  otros métodos y propiedades útiles para ordenar, buscar y copiar 

matrices?


El método Array.Copy copia elementos no solo entre matrices del mismo tipo, sino también entre matrices estándar de tipos distintos, ya que controla la conversión de tipo de forma automática.
Algunos métodos, como CreateInstanceCopyCopyToGetValue y SetValue, proporcionan sobrecargas que aceptan enteros de 64 bits como parámetros para alojar matrices de gran capacidad. LongLength GetLongLength devuelven enteros de 64 bits que indican la longitud de la matriz.

jueves, 6 de noviembre de 2014

Tarea en clase



 Ejercicios
1)      Crear un array de tres elementos unidimensional
int[][] jaggedArray = new int[3][];

2)      Desarrollar un array de 5 celdas

   int[] arr2Lines;
   arr2Lines = new int[5] {1, 2, 3, 4, 5};

3)      Inicializar un array de 5 elementos
int[] array1 = new int[5] { 1, 3, 5, 7, 9 };

4)      Declarar e inicializar un array de 3 elementos unidimensional

  int[3] valores;
  int[] valores = new int[3] {0,1,2,3};

  string[] paises = new string[5] {"Argentina", "Bolivia", "Peru"};

Preguntas:
a)      Que diferencia existe entre  la declaración e inicialización de un array unidimensional
La declaración especifica el tipo que devuelve la función, el nombre de la función y el tipo de los parámetros, mientras que la inicialización establece los valores iniciales de los parámetros y variables antes de su ejecución.
b)      ¿Qué operaciones se realiza con un array unidimensional?
                                                                                                                                    

OPERACIONES CON ARREGLOS UNIDIMENCIONALES



Los arreglos de una dimensión es un tipo de datos estructurados compuesto de un número de elementos finitos, tamaños fijos y elementos homogéneos.

Finitos, indica que hay un último elemento, tamaño fijo significa que el tamaño del arreglo debe ser conocido en tiempo de compilación, homogéneo significa que todos los elementos son del mismo tipo.

Para acceder a un elemento en particular de un arreglo se usa un índice. El formato para declarar un arreglo unidimensional es:  

<Tipo><nombre del arreglo>[tamaño]

Las operaciones válidas en arreglos son las siguientes:

·         Lectura / Escritura.

·         Asignación.

·         Actualización: -      Inserción.

-          Eliminación.

-          Modificación.

·         Ordenación.

·         Búsqueda.

A continuación analizaremos las operaciones de lectura, escritura y actualización.


c)       ¿Cómo se encuentra formado un array unidimensional?
Un arreglo unidimensional es un tipo de datos estructurado que está formado de una colección finita y ordenada de datos del mismo tipo. Es la estructura natural para modelar listas de elementos iguales.
El tipo de acceso a los arreglos unidimensionales es el acceso directo, es decir, podemos acceder a cualquier elemento del arreglo sin tener que consultar a elementos anteriores o posteriores, esto mediante el uso de un índice para cada elemento del arreglo que nos da su posición relativa.
Para implementar arreglos unidimensionales se debe reservar espacio en memoria, y se debe proporcionar la dirección base del arreglo, la cota superior y la inferior.