Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% encontró este documento útil (0 votos)
66 vistas13 páginas

Arreglos en C

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1/ 13

EJERCICIOS RESUELTOS(COMPILADOS Y EJECUTADDOS)

Arreglos undimensionales(vectores)

1.) /*Hacer un array de 100 enteros. Luego mostrarlos en pantalla.*/

#include <iostream>

using namespace std;

int main(){

int numeros[100];

for(int i = 0; i < 100; i++){

numeros[i] = i+1;

for(int i = 0; i < 100; i++){

cout << numeros[i]<<endl;

system("pause");

return 0;

2.) /*Escribir un programa en C++ que llene un array con todos los números divisibles entre 3
del 0 al 99.

Luego mostrar los elementos por pantalla.*/

#include <iostream>

using namespace std;

int main(){

int numeros[100];

for(int i = 0; i < 100; i++){

if(i%3 == 0)

numeros[i] = i;
}

for(int i = 0; i < 100; i++){

if(i%3 == 0)

{ cout << numeros[i] << endl; }

system("pause");

return 0;

Arreglos con funciones

1.-/*Hacer un programa en C++ que llene un array de 100 enteros de la siguiente manera:

1) 50 números pares.

2) 50 números impares.

Luego, mostrarlos por pantalla.*/

#include <iostream>

using namespace std;

void llenarPares(int[100]);

void llenarImpares(int[100]);

void mostrarPares(int[100]);

void mostrarImpares(int[100]);

int main(){

int numeros[100];

llenarPares(numeros);

llenarImpares(numeros);

mostrarPares(numeros);

mostrarImpares(numeros);
return 0;

void llenarPares(int numeros[100]){

for(int i = 0; i < 100; i++){

if(i % 2 == 0){ numeros[i] = i; }

void llenarImpares(int numeros[100]){

for(int i = 0; i < 100; i++){

if(i % 2 == 1){ numeros[i] = i; }

void mostrarPares(int numeros[100]){

cout << "NUMEROS PARES" << endl;

for(int i = 0; i < 100; i++){

if(i % 2 == 0){ cout << numeros[i] << endl; }

void mostrarImpares(int numeros[100]){

cout << "NUMEROS IMPARES" << endl;

for(int i = 0; i < 100; i++){

if(i % 2 == 1){ cout << numeros[i] << endl; }

system("pause");

}
2.-/*Hacer un programa en C++ que llene un array de 10 enteros con números del 1 al 100,

luego de eso los muestre en pantalla y diga cuál es el elemento mayor y cuántas veces se
repite.*/

#include <iostream>

using namespace std;

void rellenarArray(int[10]);

void mostrarArray(int[10]);

void mostrarMayor(int[10]);

int main(){

int numeros[10];

rellenarArray(numeros);

mostrarArray(numeros);

mostrarMayor(numeros);

return 0;

void rellenarArray(int numeros[10]){

for(int i = 0; i < 10; i++){

numeros[i] = i+1; //Se le asignan números del 0 al 99

void mostrarArray(int numeros[10]){

for(int i = 0; i < 10; i++){

cout << numeros[i] << endl;

}
void mostrarMayor(int numeros[10]){

int mayor = numeros[0], totalRepetidos = 0;

for(int i = 0; i < 10; i++){

if(mayor < numeros[i]){ mayor = numeros[i]; }

for(int i = 0; i < 10; i++){

if(mayor == numeros[i]){ totalRepetidos++; }

cout << "EL MAYOR ES: " << mayor << endl;

cout << "Y SE REPITE " << totalRepetidos;

(totalRepetidos == 1)? cout << " VEZ" : cout << " VECES";

system("pause");

Arreglos bidimensionales(tablas, matriz)

//programa que llena una matriz de 2X3 y muestra la suma de sus elementos

#include <iostream>

using namespace std;

int main()

int i,j;

int suma=0;

int cal[2][3];

for (i=0;i<2; i++){

for (j=0;j<3;j++){

cout<<"Intro los valores"<<endl;

cin>>cal[i][j];
}

for (i=0;i<2;i++){

for (j=0;j<3;j++){

suma+=cal[i][j];

cout<<"la suma de todos los elementos es"<< suma<<endl;

system("pause");

Arreglos bidimensionales con funciones

//programa que llena una tabla de 3X5(15) e imprime dicha tabla, utilizando funciones

#include <iostream>

using namespace std;

/* prototipos funcionales*/

void leer(int a[][5]);

void visualizar(int a[][5]);

int main()

int a[3][5];

leer(a);

visualizar(a);

void leer(int a[][5])

{
int i,j;

cout<<"introduzca 15 numeros enteros,5 popr fila"<<endl;

for (i=0; i<3;i++)

for (j=0;j<5;j++)

cin>>a[i][j];

void visualizar(int a[][5])

int i,j;

for (i=0;i<3;i++)

for(j=0;j<5;j++)

cout<<a[i][j];

cout<<"\n";

system("pause");

Ordenamiento de burbuja

//Programa querecibe los elementos para un arreglo de anera desordenada y ordena los 5
elementos del arreglo en forma descendente, a través el método de burbuja

#include <iostream>

using namespace std;

#define N 5
typedef int Tipo_elemento;

void ordenarBurbuja(Tipo_elemento *arreglo,Tipo_elemento n);

main()

Tipo_elemento arreglo[N];

int num,k;

for (k=0;k<N;k++){

cout<<"Ingrese un numero entero positivo: \n";

do

cin>>arreglo[k];

while(num <= 0);

//arreglo[i]=num;//

ordenarBurbuja(arreglo,N);

cout<<"\nArreglo ordenado de forma descendente es:\n";

for(k=0;k<N;k++)

cout<<arreglo[k]<<endl;

cout<<"\n";

system ("pause");

void ordenarBurbuja(Tipo_elemento *arreglo, Tipo_elemento n){

Tipo_elemento i, temp, interchange,j;

interchange =1;

j=1;
while(interchange){

interchange =0;

for(i=0;i<n-j;i++){

if(arreglo[i]<arreglo[i+1]){

// Intercambia los elementos //

temp=arreglo[i];

arreglo[i]=arreglo[i+1];

arreglo[i+1]=temp;

interchange=1;

j++;

Ejercicio de Búsqueda

/* Programa de búsqueda binaria que primero ordena el arreglo y luego aplica el método de
búsqueda binaria, para usar la búsqueda binaria el arreglo debe estar ordenado/

#include <iostream>

using namespace std;

#define TAMANIO 10

/* prototipos */

typedef int tipoelemento;

void ordenamientoInsercion (tipoelemento inarray[], tipoelemento n);

int binarySearch(tipoelemento inarray[], int n, tipoelemento element);


int main()

tipoelemento element; /* 1 para el orden ascendente o 2 para el orden descendente */

int contador; /* contador */

/* inicializa el arreglo a */

int a[ TAMANIO ] = { 15, 6, 4, 8, 100, 12, 89, 68, 45, 37 };

cout<< "\nElementos de datos en el orden original\n" ;

/* muestra el arreglo original */

for ( contador = 0; contador < TAMANIO; contador++ ) {

cout<< a[ contador ]<<endl;

} /* fin de for */

/* clasifica el arreglo en orden ascendente; pasa la función ascendente como un

argumento para especificar el orden ascendente */

ordenamientoInsercion ( a, TAMANIO );

cout<< "\nElementos de datos en orden ascendente\n" ;

/* muestra el arreglo ordenado */

for ( contador = 0; contador < TAMANIO; contador++ ) {

cout<< a[ contador ]<<endl ;

} /* fin de for */

cout<< "\n" ;

cout<<"Dato a Buscar: ";

cin>> element;

if (binarySearch (a,TAMANIO,element))

cout<<"El Dato a Buscar fue Encontrado en el arreglo \n";


else

cout<<"El Dato No fue Encontrado en el arreglo\n ";

system("pause");

return 0; /* indica terminación exitosa */

} /* fin de main */

/* ordenamiento Inserción para ordenar el arreglo*/

void ordenamientoInsercion (tipoelemento *inarray, tipoelemento n){

tipoelemento temporal;

tipoelemento i,j;

for (i = 1; i < n; i++){

temporal = inarray[i];

j = i - 1;

while (j >= 0 && temporal < inarray[j]){

inarray[j+1] = inarray[j];

j--;

inarray[j+1] = temporal;

int binarySearch(tipoelemento *inarray, int n, tipoelemento element)

int top, bot,mid,found;

top=0;

bot=n-1;

found=0;
while (top<=bot && !found)

mid=(top+bot)/2;

if(inarray[mid]==element)

found=1;

else

if(inarray[mid]<element)

top=mid+1;

else

bot=mid-1;

return found;

EJERCICIOS PROPUESTOS

1. Hacer un programa que lea diez valores enteros en un arreglo desde el teclado y calcule y
muestre: la suma, el valor medio, el mayor y el menor.

2. Hacer un programa que lea 25 valores enteros en una tabla de 5 por 5, y que después
muestre la tabla y las sumas de cada fila y de cada columna.

3. Escribir un programa que lea un arreglo de cualquier tipo (entero, flotante, char), y revise
el arreglo para encontrar un valor en particular digitado por el usuario, la salida es la
posición del arreglo en que se encuentra. Utilice cualquier método de búsqueda

4. Elabore un programa que sume los primeros 25 números enteros guardados en un vector.
Se desea imprimir la lista de números y al final la suma de los mismos.
5. Generar e imprimir un vector de 10 números enteros y encontrar el mayor de ellos.
Desplegar el resultado.

6.Dadas dos listas A y B de igual número de elementos, se desea generar e imprimir una
lista C conteniendo las sumas: A[i] + B[i] = C[i]

También podría gustarte