Задать вопрос

Обработка одномерных массивов, как доработать код?

Привет, помогите, не могу разобраться с массивами.

Что есть: Вводим 10 случайных чисел, после программа находит и показывает последнее положительное число в набранном списке. Если чисел нет, показывается сообщение, что их нет.

Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace massiv
{
    class Program
    {
        static void Main(string[] args)
        {
            uint i = 0;
            double[] m = new double[10];
            bool q = false;

            Console.WriteLine("Введите 10 элементов массива:");

            do
            {
                Console.Write(" № "+(i+1)+": = ");
                m[i] = Convert.ToDouble(Console.ReadLine());
                i++;
            }
            while (i < 10);

            for (i = 0; i < 10; i++)
            {
                if (m[i] > 0)
                {
                    Console.Write("Последнее положительное число в массиве - " + m[i] + " имеет номер - "+(i+1));
                    q = true;
                    break;
                }
            }

            if (q == false) { Console.Write("Нет положительных чисел"); }

            Console.ReadLine();
        }
    }
}


Вопрос: как определить и вывести значение последнего по порядку положительного элемента?
  • Вопрос задан
  • 305 просмотров
Подписаться 2 Простой Комментировать
Ответ пользователя Дмитрий Павлов К ответам на вопрос (7)
int count=0;
double number,value;
value=-3;
number=value;
while(count<m.Lenght){//выполнять пока не дошли до конца массива
if(m[count]>0){
value=m[count];//его значение
number=count;//номер элемента
}
count++;
}
if(number==-3){
Console.Write("Нет положительных чисел"); 
}
else{
Console.Write("Последнее положительное число в массиве - " + value+ " имеет номер - "+number);
                    
}
Ответ написан
Комментировать