Write a short program that prints each number from 1 to n on a new line.
- For each multiple of 3, print “Multiple of 3” instead of the number.
- For each multiple of 5, print “Multiple of 5” instead of the number.
- For numbers which are multiples of both 3 and 5, print “Multiple of 3. Multiple of 5.” instead of the number.
Examples:
Input : 15 Output : 1 2 Multiple of 3. 4 Multiple of 5. Multiple of 3. 7 8 Multiple of 3. Multiple of 5. 11 Multiple of 3. 13 14 Multiple of 3. Multiple of 5.
The idea is iterate from 1 to n and keep track of multiples of 3 and 5 by adding 3 and 5 to current multiple. If current number matches with a multiple, we update our output accordingly.
C++
// C++ program to print multiples // of 3 and 5 without using % operator. #include <iostream> using namespace std;
void findMultiples( int n)
{ int a = 3; // To keep track of multiples of 3
int b = 5; // To keep track of multiples of 5
for ( int i = 1; i <= n; i++)
{
string s = "" ;
// Found multiple of 3
if (i == a)
{
a = a + 3; // Update next multiple of 3
s = s + "Multiple of 3. " ;
}
// Found multiple of 5
if (i == b)
{
b = b + 5; // Update next multiple of 5
s = s + "Multiple of 5." ;
}
if (s == "" )
cout << (i) << endl;
else
cout << (s) << endl;
}
} // Driver Code int main()
{ findMultiples(20);
return 0;
} // This code is contributed // by Sach_Code |
Java
// Java program to print multiples of 3 and // 5 without using % operator. import java.io.*;
class GFG
{ static void findMultiples( int n)
{
int a = 3 ; // To keep track of multiples of 3
int b = 5 ; // To keep track of multiples of 5
for ( int i= 1 ; i<=n; i++)
{
String s = "" ;
// Found multiple of 3
if (i==a)
{
a = a + 3 ; // Update next multiple of 3
s = s + "Multiple of 3. " ;
}
// Found multiple of 5
if (i==b)
{
b = b+ 5 ; // Update next multiple of 5
s = s + "Multiple of 5." ;
}
if (s == "" )
System.out.println(i);
else System.out.println(s);
}
}
public static void main (String[] args)
{
findMultiples( 20 );
}
} |
C#
// C# program to print multiples of 3 and // 5 without using % operator. using System;
public class GFG {
static void findMultiples( int n)
{
// To keep track of multiples of 3
int a = 3;
// To keep track of multiples of 5
int b = 5;
for ( int i = 1; i <= n; i++)
{
String s = "" ;
// Found multiple of 3
if (i == a)
{
// Update next multiple of 3
a = a + 3;
s = s + "Multiple of 3. " ;
}
// Found multiple of 5
if (i == b)
{
// Update next multiple of 5
b = b + 5;
s = s + "Multiple of 5." ;
}
if (s == "" )
Console.WriteLine(i);
else
Console.WriteLine(s);
}
}
// Driver code
public static void Main ()
{
findMultiples(20);
}
} // This code is contributed by Sam007. |
PHP
<?php // PHP program to print multiples // of 3 and 5 without using % operator. function findMultiples( $n )
{ $a = 3; // To keep track of multiples of 3
$b = 5; // To keep track of multiples of 5
for ( $i = 1; $i <= $n ; $i ++)
{
$s = "" ;
// Found multiple of 3
if ( $i == $a )
{
$a = $a + 3; // Update next multiple of 3
$s = $s . "Multiple of 3. " ;
}
// Found multiple of 5
if ( $i == $b )
{
$b = $b + 5; // Update next multiple of 5
$s = $s . "Multiple of 5." ;
}
if ( $s == "" )
echo ( $i ). "\n" ;
else
echo ( $s ). "\n" ;
}
} // Driver Code findMultiples(20); // This code is contributed // by Akanksha Rai(Abby_akku) |
Javascript
<script> // JavaScript program for the above approach function findMultiples(n)
{
let a = 3; // To keep track of multiples of 3
let b = 5; // To keep track of multiples of 5
for (let i=1; i<=n; i++)
{
let s = "" ;
// Found multiple of 3
if (i==a)
{
a = a + 3; // Update next multiple of 3
s = s + "Multiple of 3. " ;
}
// Found multiple of 5
if (i==b)
{
b = b+5; // Update next multiple of 5
s = s + "Multiple of 5." ;
}
if (s == "" ) {
document.write(i);
document.write( "<br />" );
}
else {
document.write(s);
document.write( "<br />" );
}
}
}
// Driver Code findMultiples(20);
// This code is contributed by susmitakundugoaldanga.
</script> |
Python3
# Python 3 program to print multiples # of 3 and 5 without using % operator. def findMultiples(n):
a = 3 # To keep track of multiples of 3
b = 5 # To keep track of multiples of 5
for i in range ( 1 ,n + 1 ):
s = ""
# Found multiple of 3
if (i = = a):
a = a + 3 # Update next multiple of 3
s = s + "Multiple of 3. "
# Found multiple of 5
if (i = = b):
b = b + 5 # Update next multiple of 5
s = s + "Multiple of 5."
if (s = = ""):
print (i)
else :
print (s)
# Driver Code if __name__ = = '__main__' :
findMultiples( 20 )
|
Output:
1 2 Multiple of 3. 4 Multiple of 5. Multiple of 3. 7 8 Multiple of 3. Multiple of 5. 11 Multiple of 3. 13 14 Multiple of 3. Multiple of 5. 16 17 Multiple of 3. 19 Multiple of 5.
Time Complexity: O(N)
Auxiliary Space: O(1)
Recommended Articles