elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
29 Mayo 2012, 03:05  


Tema destacado: Personaliza-Escoge el diseño del foro que más te guste.

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse)
| | |-+  Suma, valor promedio, mayor y el menor numero
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Suma, valor promedio, mayor y el menor numero  (Leído 7,048 veces)
Castiblanco


Desconectado Desconectado

Mensajes: 2.411


Coding :D


Ver Perfil WWW
Suma, valor promedio, mayor y el menor numero
« en: 18 Febrero 2010, 12:41 »

Hola tengo un problema con un ejercicio:

Hacer un programa que lea diez valores enteros en un arreglo desde el teclado y calcule y muestre: la suma de los elementos del arreglo , el valor promedio, el mayor valor  y el menor valor  del arreglo

Código
#include"iostream.h"
#include"conio.h"
main()
{
double num [10];
int i;
double promedio = 0, sumatoria = 0, mayor = 0, menor = 0;
for(i=0;i<10;i++)
{
cout<<"ingrese un numero"<<i+1<<"\n";
cin>>num [i];
if (mayor<=num[i])
mayor = num[i] + 0;
else
menor = num[i] + 0;
}
for(i=0;i<10;i++)
{
sumatoria += num[i];
}
promedio = sumatoria/i;
cout<<"La suma del arreglo es "<<sumatoria<<"\n";
cout<<"el promedio es "<<promedio<<"\n";
cout<<"el numero mayor es "<<mayor<<"\n";
cout<<"el numero menor es "<<menor<<"\n";
getch();
}
 

Tengo hecho eso y funciona casi todo bien, hace la suma de los elementos del arreglo , el valor promedio, el mayor valor  pero no hace el menor, yo pensaba que si ya podia capturar el mayor el menor seria sencillamente el inverso pero como que no es asi.

Alguien que me ayude.

PD: Y quería saber para que sirve el numero que dentro de num [10]; pensaba que era el numero de elementos que tenia el arreglo, pero yo se lo cambio a uno menor y sigue funcionando normal.

Saludos...


En línea


Deuteronomio 13:6, 13:10 ;)
h0oke


Desconectado Desconectado

Mensajes: 2.058


Coder ~


Ver Perfil WWW
Re: Suma, valor promedio, mayor y el menor numero
« Respuesta #1 en: 18 Febrero 2010, 12:51 »

Hola castiblanco, para detectar un número mayor o menor en un arreglo, una idea es tomar arbitrariamente un valor del array, que generalmente tiende a ser el primero... Si no pasamos a la etapa de eficiencia, podrías tomar al primer elemento como mayor y menor, y luego en el recorrido del arreglo, comenzarás a comparar desde el primer elemento.

PD: Recuerda que los enteros también incluyen números negativos, por lo tanto el 0 no puede ser tomado como máximo y mínimo.



En línea
Littlehorse
All the world's a stage
Moderador
***
Desconectado Desconectado

Mensajes: 2.710


Nie Dam Sie


Ver Perfil WWW
Re: Suma, valor promedio, mayor y el menor numero
« Respuesta #2 en: 18 Febrero 2010, 12:54 »

Lo del menor podes hacerlo de muchas formas. Así a simple vista y considerando que es muy temprano para mi, podes buscarlo cuando sacas el promedio:

Código
menor=num[0];
for(i=0;i<10;i++)
{
if(num[i]<menor)
  menor=num[i];                
sumatoria += num[i];
}

conio? MAL.

Citar
PD: Y quería saber para que sirve el numero que dentro de num [10]; pensaba que era el numero de elementos que tenia el arreglo, pero yo se lo cambio a uno menor y sigue funcionando normal.

Si. 10 es el numero de elementos que va a tener el arreglo. Si lo modificas a 1 te vas a mover por posiciones de memoria invalidas. Te funciona simplemente porque en ese caso en particular, las posiciones del arreglo están agrupadas en la memoria en forma continua. Pero que pasa si no lo están?.

Un saludo!
En línea

An expert is a man who has made all the mistakes which can be made, in a very narrow field.
h0oke


