Поиск в массиве. Ошибка "Оператор "&&" не может применяться к операндам типа "bool" и "double"" - C#
Формулировка задачи:
Найти номер последнего минимального элемента среди положительных четных элементов, лежащих правее первого отрицательного элемента.
В 24 строке :Ошибка 3 Оператор "&&" не может применяться к операндам типа "bool" и "double" , я почему-то думал что вопрос можно решить банально скобками, но...
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _6 { class Program { static void Main(string[] args) { bool b = false; string s; int min = -1; Console.WriteLine("Qty of elements"); s = Console.ReadLine(); int n = int.Parse(s); double[] a = new double[n]; Console.WriteLine("Enter the number: "); for (int i = 0; i < a.Length; i++) { if (a[i] < 0) b = true; if ((b == true)&&(a[i] > 0) && (a[i] % 2) && (a[min] > a[i])) min = i; } Console.WriteLine("минимальный элемент массива {0} /t его номер {1}", a[min], min); } } }
Решение задачи: «Поиск в массиве. Ошибка "Оператор "&&" не может применяться к операндам типа "bool" и "double""»
textual
Листинг программы
using System; namespace _2 { class Program { static void Main(string[] args) { int[] a = { 1, 4, 7, -6, 0, -3, 8, -5, 1, 4, 0, 2, -2 }; int firstNegativeIndex = Array.FindIndex(a, x => x < 0); if (firstNegativeIndex < 0) { Console.WriteLine("Нет отрицательных элементов!"); return; } if (firstNegativeIndex == a.Length - 1) { Console.WriteLine("Нет элементов после первого отрицательного!"); return; } int minIndex = Array.FindIndex(a, firstNegativeIndex + 1, x => (x > 0 && x%2==0)); if (minIndex < 0) { Console.WriteLine("Нет четных положительных элементов после первого отрицательного!"); return; } for (int i = minIndex+1; i < a.Length; i++) { if (a[i] <= a[minIndex] && a[i] > 0 && a[i]%2==0) minIndex = i; } Console.WriteLine("Это номер: " + minIndex); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д