In this HackerRank Day 4 class vs Instance, 30 days of code problem Write a Person class with an instance variable, age, and a constructor that takes an integer, initialAge, as a parameter. The constructor must assign initialAge to age after confirming the argument passed as initialAge is not negative; if a negative argument is passed as initialAge, the constructor should set age to 0 and print Age is not valid, setting age to 0.

## Problem solution in Python 2 programming.

```class Person:
def __init__(self,initialAge):
# Add some more code to run some checks on initialAge
if initialAge < 0:
self.age = 0
print "Age is not valid, setting age to 0."
else:
self.age = initialAge
def amIOld(self):
# Do some computations in here and print out the correct statement to the console
if self.age < 13:
print "You are young."
elif self.age < 18:
print "You are a teenager."
else:
print "You are old."
def yearPasses(self):
# Increment the age of the person in here
self.age += 1```

## Problem solution in Python 3 programming.

```class Person:
def __init__(self,initialAge):
# Add some more code to run some checks on initialAge
if initialAge < 0:
self.age = 0
print("Age is not valid, setting age to 0.")
else:
self.age = initialAge
def amIOld(self):
# Do some computations in here and print out the correct statement to the console
if self.age < 13:
print("You are young.")
elif self.age>=13 and self.age <18:
print("You are a teenager.")
else:
print("You are old.")
def yearPasses(self):
# Increment the age of the person in here
self.age += 1```

### Problem solution in java programming.

```public class Person {
private int age;

public Person(int initialAge) {
if(initialAge < 0){
age = 0;
System.out.println("Age is not valid, setting age to 0.");
}else{
age = initialAge;
}
}

public void amIOld() {
String ans;
if(age < 13){
ans = "You are young.";
}else if(age >= 13 && age < 18){
ans = "You are a teenager.";
}else{
ans = "You are old.";
}
System.out.println(ans);
}

public void yearPasses() {
age += 1;
}```

### Problem solution in c++ programming.

```class Person{
public:
int age ;
Person(int initialAge);
void amIOld();
void yearPasses();
};
Person::Person(int initialAge){
if(initialAge==NULL || initialAge<0){
age=0;
cout<<"Age is not valid, setting age to 0.\n";
}else {
age=initialAge;
}
}
void Person::amIOld(){
if(age<13){
cout<<"You are young.\n";
} else if(age>=13 && age<18){
cout<<"You are a teenager.\n";
} else{
cout<<"You are old.\n";
}

}

void Person::yearPasses(){
age+=1;

}```

### Problem solution in Javascript programming.

```function Person(initialAge){
// Add some more code to run some checks on initialAge
if (initialAge > 0) this.age = initialAge;
else {
this.age = 0;
console.log("Age is not valid, setting age to 0.");
}
this.amIOld=function(){
// Do some computations in here and print out the correct statement to the console
if (this.age < 13) console.log("You are young.");
else if (this.age < 18) console.log("You are a teenager.");
else console.log("You are old.");

};
this.yearPasses=function(){
this.age++;
};
}```