Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.10.2016, 19:06   #1
ShuricFC
Пользователь
 
Регистрация: 17.09.2016
Сообщений: 25
По умолчанию Абстрактный класс Persona

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

Код:
import javax.xml.crypto.Data;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Calendar; 
import java.util.Scanner; 

//Создание абстрактного класса Persona
abstract class Persona { 
		String name; 
		int day; 
		int month; 
		int year; 
 int get_year()
 { return year; }
 
 int get_day()
 {return day;}
 int get_month()
 {return month;}
	public int age (int day, int month,int year){ 
		Calendar calendar = Calendar.getInstance(); 
		int month_of_year = calendar.get(Calendar.MONTH); 
		int day_of_month = calendar.get(Calendar.DAY_OF_MONTH); 
		int Year = calendar.get(Calendar.YEAR); 
	if ((month>month_of_year) || (month==month_of_year) && (day>day_of_month)){ 
		return Year-year-1; } 
		else { 
			return Year-year;
			} 
} 

	public void Show_information(){ 
		System.out.println("Name: " + this.name); 
		System.out.println("DateOfBirth: " + this.day+this.month+this.year);
		System.out.println("Age: " + this.age(day,month,year)); 
	}
} 
//Создание проивзодного класса Abiturient 
class Abiturient extends Persona{ 
		private String surname; 
		private int day; 
		private int month; 
		private int year; 
		private String faculty; 

	Abiturient(String surname, int day, int month, int year, String faculty) { 
	super();
	this.surname = surname; 
	this.day = day; 
	this.month = month; 
	this.year = year; 
	this.faculty = faculty; 
} 
	public void Show_information() { 
		System.out.println("Фамилия:" + this.surname); 
		System.out.println("Дата рождения: " + this.day + "." + this.month + "." +this.year); 
		System.out.println("Возраст: " +this.age(day,month,year)); 
		System.out.println("Факультет: " + this.faculty); 
	} 
} 

//Создание проивзодного класса Student
class Student extends Persona{ 
		private String surname; 
		private int day; 
		private int month; 
		private int year; 
		private String faculty; 
		private int course; 

	Student(String surname, int day, int month,int year ,String faculty, int course) { 
	super(); 
	this.surname = surname; 
	this.day = day; 
	this.month = month; 
	this.year = year; 
	this.faculty = faculty; 
	this.course = course; 
} 
	public void Show_information() { 
		System.out.println("Фамилия:" + this.surname); 
		System.out.println("Дата рождения: " + this.day + "." + this.month + "." +this.year); 
		System.out.println("Возраст: " +this.age(day,month,year)); 
		System.out.println("Факультет: " + this.faculty); 
		System.out.println("Курс: " + this.course); 
	} 
} 
//Создание проивзодного класса Proffessor
class Lecturer extends Persona{ 
	private String surname; 
	private int day; 
	private int month; 
	private int year; 
	private String faculty; 
	private String position; 
	private int work_experience; 
	
	Lecturer(String surname, int day,int month,int year, String faculty, String position, int work_experience) { 
	super(); 
	this.surname = surname; 
	this.day = day; 
	this.month = month; 
	this.year = year; 
	this.faculty = faculty; 
	this.position = position; 
	this.work_experience = work_experience; 
} 
	public void Show_information() { 
		System.out.println("Фамилия:" + this.surname); 
		System.out.println("Дата рождения: " + this.day + "." + this.month + "." +this.year); 
		System.out.println("Возраст: " +this.age(day,month,year)); 
		System.out.println("Факультет: " + this.faculty); 
		System.out.println("Должность: " + this.position); 
		System.out.println("Опыт работы: " + this.work_experience); 
	} 
}
public class Pe {
	public static  void main (String args[]){ 
		Scanner in = new Scanner(System.in); 
		BufferedReader br = new BufferedReader (new InputStreamReader(System.in));
		int n,a,k,i,d,m,y;
		String s;
		System.out.println("Введите количество экземпляров");
		n=in.nextInt();
		Persona[] p= new Persona[n]; 
		System.out.println("1-Абитуриент, 2-Студент, 3-Преподователь");	
        for (i = 0; i < n; i++){
        	System.out.println("Введите номер персоны");	
        a=in.nextInt();
            switch (a)
            {  
            case 1:{
            	System.out.println("Введите фамилию абитуриента");
	            s =in.next();
	            String name = s;
	            System.out.println("Введите день рождения абитуриента:");
	            k =in.nextInt() ;
	            int day = k;
	            System.out.println("Введите месяц рождения абитуриента:");
	            k = in.nextInt();
	            int month = k;
	            System.out.println("Введите год рождения абитуриента:");
	            k = in.nextInt();
	            int year = k;
	            System.out.println("Введите факультет абитуриента");
	            s = in.next();
	            String faculty  = s;
	            p[i] = new Abiturient (name,day,month, year, faculty);
	            break;        }
		
            case 2:{
            	System.out.println("Введите фамилию студента");
		        s = in.next();
		        String name = s;
		        System.out.println("Введите день рождения студента:");
		        k =in.nextInt() ;
		        int day = k;
		        System.out.println("Введите месяц рождения студента:");
		        k = in.nextInt();
		        int month = k;
		        System.out.println("Введите год рождения студента:");
		        k = in.nextInt();
		        int year = k;
		        System.out.println("Введите факультет студента");
		        s = in.next();
		        String faculty  = s;
		        System.out.println("Введите курс студента:");
		        k = in.nextInt();
		        int course = k;
		        p[i] = new Student (name,day,month, year,faculty,course);
		        break;
		        }

            case 3:{
            	System.out.println("Введите фамилию преподователя");
		        s = in.next();
		        String name = s;
		        System.out.println("Введите день рождения преподователя:");
		        k =in.nextInt() ;
		        int day = k;
		        System.out.println("Введите месяц рождения преподователя:");
		        k = in.nextInt();
		        int month = k;
		        System.out.println("Введите год рождения преподователя:");
		        k = in.nextInt();
		        int year = k;
		        System.out.println("Введите факультет, на котором работает преподователь");
		        s = in.next();
		        String faculty  = s;
		        System.out.println("Введите должность реподователя");
		        s = in.next();
		        String position  = s;
		        System.out.println("Введите стаж работы преподователя:");
		        k = in.nextInt();
		        int work_experience = k;
		        p[i] = new Lecturer (name,day,month, year,faculty, position,work_experience);
		        break;
		        }
            default: {  System.out.println("----------------------------------ERROR-----------------------------------"); break; }
            }
        }
		for (i=0; i<n; i++){
		p[i].Show_information(); 
		System.out.println("_____________________________"); 
      }
		int d1,d2;
		System.out.println("Введите начало диапазона: "); 
		d1=in.nextInt();
		System.out.println("Введите конец диапазона: "); 
		d2=in.nextInt();
		Calendar calendar = Calendar.getInstance(); 
		int Year = calendar.get(Calendar.YEAR); 
		for (i=0; i<n; i++){
			System.out.println("Возраст: " +p[i].age(p[i].get_day(), p[i].get_month(), p[i].get_year())); 
		
				
		}
}}
ShuricFC вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Абстрактный класс Сырги C# (си шарп) 3 22.11.2012 01:13
абстрактный класс meta13 C# (си шарп) 2 22.03.2012 19:14
c# абстрактный класс tanek Помощь студентам 1 22.02.2012 11:23
абстрактный класс С++ zhenya.ya Помощь студентам 0 05.11.2010 20:23
Наследование: абстрактный класс zak Общие вопросы C/C++ 4 22.12.2007 13:49