Harshad or Niven series: Difference between revisions

no edit summary
(→‎{{header|Ruby}}: supported version 2.1 and take(20).to_a -> first(20))
No edit summary
Line 216:
{{out}}
<pre>1 2 3 4 5 6 7 8 9 10 12 18 20 21 24 27 30 36 40 42 1002</pre>
 
=={{header|C++}}==
<lang cpp>#include <vector>
#include <iostream>
 
int quersumme ( int number ) {
int sum = 0 ;
while ( number != 0 ) {
sum += number % 10 ;
number /= 10 ;
}
return sum ;
}
 
bool isHarshad ( int number ) {
return number % ( quersumme ( number ) ) == 0 ;
}
 
int main( ) {
std::vector<int> harshads ;
int i = 0 ;
while ( harshads.size( ) != 20 ) {
i++ ;
if ( isHarshad ( i ) )
harshads.push_back( i ) ;
}
std::cout << "The first 20 Harshad numbers:\n" ;
for ( int number : harshads )
std::cout << number << " " ;
std::cout << std::endl ;
int start = 1001 ;
while ( ! ( isHarshad ( start ) ) )
start++ ;
std::cout << "The smallest Harshad number greater than 1000 : " << start << '\n' ;
return 0 ;
}</lang>
{{out}}
<pre>
The first 20 Harshad numbers:
1 2 3 4 5 6 7 8 9 10 12 18 20 21 24 27 30 36 40 42
The smallest Harshad number greater than 1000 : 1002
</pre>
 
=={{header|Clojure}}==
<lang Clojure>(defn digsum [n acc]
Line 229 ⟶ 272:
<pre>(1 2 3 4 5 6 7 8 9 10 12 18 20 21 24 27 30 36 40 42)
1002</pre>
 
 
 
=={{header|COBOL}}==
262

edits