使用 C# 中的任何循环,从 0 计数到 20,每行和每个可被 5 整除的数字都有一个消息,有一个特殊的消息
本文关键字:消息 有一个 数字 任何 使用 循环 | 更新日期: 2023-09-27 18:19:06
我目前正在研究循环(for,while和do while(。我了解基础知识,并且能够毫不费力地成功地完成基础知识。我目前正在研究一个超出基础知识的问题,最终结果将显示一条消息("在循环中传递{0}"(,其中显然"{0}"是数字循环。但是,我正在尝试为那些可被 5 整除的数字(5、10、15、20(创建一个单独的消息。我能得到一个方向正确的指针吗?我玩弄了使用"if"语句甚至"foreach"的想法,但自昨天以来一直没有运气找到可能的可行选择,或者根本不知道如何正确表达它。以下是我当前的代码:
static void Main(string[] args)
{
int i = 1;
Console.WriteLine("Do while loop positive numbers");
do
{
Console.WriteLine("Pass {0} in the loop", i++);
} while (i <= 20);
Console.ReadLine();
}
检查余数运算符:%
结合if
语句,您应该已经准备好了。
不会为你写代码,但想给出提示
您可以使用do while loop
内的if condition
来检查它是否divisible by 5
然后显示特殊消息。您可以使用%
运算符来检查该数字是否可以被其他数字整除
static void Main(string[] args)
{
int i = 1;
Console.WriteLine("Do while loop positive numbers");
do
{
Console.WriteLine("Pass {0} in the loop", i++);
//if your number is divisible by 5 then display message
} while (i <= 20);
Console.ReadLine();
}
只需检查它是否可以被 5 整除
if(i%5==0)
Console.WriteLine("{0} is divisible by 5",i);
% 或模块运算符用于获取除法的余数
旁注一下,stackoverflow不是开始编程的好地方,其他网站或教程更有帮助
你应该做:
if (i%5==0)
print your special message
只需使用运算符 % 并检查除法 i % 5 的余数。如果它是 0,则 i 被 5 整除。
要检查一个数字是否可以被另一个数字整除,您可以使用%
或取模运算符,您可以像加法或除法运算符一样使用它,a = c % b
.
模运算符为您提供除法的余数。所以如果你做51 % 5
,你会得到 1 因为 5 进入 51 十次,还剩下一个。因此,如果使用取模运算符并且结果为 0,则第一个数字可被第二个数字整除,没有余数。
因此,您需要做的是设置一个 if 语句来检查 i 的模数是否为 5,或者您需要的任何模。有很多关于 if 语句的教程,所以我不会详细介绍代码。
以下内容将检查 I 是否可以被 5 整除,如果是,则写入控制台。将此添加到您的循环中:
if(i % 5 == 0)
{
Console.WriteLine("{0} is divisible by 5!", i);
}
for
循环
for( int i = 0; i <= 20; i++ )
{
if( i % 5 == 0 && i > 0 )
{
Console.WriteLine( "{0} is divisible by 5.", i );
}
}
做...虽然等效
int x = 0;
do
{
if( x % 5 == 0 && x > 0 )
{
Console.WriteLine( "{0} is divisible by 5.", x );
}
x++;
}
while( x <= 20 );
请注意,我更喜欢从零开始循环,除非有充分的理由这样做。索引在 .NET 中从零开始,并且 (IMO( 最好编写遵循该模式的代码。
正如大家所指出的,这里重要的是模运算符(%
(。
http://msdn.microsoft.com/en-us/library/0w4e0fzs.aspx
有关 .NET 模运算符实际上是余数运算符的原因的完整细分:
http://blogs.msdn.com/b/ericlippert/archive/2011/12/05/what-s-the-difference-remainder-vs-modulus.aspx
尝试在 if
语句中使用 %
运算符。
if((i%5) == 0)
divisible by 5 message
else
the regular message
using System;
namespace loop
{
class Program
{
static void Main(string[] args)
{
int i= 1;//start
while (i<=20)
{
Console.WriteLine(i);
i++;
}
Console.ReadKey();
}
}
}
只是以更简单的方式看待问题的另一种方式