Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- /// <summary>
- /// Trabajo Practico N° 0:
- /// *Ejercicio 3: Escribir un programa que calcule y visualice el mas grande, el mas pequeño y la media de N numeros
- /// (N > 0). El valor de N se solicita al principio del programa y los numeros seran introducidos por el usuario.
- /// *Ejercicio realizado con Metodos con vectores y SIN generar valores aleatorios
- ///
- /// Programador: Cristian David Chorolqui
- /// </summary>
- namespace Ejercicio3_Modular
- {
- class Program
- {
- /*=====================================*/
- // Funcion Mayor
- // Encuentra el mayor valor de un
- // vector de manera secuencial
- // *Parametro: vecNumero de tipo entero
- /*=====================================*/
- private static int Mayor(int[] vecNumero)
- {
- //Asume que el primer valor es el mayor
- int mayor = vecNumero[0];
- //Recorre el vector
- for(int i =1;i<vecNumero.Length; i++)
- {
- //Si el valor del vector es mayor al valor que tenemos en la variable
- if(vecNumero[i] > mayor)
- {
- mayor = vecNumero[i];
- }
- }
- //Devuelve el mayor valor
- return mayor;
- }
- /*=====================================*/
- // Funcion Menor
- // Encuentra el menor valor de un
- // vector de manera secuencial
- // *Parametro: vecNumero de tipo entero
- /*=====================================*/
- private static int Menor(int[] vecNumero)
- {
- //Asume que el menor valor es el primer elemento del vector
- int menor = vecNumero[0];
- //Recorre el vector
- for(int i = 1; i< vecNumero.Length; i++)
- {
- //Si el valor del vector es menor al valor que tenemos en la variable
- if(vecNumero[i] < menor)
- {
- menor = vecNumero[i];
- }
- }
- //Devuleve el menor valor
- return menor;
- }
- /*=====================================*/
- // Funcion Promedio
- // Calcula el promedio de un vector
- // *Parametro: vecNumeros vector de tipo entero
- /*=====================================*/
- private static float Promedio(int[] vecNumeros)
- {
- //Declaracion de variable
- int intSuma = 0;
- //Recorre el vector sumando sus elementos
- for (int i =0; i<vecNumeros.Length; i++)
- {
- //Suma de los elementos
- intSuma += vecNumeros[i];
- }
- //Calculo y devolucion del promedio
- return intSuma / vecNumeros.Length;
- }
- /*=====================================*/
- // Funcion EsPositivo
- // Verifica si el valor numerico
- // es positivo
- // *Parametro: intNumero de tipo entero
- /*=====================================*/
- private static bool EsPositivo(int intNumero)
- {
- //Si el numero es positivo
- if(intNumero > 0)
- {
- //devuelve verdadero
- return true;
- }
- //Devuelve false
- return false;
- }
- /*=====================================*/
- // Funcion EsNumerico
- // Verifica si el numero ingresado
- //es un numero
- // *Parametro: numero de tipo cadena
- /*=====================================*/
- private static bool EsNumerico(string strNumero)
- {
- //Intenta convertir la cadena numero en un valor numerico de tipo entero
- //Si lo consigue devuelve verdadero si no falso
- return int.TryParse(strNumero, out int intResultado);
- }
- /*=====================================*/
- // Funcion Main
- /*=====================================*/
- static void Main(string[] args)
- {
- //Declaracion de variables
- int N=0;
- int[] vecNumeros;
- string strCant;
- Console.WriteLine("Ingrese la cantidad de valores ingresados: ");
- //Hacer
- do
- {
- bool esPositivo;
- strCant = Console.ReadLine();
- //Si es numerico
- if(EsNumerico(strCant))
- {
- //Convierto la cadena en numero
- N = int.Parse(strCant);
- //Analizo si es positivo
- esPositivo = EsPositivo(N);
- //Si NO es positivo
- if (!esPositivo)
- {
- Console.WriteLine("Debe ingresar un valor positivo");
- }
- }
- //Si no es un valor numerico
- else
- {
- Console.WriteLine("El valor ingresado no es valido");
- }
- } while ((EsPositivo(N) == false) && (EsNumerico(strCant) == false ));
- //Mientras que el valor ingresado sea positivo y numerico
- //asignacion de longitud al vector
- vecNumeros = new int[N];
- Console.WriteLine("Ingrese los "+ N.ToString() + " valores: ");
- //Recorre el vector vacio
- for(int i=0; i<N; i++)
- {
- //Mensaje para el usuario
- Console.Write((i+1).ToString() + " :");
- string strNumero;
- //Lee el numero
- do
- {
- //Lee el numero
- strNumero = Console.ReadLine();
- //Si es un numero
- if (EsNumerico(strNumero))
- {
- vecNumeros[i] = Convert.ToInt32(strNumero);
- }
- //Si no es un numero
- else
- {
- Console.WriteLine("Ingrese un valor numerico");
- //Mensaje para el usuario
- Console.Write((i + 1).ToString() + " :");
- }
- } while (EsNumerico(strNumero) == false); //mientras no sea un numero
- }
- //Busca el mayor
- Console.WriteLine("El mayor es: " + Mayor(vecNumeros).ToString());
- //Busca el menor
- Console.WriteLine("El menor es: " + Menor(vecNumeros).ToString());
- //Busca el promedio
- Console.WriteLine("La media es: " + Promedio(vecNumeros).ToString());
- Console.WriteLine("Presione una tecla para finalizar");
- Console.ReadKey();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement