Найти сумму элементов массива, расположенных после последнего элемента, равного нулю - C# (192227)

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

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

Было задание : В одномерном массиве , состоящем из п действительных элементов , вычислить : количество положительных элементов массива ; сумму элементов массива , расположенных после последнего элемента равного нулю. Превратить массив таким образом , чтобы сначала располагались все элементы , целая часть которых не превышает единицу , а затем - все остальные. Проблема с последним : Превратить массив таким образом , чтобы сначала располагались все элементы , целая часть которых не превышает единицу , а затем - все остальные. Помогите кто-то please . Очень нужно. Вот код : (сортировка должна ити отдельным методом)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            C2 l = new C2();
            l.meji();
            l.vvid();
            l.getelevent();
            l.suma();
            l.kikist();
            l.vuvid();
            Console.ReadLine();
        }
        }
    class C1
    {
        public double s, x;
        public int k, n, i, u, j, c, b, aindex, y;
        public double[] a = new double[1000];
        public bool error;
 
        public void meji()
        {
 
            Console.WriteLine("Введіть c");
            c = Convert.ToInt32(Console.ReadLine());
 
            Console.WriteLine("Введіть b");
            b = Convert.ToInt32(Console.ReadLine());
            n = b - c + 1;
        }
 
        public void vvid()
        {

            for (i = 0; i < n; i++)
            {
                Console.WriteLine("a" + "[" + (i+c) + "]=");
                a[i] = Convert.ToDouble(Console.ReadLine());
            }

        }
 
        public void vuvid()
        {
            for (i = 0; i < n; i++)
            {
                Console.WriteLine("a[" + (i+c) + "]=" +a[i]);
            }
        }
 
    }
 
    class C2 : C1
    {
        public void kikist()
        {
            for (i = 0; i < n ; i++)
            {
                if (a[i]>0)
                {
                    k++;
                    }
            }
            Console.WriteLine("kikist=" + k);
 
        }
        public void suma()
        {
            j = 0;
            s = 0;
            for (i = 0; i < n; i++)
            {
                if (a[i] == 0)
                {
                    j = i;
                }
            }
            for (i = j; i < n; i++)
                s += a[i];
            Console.WriteLine("Summa=" + s);
        }
        
        public double this[int index]
        {
            set
            {
                if(index>=c && index>=b)
                {
                    error=false;
                    a[index]=value;
                }
                else error = true;
            }
            get
            {
                if (index >= c && index <= b)
                {
                    error = false;
                    return a[index - c];
 
                }
                else
                {
                    error = true;
                    return 0;
                }

            }
        }
        public void getelevent()
        {
            Console.WriteLine("aindex=");
            aindex = Convert.ToInt32(Console.ReadLine());
            x = this[aindex];
            if (error==true)
                Console.WriteLine("елемент не існує");
            else Console.WriteLine("a[" +aindex +"]=" +x);

        }
 
        }

Решение задачи: «Найти сумму элементов массива, расположенных после последнего элемента, равного нулю»

textual
Листинг программы
using System;
 
namespace ConsoleApplication185
{
    class Program
    {
        static void Main(string[] args)
        {
            var array = new double[] {3, 4, -0.6, -2.1, 1, 0.3, 0.1, 2.4};
            Array.Sort(array, (f1, f2) =>(Math.Abs(f1) > 1).CompareTo(Math.Abs(f2) > 1));
 
            Console.WriteLine(string.Join(", ", array));
            Console.ReadLine();
        }
    }
}

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


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

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

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