Está en la página 1de 7

ACTIVIDAD 10

TRABAJO COLABORATIVO No. 2

GRUPO COLABORATIVO: 301304_19


HÉCTOR JAIME ÁVILA LÓPEZ
CODIGO: 74392483

TUTOR:
IRINA NARVAEZ ESPINOSA

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA


ESCUELA DE CIENCIAS BASICAS, TECNOLOGIAS E INGENIERIAS
INTRODUCCION A LA PROGRAMACION
2011
Escuela de Ciencias Básicas, Tecnología e Ingeniería
Introducción a la Programación

OBJETIVOS

 Organizar tareas colectivas aportando y superando las dificultades que se


presenten, con una actitud tolerante hacia las ideas de los compañeros.

 Definir mediante acuerdos, responsabilidades individuales que faciliten el


verdadero trabajo en equipo.

 Mantener buenas relaciones con los miembros del grupo,


responsabilizándose de la consecución de los objetivos.

 Conocer y aplicar técnicas para administrar información en arreglos.

 Declarar, inicializar y referenciar elementos de un arreglo.


Escuela de Ciencias Básicas, Tecnología e Ingeniería
Introducción a la Programación

1. Hacer un programa que lea diez valores enteros en un arreglo desde el


teclado, además debe calcular e imprimir: la suma de todos los elementos
del vector, el mayor y el menor valor que se encuentre en el arreglo.

#include <stdio.h>
#include <stdlib.h>

void funcion(int const array[]);


int main(void)
{
int array[10];
int i;
printf("Calcula y muestra: la suma, el valor medio, el mayor y el menor\n\n");
for (i = 0; i < 10; i++){
printf ("Digite el valor %i : ", i+1);
fflush(stdout);
if (scanf("%i", &array[i]) != 1)
return EXIT_FAILURE;
}
funcion(array);
system("pause");
return EXIT_SUCCESS;
}
void funcion(int const array[])
{
int i;
int suma;
int max;
int min;
suma = 0;
for (i = 0; i < 10; i++)
suma += array[i];
printf ( "\n***************************************\n");
printf ("\n* La suma del array es : %i\n", suma);
printf("* El promedio del array es : %i\n", suma / 10);
min = max = array[0];
for (i = 1; i < 10; i++)
if (array[i] < min)
min = array[i];
else if (array[i] > max)
max = array[i];
printf ("* El mayor es : %i\n", max);
printf ("* El menor es : %i\n", min);
printf ( "\n***************************************\n");
}
Escuela de Ciencias Básicas, Tecnología e Ingeniería
Introducción a la Programación
Escuela de Ciencias Básicas, Tecnología e Ingeniería
Introducción a la Programación

Hacer un programa que lea diez valores enteros en un array y los muestre en
pantalla. Después que los ordene de menor a mayor y los vuelva a mostrar. Y
finalmente que los ordene de mayor a menor y los muestre por tercera vez. Para
ordenar la lista usar una función que implemente el método de la burbuja y que
tenga como parámetro de entrada el tipo de ordenación, de mayor a menor o de
menor a mayor. Para el array usar una variable global.

#include <iostream>
using namespace std;

const int MAX = 10; //tamaño (constante) del array

int array[MAX]; //array de elementos int

void ordena(string); //prototipo de la función para ordenar


void muestra(); //prototipo de la función para mostrar la lista
void intercambia(int &, int &); //prototipo de la función para intercambiar elementos
del array

int main()
{
string orden; // mayor o menor

//Introducción del array


cout <<"\nIntroduce los " << MAX << " números del array:" << endl;
for (int i = 0; i < MAX; i++)
{
cout << " Numero #" << i << ": ";
cin >> array[i];
}

muestra(); //Muestra de los arrays

//petición de orden.
cout << "\nAhora dime como quieres que sean ordenados.\nSi quieres que sean
ordenados de mayor a menor, escribe 'mayor', de lo contrario, escribe 'menor': ";
cin >> orden;

ordena(orden); //ordena la lista descrita por "orden"

muestra(); //Muestra de los arrays


return 0;
Escuela de Ciencias Básicas, Tecnología e Ingeniería
Introducción a la Programación

void intercambia(int &a, int &b)


{
// porque no se pueden intercambiar A y B entre si, se necesita introducir un
elemento temporario
// que pueda mantener el valor de A, para que A pueda cambiar y luego B se
puede igualar a A
int temp;
temp = a;
a = b;
b = temp;
}

void muestra()
{
// muestra la lista del elemento 0 a MAX
cout << "\n * Elementos de array: " << MAX << endl;
cout << "=========================" << endl;
for (int i = 0; i < MAX; i++)
{
cout <<" array[" << i << "]: " << array[i] << endl;
}
}

//definición de la función Ordena


void ordena(string m)
{
bool ordenado;
int n = MAX;

if (m == "mayor" || m == "MAYOR" || m == "Mayor")


{
do
{
ordenado = false;
for (int i = 0; i < (n - 1); i++)
{
if (array[i] < array[i+1])
{
intercambia(array[i], array[i+1]);
ordenado = true;
}
}
n = n - 1;
Escuela de Ciencias Básicas, Tecnología e Ingeniería
Introducción a la Programación

}
while (ordenado);
}

if (m == "menor" || m == "MENOR" || m == "Menor")


{
do
{
ordenado = false;
for (int i = 0; i < (n - 1); i++)
{
if (array[i] > array[i+1])
{
intercambia(array[i], array[i+1]);
ordenado = true;
}
}
n = n - 1;
}
while (ordenado);
}

También podría gustarte