Cómo utilizar una matriz en c ++

Video: Tutorial C++ 14. Ciclo For y Arrays

Un formación es una secuencia de variables en C ++ que comparte el mismo nombre y que se hace referencia mediante un índice. El siguiente programa C ++ introduce una secuencia de valores enteros desde el teclado hasta que el usuario introduce un número negativo. Entonces, el programa muestra la entrada de números y reporta su suma.

Video: Matriz (Arreglos) en C++ [Curso de Programación C++] [20/28]

// ArrayDemo - demostrar el uso de matrices // mediante la lectura de una secuencia de números enteros // y luego mostrarlos y su suma # include #incluir #incluir using namespace std - // prototipo declarationsint readArray (int integerArray [], int maxNumElements) -INT sumArray (int integerArray [], int numElements) -void displayArray (int integerArray [], int numElements) -INT principal (int nNumberofArgs, char * pszArgs []) {// entrada de la countcout bucle lt; lt; "Esto resume los programas valores introducidos "lt; lt; "por el Usern"-cout lt; lt; "Terminar el bucle mediante la introducción de "lt; lt; "un numbern negativo"-cout lt; lt; endl - // leer los números a ser resumido de usuario en una // IngresarValores ArrayInt locales [128] -INT numberOfValues ​​= readArray (IngresarValores, 128) - // ahora salida de los valores y la suma de la valuesdisplayArray (IngresarValores, numberOfValues) -cout lt; lt; "La suma es "lt; lt; sumArray (IngresarValores, numberOfValues) lt; lt; endl - // espera hasta que el usuario esté listo antes de la terminación del programa // para permitir al usuario ver el programa resultscout lt; lt; "Pulse Intro para continuar ..." lt; lt; endl-cin.ignore (10, `n`) - cin.get () - retorno 0 -} // readArray - leer números enteros de al operador en // `integerArray` hasta operador introduce neg.// Devuelve el número de elementos stored.int readArray (int integerArray [], int maxNumElements) {int numberOfValues-para (numberOfValues ​​= 0-numberOfValues lt; maxNumElements-numberOfValues ​​++) {// fetch otro numberint IntegerValue-cout lt; lt; "Introduce el siguiente número: "-cin gt; gt; IntegerValue - // si es negativo ... si (IntegerValue lt; 0) {// ... entonces exitbreak -} // ... de lo contrario almacenar el número // en el almacenamiento arrayintegerArray [numberOfValues] = IntegerValue -} // devuelve el número de elementos readreturn numberOfValues ​​-} // displayArray - pantalla los miembros de una matriz // de longitud sizeOfloatArrayvoid displayArray (int integerArray [], int numElements) {cout lt; lt; "El valor de la matriz es:" lt; lt; endl-for (int i = 0- i lt; numElements- i ++) {cout lt; lt; yo lt; lt; ": " lt; lt; integerArray [i] lt; lt; endl-} cout lt; lt; endl -} // sumArray - devolver la suma de los miembros de un número entero // ArrayInt sumArray (int integerArray [], int numElements) {int acumulador = 0-for (int i = 0- i lt; numElements- i ++) {acumulador + = integerArray [i] -} regreso accumulator-}

El programa ArrayDemo comienza con las declaraciones de prototipo de las funciones readArray (), sumArray (), y displayArray (), lo que lo necesitará más adelante. El programa principal comienza con un mensaje para el usuario introducir datos a resumir. El programa entonces declara una matriz IngresarValores [] para ser utilizado para almacenar la entrada de valores por el usuario.

El programa principal pasa esta matriz a readArray (), junto con la longitud de la matriz - readArray () no puede leer más de 128 valores, incluso si el usuario no introduce un número negativo ya que eso es todo el espacio asignado en el IngresarValores [] formación.

la matriz IngresarValores está declarada como 128 enteros largos. Si usted está pensando que esto debe ser más que suficiente, no contar con ella. No importa lo grande a tomar la matriz, siempre ponga una marca para asegurarse de que no se exceda de los límites de la matriz. Escribiendo más datos que una matriz puede contener causas de su programa para llevar a cabo de manera irregular y con frecuencia se bloquee.

La función principal llama a continuación, displayArray () para imprimir el contenido de la matriz. Por último, las llamadas de función sumArray () añadir los elementos de la matriz.

los readArray () función toma dos argumentos: el integerArray [] en el cual almacenar los valores que lee y maxNumElements, el número máximo de valores enteros para los que no hay espacio en la posada. La función comienza con una para bucle que lee valores enteros. Cada valor no negativo que la función lee se guarda en integerArray []. El primer elemento entra en integerArray [0], la segunda en integerArray [1], Etcétera.

Una vez que el usuario introduce un número negativo, el programa rompe fuera del bucle y devuelve el total de numberOfValues entrada.

los displayArray () función utiliza también una para bucle para atravesar los elementos de la matriz, a partir de 0 y continuando hasta el último elemento, que es numElements - 1. La función final, sumArray (), también itera a través de la matriz, pero resume los elementos almacenados allí en acumulador, que luego vuelve a la persona que llama.

Aviso, una vez más, que el índice yo en el displayArray () y sumArray () funciones se inicializa a 0 y no a 1. Además, observe cómo el para bucle termina tan pronto como yo alcances numElements. La salida de un análisis de la muestra aparece como sigue:

Este programa resume valores introducidos por el userTerminate el bucle mediante la introducción de un numberEnter negativo siguiente número: 10Introduce el siguiente número: 20Introduce el siguiente número: 30Introduce el siguiente número: 40Introduce el siguiente número: -1El valor de la matriz es: 0: 101: 202: 303: 40El suma es 100Press Intro para continuar ...

Sólo para mantener a los no programadores de adivinanzas, el término iterar medios para recorrer a través de un conjunto de objetos tales como una matriz. Los programadores dicen que las funciones anteriores iterar a través de la matriz.

Artículos Relacionados