Rumah >pembangunan bahagian belakang >Tutorial C#.Net >Program C# untuk menyemak sama ada terdapat K berturut-turut 1 dalam nombor binari
Untuk menyemak sama ada terdapat 1 berturut-turut dalam nombor binari, anda perlu menyemak 0 dan 1.
Mula-mula, tetapkan tatasusunan bool untuk 0 dan 1 iaitu palsu dan benar -
bool []myArr = {false, true, false, false, false, true, true, true};
Untuk 0, tetapkan kiraan kepada 0 -
if (myArr[i] == false) count = 0;
Untuk 1, naikkan kiraan dan tetapkan hasilnya. Kaedah Max() mengembalikan dua nombor yang lebih besar -
count++; res = Math.Max(res, count);
Berikut ialah contoh menyemak jika terdapat K 1 berturut-turut dalam nombor binari -
Demonstrasi Langsung
using System; class MyApplication { static int count(bool []myArr, int num) { int myCount = 0, res = 0; for (int i = 0; i < num; i++) { if (myArr[i] == false) myCount = 0; else { myCount++; res = Math.Max(res, myCount); } } return res; } public static void Main() { bool []myArr = {false, true, false, false, false, true, true, true}; int num = myArr.Length; Console.Write("Consecutive 1's = "+count(myArr, num)); } }
Consecutive 1's = 3
Atas ialah kandungan terperinci Program C# untuk menyemak sama ada terdapat K berturut-turut 1 dalam nombor binari. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!