Проверка чисел при вводе - C#

Узнай цену своей работы

Формулировка задачи:

Здравсвуйте. Помогите пожалуйста с кодом. Нужно с клавиатур вводить числа в масив, их надо проверить что это именно числа, а не буквы или слова и т.д., а потом сделать определенные операции и вывести результат. У меня не получаеться проверить елементы массива на число. Посмотрите мое решение, скажите что не так... Спасибо.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace aLotOfTasks
{
    class Program
    {
        //Написать программу, которая находит среднее 
        //арифметическое значение введенных вещественных чисел.
        static void Main(string[] args)
        {
            Program myProg = new Program();
 
            myProg.Check();
        }
 
        public void Check() // проблема в этом методе
        {
            Program myProg = new Program();
 
            double[] array = Console.ReadLine()
                            .Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries)
                              .Select(double.Parse)
                              .ToArray();
 
            // тут проверка на число
 
            for (int i = 0; i < array.Length; i++)
            {
                if (array[i].GetTypeCode() == TypeCode.Double)
                {
                    myProg.AvaregeArithmeticValue(array);
                }
                else
                {
                    Console.WriteLine("Error");
                }
            }
        } // конец Check
 
        public void AvaregeArithmeticValue(double[] array)
        {
            double AvaregeValue = 0;
            double arraySum = array.Sum();
            int arrayLength = array.Length;
 
            AvaregeValue = arraySum / arrayLength;
 
            Console.WriteLine("Сума элементов массива: {0} ", arraySum);
            Console.WriteLine("К-во эл. массива: {0} ", array.Length);
            Console.WriteLine("Среднее арифметическое: {0} ", AvaregeValue);
 
            Console.ReadKey();
        }
    }
}

Решение задачи: «Проверка чисел при вводе»

textual
Листинг программы
static void Main(string[] args)
{
    double[] array = new double[0];
    try 
    {
        array = Console.ReadLine()
                            .Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries)
                              .Select(double.Parse)
                              .ToArray();
    }
    catch(Exception ex)
    { 
        Console.WriteLine("Error:");
        Console.WriteLine(ex.Message);
        Console.ReadLine();
        return;
    }
 
    double AvaregeValue = 0;
    double arraySum = array.Sum();
    int arrayLength = array.Length;
 
    AvaregeValue = arraySum / arrayLength;
 
    Console.WriteLine("Сума элементов массива: {0} ", arraySum);
    Console.WriteLine("К-во эл. массива: {0} ", array.Length);
    Console.WriteLine("Среднее арифметическое: {0} ", AvaregeValue);
 
    Console.ReadKey();
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.067 из 5
Похожие ответы