static void Main(string[] args)
{
int m, count = 0;
Console.WriteLine("Enter the Limit : ");
m = int.Parse(Console.ReadLine());
int[] a = new int[m];
Console.WriteLine("Enter the Numbers :");
for (int i = 0; i < m; i++)
{
a[i] = Convert.ToInt32(Console.ReadLine());
}
foreach (int o in a)
{
if (o == 1)
{
count++;
}
}
Console.WriteLine("Number of 1s in the Entered Number : "+count);
Console.ReadLine();
}
यहां प्रत्येक मान को सरणी में प्राप्त करें, और जांचें कि प्रत्येक मान एक के बराबर नहीं है। लेकिन मुझे सरणी का उपयोग किए बिना इस कार्य की आवश्यकता है। क्या आप कृपया हमारी मदद कर सकते हैं।
5 जवाब
दर्ज किए जाने पर बस इनपुट की जांच करें, इसे संग्रहीत किए बिना:
static void Main(string[] args)
{
int m, count = 0;
Console.WriteLine("Enter the Limit : ");
m = int.Parse(Console.ReadLine());
Console.WriteLine("Enter the Numbers :");
for (int i = 0; i < m; i++)
{
if(Console.ReadLine() == "1")
count++;
}
Console.WriteLine("Number of 1's in the Entered Number : "+count);
Console.ReadLine();
}
आप बस एक गिनती रख सकते हैं जहाँ आप इसे सरणी में जोड़ते हैं
int m, count = 0;
Console.WriteLine("Enter the Limit : ");
m = int.Parse(Console.ReadLine());
Console.WriteLine("Enter the Numbers :");
for (int i = 0; i < m; i++)
{
count += Console.ReadLine() == "1" ? 1 : 0;
}
Console.WriteLine("Number of 1's in the Entered Number : "+count);
Console.ReadLine();
आप LINQ का उपयोग कर सकते हैं और for
लूप और साथ ही सरणी को हटा सकते हैं।
Console.WriteLine("Enter the Limit : ");
int m = int.Parse(Console.ReadLine());
Console.WriteLine("Enter the Numbers :");
int count =
Enumerable
.Range(0, m)
.Select(n => Console.ReadLine())
.Where(x => x == "1")
.Count();
Console.WriteLine("Number of 1's in the Entered Number : " + count);
Console.ReadLine();
मैं अधिक सार्थक चर नामों का उपयोग करने और Convert.ToInt32
के बजाय इनपुट सत्यापन Int32.TryParse
जोड़ने की सलाह दूंगा।
बस पहले for
में if (o == 1)
चेक इन करें और दूसरे को भूल जाएं।
आप सरणी के बजाय सूची का उपयोग कर सकते हैं। कोड यहाँ है
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace NumberofOnes
{
public class Program
{
static void Main(string[] args)
{
int m, count = 0;
Console.WriteLine("Enter the Limit : ");
m = int.Parse(Console.ReadLine());
List<int> a = new List<int>();
Console.WriteLine("Enter the Numbers :");
for (int i = 0; i < m; i++)
{
a.Add( Convert.ToInt32(Console.ReadLine()));
}
foreach (int o in a)
{
if (o == 1)
{
count++;
}
}
Console.WriteLine("Number of 1's in the Entered Number : " + count);
Console.ReadLine();
}
}
}
संबंधित सवाल
नए सवाल
c#
C # (उच्चारण "तेज देखें") Microsoft द्वारा विकसित एक उच्च स्तरीय, सांख्यिकीय रूप से टाइप किया हुआ, बहु-प्रतिमान प्रोग्रामिंग भाषा है। C # कोड आमतौर पर Microsoft के .NET परिवार के टूल और रन-टाइम को लक्षित करता है, जिसमें .NET फ्रेमवर्क, .NET कोर और Xamarin अन्य शामिल हैं। C # या C # के औपचारिक विनिर्देश में लिखे गए कोड के बारे में प्रश्नों के लिए इस टैग का उपयोग करें।
m
अलग-अलग नंबर दर्ज कर सकता है, उदाहरण के लिए1
लेकिन12
या111
भी। तो केवल एक एकल संख्या के साथ भी1
की संख्या कहीं अधिक हो सकती है 1. तो क्या आप सभी1
को सभी संख्याएं, या उपयोगकर्ता को प्रति संख्या केवल एक अंक दर्ज करने तक सीमित करें, जिसका अर्थ केवल 0 से 9 तक की संख्याएं हैं? दूसरे शब्दों में: क्या होता है यदि आपका उपयोगकर्ता2
के लिएm
और फिर1234
और1111
वास्तविक संख्याओं के लिए प्रवेश करता है? क्या आउटपुट2
या5
होगा?