Программирование на языке java. лабораторная работа.

a. определить, является ли сумма цифр числа «n» двузначным числом.

б. составить алгоритм, который, зависимо от порядкового номера месяца (1, ), определяет время года, к которому относится этот месяц.

в. определить, являются ли первая и вторая цифры числа «n» цифрой «a».

г. известны год, номер месяца и день рождения каждого из двух людей. определить, кто из них старше.

PhoenixStep PhoenixStep    2   10.09.2019 22:16    0

Ответы
mayer3 mayer3  16.08.2020 13:53

Для В допустим, что слева направо.

class BirthDate{

private int day;

private int month;

private int year;

 

BirthDate(int day, int month, int year){

 this.day = day;

 this.month = month;

 this.year = year;

}

public int getDay() {

 return day;

}

public void setDay(int day) {

 this.day = day;

}

public int getMonth() {

 return month;

}

public void setMonth(int month) {

 this.month = month;

}

public int getYear() {

 return year;

}

public void setYear(int year) {

 this.year = year;

}

 

public boolean isOlder(BirthDate bd) {

 return this.year >= bd.getYear() && this.month >= bd.getMonth()  && this.day > bd.getDay();

}

}

class Human{

private BirthDate birthDate;

private String name;

 

Human(String name, BirthDate birthDate){

 this.birthDate = birthDate;

 this.name = name;

}

 

public BirthDate getBirthDate(){

 return this.birthDate;

}

 

public void setBirthDate(BirthDate bd) {

 this.birthDate = bd;

}

 

public String getName(){

 return this.name;

}

 

public void setName(String name) {

 this.name = name;

}

}

public class Task {

 

private static boolean isSumNumberTwoDecimal(int number) {

 int sum = 0;

 while(true) {

  sum += number % 10;

  number /= 10;

  if(number < 1) {

   break;

  }

 }

 return sum < 100;

}

 

private static String whichSeason(int month) {

 if(month >= 1 && month <= 2 && month == 12) {

  return "Winter";

 } else if(month >= 3 && month <= 5) {

  return "Spring";

 } else if(month >= 6 && month <= 8) {

  return "Summer";

 } else if(month >= 9 && month <= 11){

  return "Autumn";

 } else {

  return "There's no such month";

 }

}

 

private static boolean isSameFirstAndSecond(int number, int numeral){

 String sNbr = String.valueOf(number).substring(0, 2);

 return Integer.valueOf(sNbr) == numeral;

}

 

private static boolean isOlder(Human h1, Human h2) {

 return h1.getBirthDate().isOlder(h2.getBirthDate());

}

 

public static void main(String[] args) {

 int number = 2939393;

 System.out.println(isSumNumberTwoDecimal(number));

 //Month and date has correct values

 int month = 10;

 Human vasya = new Human("Vasya", new BirthDate(1, month, 1990));

 Human natalia = new Human("Natalia", new BirthDate(1, month, 1989));

 System.out.println(isOlder(vasya, natalia));

 System.out.println(whichSeason(month));

 System.out.println(isSameFirstAndSecond(number, 29));

}

}

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика