You've successfully subscribed to The Poor Coder | Hackerrank Solutions
Great! Next, complete checkout for full access to The Poor Coder | Hackerrank Solutions
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.
Hackerrank For Loop Solution

Hackerrank For Loop Solution

Beeze Aal
Beeze Aal

A for loop is a programming language statement which allows code to be repeatedly executed.

The syntax for this is

for ( <expression_1> ; <expression_2> ; <expression_3> )
    <statement>
  • expression_1 is used for intializing variables which are generally used for controlling terminating flag for the loop.
  • expression_2 is used to check for the terminating condition. If this evaluates to false, then the loop is terminated.
  • expression_3 is generally used to update the flags/variables.

A sample loop will be

for(int i = 0; i < 10; i++) {
    ...
}

Input Format

You will be given two positive integers,  and  (), separated by a newline.

Output Format.MathJax_SVG_LineBox {display: table!important} .MathJax_SVG_LineBox span {display: table-cell!important; width: 10000em!important; min-width: 0; max-width: none; padding: 0; border: 0; margin: 0}

For each integer  in the interval  :

  • If , then print the English representation of it in lowercase. That is "one" for , "two" for , and so on.
  • Else if  and it is an even number, then print "even".
  • Else if  and it is an odd number, then print "odd".

Note:

Sample Input

8
11

Sample Output

eight
nine
even
odd

Solution in cpp

Approach 1.

#include <iostream>
#include <cstdio>
using namespace std;

const char *digits[] = {"one","two","three","four","five","six","seven","eight","nine"};

int main() {
    // Complete the code.
    int a;
    int b;
    cin >> a;
    cin >> b;
    while(b >= a ){
        if((a >= 1) && (a <= 9))
            cout << digits[a-1] << endl;
        else{
            if( (a % 2) == 0)
                cout << "even" << endl;
            else
                cout << "odd" << endl;          
        }
        ++a;
    }
    return 0;
}

Approach 2.

#include <iostream>
#include <cstdio>
#include <string>
#include <stdexcept>
using namespace std;

int main() {
    // Complete the code.
    int a, b;
    cin >> a;
    cin >> b;
    
    if (a < 1 || b < 1 || a > b)
        throw invalid_argument("invalid input");
    
    string result[9] = {"one", "two", "three", "four", "five", "six", "seven", "eight", "nine"};
    for (int i = a; i <= b; ++i) {
        if (1 <= i && i <= 9)
            cout << result[i-1] << endl;
        else
            cout << ((i & 1) ? "odd" : "even") << endl;
    }
    return 0;
}

Approach 3.

#include <iostream>
#include <cstdio>
using namespace std;

int main() {
    int a,b;
    cin>>a>>b;
    for(int n=a;n<=b;n++){
    if(n==1)
        cout<<"one"<<endl;
    else if(n==2)
        cout<<"two"<<endl;
    else if(n==3)
        cout<<"three"<<endl;
    else if(n==4)
        cout<<"four"<<endl;
    else if(n==5)
        cout<<"five"<<endl;
    else if(n==6)
        cout<<"six"<<endl;
    else if(n==7)
        cout<<"seven"<<endl;
    else if(n==8)
        cout<<"eight"<<endl;
    else if(n==9)
        cout<<"nine"<<endl;
    else if(n%2==0)
        cout<<"even"<<endl;
    else
        cout<<"odd"<<endl;
    }
    return 0;
}