Desconectado Desconectado

Mensajes: 2.058


Coder ~


Ver Perfil WWW
Re: Suma, valor promedio, mayor y el menor numero
« Respuesta #3 en: 18 Febrero 2010, 13:03 »

Hola littlehorse, no me refería a posiciones negativas, me refería a elementos del arreglo negativos, ya que en el enunciado se destaca : "un programa que lea diez valores enteros en un arreglo".

Me había olvidado lo de conio xD

Y una última cosa: recomendaría que tu función devuelva algún tipo de valor, aunque sea void, pero lamentablemente no recuerdo el fundamento de esto.
« Última modificación: 18 Febrero 2010, 13:04 por _cux » En línea
Littlehorse
All the world's a stage
Moderador
***
Desconectado Desconectado

Mensajes: 2.710


Nie Dam Sie


Ver Perfil WWW
Re: Suma, valor promedio, mayor y el menor numero
« Respuesta #4 en: 18 Febrero 2010, 13:05 »

Hola  :D
Yo entendí lo que dijiste  ;D. Lo que yo aclare fue por la pregunta que hizo Casti  :).

Edit: Que función? no hay ninguna ahí mas que el main. Cuando no se indica el valor que devuelve main se sobreentiende que devuelve un entero (acorde al estandar).

Un saludo!
« Última modificación: 18 Febrero 2010, 13:09 por Littlehorse » En línea

An expert is a man who has made all the mistakes which can be made, in a very narrow field.
h0oke


Desconectado Desconectado

Mensajes: 2.058


Coder ~


Ver Perfil WWW
Re: Suma, valor promedio, mayor y el menor numero
« Respuesta #5 en: 18 Febrero 2010, 13:08 »

 :huh:  :huh:  :huh:

Leí mal xD! Disculpas  :-[  :xD
En línea
Castiblanco


Desconectado Desconectado

Mensajes: 2.411


Coding :D


Ver Perfil WWW
Re: Suma, valor promedio, mayor y el menor numero
« Respuesta #6 en: 18 Febrero 2010, 13:32 »

Bueno gracias por la orientación voy a mirar el siguiente y ahora más tarde los vuelvo a molestas, igual pongo el código por si alguien lo quiere ver.

Código
#include"iostream.h"
#include"conio.h"
main()
{
double num [10];
int i;
double promedio = 0, sumatoria = 0, mayor = 0, menor = 0;
for(i=0;i<10;i++)
{
cout<<"ingrese un numero"<<i+1<<"\n";
cin>>num [i];
}
menor=num[0];
mayor=num[0];
for(i=0;i<10;i++)
{
if(num[i]<=menor)
menor=num[i];    
if(num[i]>=mayor)
mayor=num[i];            
sumatoria += num[i];
}
promedio = sumatoria/i;
cout<<"La suma del arreglo es "<<sumatoria<<"\n";
cout<<"el promedio es "<<promedio<<"\n";
cout<<"el numero mayor es "<<mayor<<"\n";
cout<<"el numero menor es "<<menor<<"\n";
getch();
}

PD: No entendí lo de "conio? MAL."

Saludos...
En línea


Deuteronomio 13:6, 13:10 ;)
Littlehorse
All the world's a stage
Moderador
***
Desconectado Desconectado

Mensajes: 2.710


Nie Dam Sie


Ver Perfil WWW
Re: Suma, valor promedio, mayor y el menor numero
« Respuesta #7 en: 18 Febrero 2010, 13:39 »

De nada!
Mal que incluyas conio solamente para hacer una pausa. Hazla de forma estándar como debe ser o en su defecto llama al programa mediante la consola pero, no incluyas una librería no estándar solamente para utilizar getch. (Aunque no deberías incluirla bajo ningún contexto ya que básicamente no sirve absolutamente para nada)
Ah y otra cosa, iostream es estándar, no hace falta ponerle comillas. Es hacer trabajar al pre-procesador al vicio  ;D

Un saludo!
En línea

An expert is a man who has made all the mistakes which can be made, in a very narrow field.
h0oke


