Vraag C # Hoe te bepalen of een nummer een veelvoud is van een ander?


Zonder gebruik te maken van stringmanipulatie (controleren op een optreden van de . of , karakter) door het product van een int-berekening in string te gieten.

en

zonder gebruik te maken van try / catch-scenario's die steunen op fouten van gegevenstypen.

Hoe controleer je specifiek het gebruik van C # als een nummer een veelvoud is van een ander?

6 is bijvoorbeeld een veelvoud van 3, maar 7 is dat niet.


22
2017-07-09 20:55


oorsprong


antwoorden:


Proberen

public bool IsDivisible(int x, int n)
{
   return (x % n) == 0;
}

De modulus-operator% retourneert de rest na x te delen door n, die altijd 0 zal zijn als x deelbaar is door n.

Zie voor meer informatie de operator% op MSDN.


61
2017-07-09 20:58



Gebruik de modulus (%) operator:

6 % 3 == 0
7 % 3 == 1

12
2017-07-09 20:58



bool isMultiple = a % b == 0;

Dit zal waar zijn als a een veelvoud is van b


12
2017-07-09 20:59



Ik snap dat gedeelte niet van de string-dingen, maar waarom gebruik je de modulo-operator niet (%) om te controleren of een nummer door een ander deelbaar is? Als een getal door een ander deelbaar is, is het andere automatisch een veelvoud van dat getal.

Het gaat zo:

   int a = 10; int b = 5;

   // is a a multiple of b 
   if ( a % b == 0 )  ....

7
2017-07-09 20:58



volgende programma's worden uitgevoerd, "een nummer is een veelvoud van een ander" in

#include<stdio.h>
int main
{
int a,b;
printf("enter any two number\n");
scanf("%d%d",&a,&b);
if (a%b==0)
printf("this is  multiple number");
else if (b%a==0);
printf("this is multiple number");
else
printf("this is not multiple number");
return 0;
}

0
2018-02-03 02:23