Вывод положительных значений массива - C#
Формулировка задачи:
Доброго времени суток. Возникла проблема с выводом положительных значений массива:
В данном элементе кода я отчетливо вижу ошибку:
Но даже не могу предположить как ее разрешить. Оператор if-else проверяет принадлежность всех элементов массива к натуральным числам, если число проходит проверку, то оно выводится на экран, если же элемент массива равен или меньше 0, то я должен пропустить этот шаг цикла и перейти к проверке следующего элемента, так вот отсюда и возникает вопрос - как это реализовать?
int[] mas = new int[100];
int i = 0;
string q;
int count = 0;
Console.Write("Введите значения массива, после ввода каждого из значений нажмите кнопку Return:");
do
{
q = Console.ReadLine();
if (q == "555") break;
mas[i] = Convert.ToInt32(q);
i++; count++;
}
while (true);
Console.Write("Вывод: ");
{
for (int j = 0; j < count; j++)
{
if (mas[i] >= 0)
{
Console.Write("{0} ", mas[j]);
}
else
{
continue;
}
}
}
Console.ReadLine();
for (int j = 0; j < count; j++)
{
if (mas[i] >= 0)
{
Console.Write("{0} ", mas[j]);
}
else
{
continue;
}
}Решение задачи: «Вывод положительных значений массива»
textual
Листинг программы
using System;
class Program
{
static void Main(string[] args)
{
Console.Write("length : ");
int[] arr = new int[int.Parse(Console.ReadLine())];
Console.WriteLine("filling : ");
for(int i = 0; i < arr.Length; i++)
{
Console.Write("[{0}] = ",i);
arr[i] = int.Parse(Console.ReadLine());
}
Console.WriteLine("positive elements : ");
foreach (int i in arr) if (i > 0) Console.Write(i + " ");
Console.ReadKey(true);
}
}