Desconectado Desconectado

Mensajes: 2.058


Coder ~


Ver Perfil WWW
Re: Suma, valor promedio, mayor y el menor numero
« Respuesta #8 en: 18 Febrero 2010, 21:41 »

No entiendo muy bien por qué inicializa dos veces las variables mayor y menor, o tal vez se haya olvidado.
En línea
MasterPM2


Desconectado Desconectado

Mensajes: 421


,.-~´¨¯¨`·~-.¸--$4(_Må§të®-Þåølø™_)-$-,.-~´¨¯¨`·~-


Ver Perfil
Re: Suma, valor promedio, mayor y el menor numero
« Respuesta #9 en: 18 Febrero 2010, 21:48 »

la forma correcta de incluir las librerias seria:

Código:
include <iostream>

otra cosa, si vas a inicializar varias variables xD (varias variables :xD) te recomiendo de esta forma:

Código:
int a,b,c,d,e=0;
« Última modificación: 18 Febrero 2010, 21:50 por Blink182 » En línea

ANBU暗部   Ansatsu Senjutsu Tokushu Butai暗殺戦術特殊部隊 Fuerza militar especial táctica de eliminación........MyDarker Sid3

<firma retirada, no la vuelvas a poner o se te sancionara>  <- - Amenazas
nicolas_cof


Desconectado Desconectado

Mensajes: 343


Into the Wild


Ver Perfil WWW
Re: Suma, valor promedio, mayor y el menor numero
« Respuesta #10 en: 18 Febrero 2010, 22:24 »

No le veo sentido a esta declaracion

Código
double promedio = 0, sumatoria = 0, mayor = 0, menor = 0;

con esta bastaria, ya que luego les asignas un valor

Código
double promedio, sumatoria = 0, mayor, menor;

Salu10.
En línea

Leo Gutiérrez.
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 2.968


/^$/


Ver Perfil WWW
Re: Suma, valor promedio, mayor y el menor numero
« Respuesta #11 en: 19 Febrero 2010, 00:44 »

Bastaría con:
Código
double sumatoria = 0, mayor, menor;

Para sacar el promedio, luego de hacer la sumatoria, divides entre N y listo:
Código:
sumatoria /= n;
En línea

Código
(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}
 

leorocko13@hotmail.com
https://github.com/leogtzr/
h0oke


Desconectado Desconectado

Mensajes: 2.058


Coder ~


Ver Perfil WWW
Re: Suma, valor promedio, mayor y el menor numero
« Respuesta #12 en: 19 Febrero 2010, 01:39 »

Leo, creo que el double es demasiado, ya que sólo pide el ingreso de números enteros; un float o double sólo iría para el promedio creo.
En línea
Leo Gutiérrez.
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 2.968


/^$/


Ver Perfil WWW
Re: Suma, valor promedio, mayor y el menor numero
« Respuesta #13 en: 19 Febrero 2010, 02:23 »

Leo, creo que el double es demasiado, ya que sólo pide el ingreso de números enteros; un float o double sólo iría para el promedio creo.

No te he entendido.

Aunque solo sean números enteros, al dividir igual puede quedar un número decimal, de ahí el double, el double puede cambiarse por un float ya que n = 10.

Código:
promedio = sumatoria/n;
Que es igual a :
Código:
sumatoria /= n;
En línea

Código
(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}
 

leorocko13@hotmail.com
https://github.com/leogtzr/
Castiblanco


Desconectado Desconectado

Mensajes: 2.411


Coding :D


Ver Perfil WWW
Re: Suma, valor promedio, mayor y el menor numero
« Respuesta #14 en: 19 Febrero 2010, 02:34 »

No entiendo muy bien por qué inicializa dos veces las variables mayor y menor, o tal vez se haya olvidado.

Si, en realidad se me olvido, ya que estaba trabajando en el código que yo tenia entonces no le borre eso.

Gracias a todos por comentar mañana los vuelvo a molestar ;)

Saludos...
En línea


Deuteronomio 13:6, 13:10 ;)
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines