Составить программу подсчета количества "1" в двоичном представлены десятичного числа - C#
Формулировка задачи:
Четные числа прибавляет как надо, а нечетные - не правильно.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace bit2 { class Program { static void Main(string[] args) { int s = 0, i; const int n = 10; int[] a = new int[n]; Random rnd = new Random(); for (i = 0; i < n; i++) a[i] = rnd.Next(0, 255); Console.WriteLine("Массив:"); foreach (int r in a) Console.WriteLine(r); for (i = 0; i < n; i++) { for (int h = 1; h < 128; h++) if (a[i] % (2 * h) == 0) s += 1; if (a[i] % 2 != 0) s += 1; } Console.WriteLine("Количество единиц = {0}", s); //Для проверки int[] bases = { 2 }; foreach (int baseValue in bases) { Console.WriteLine("\nДля проверки:"); foreach (int number in a) Console.WriteLine("{0,-15}\t->\t{1}", number, Convert.ToString(number, baseValue)); } Console.Write("Press any key to continue . . . "); Console.ReadKey(true); } } }
Решение задачи: «Составить программу подсчета количества "1" в двоичном представлены десятичного числа»
textual
Листинг программы
for (i = 0; i < n; i++) { s += Convert.ToString(a[i], 2).Where(x => x == '1').Count(); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д