Nesne Tabanlı Programlama-1 (Yaz-2016) Hafta-6/1

package hafta6.main;
import java.util.ArrayList;

import hafta6.fonk.*;
import hafta6.obj.*;

public class calistir extends ortakfonk {
	
	//ogrenci[] ogr = new ogrenci[100];

	ArrayList<ogrenci> ogr = new ArrayList<ogrenci>();
	
	public calistir() {
		
		boolean durum=true;
		do{
			ekranayaz(".::MENU::.", true);
			ekranayaz("1) Öğrenci Tanımla", true);
			ekranayaz("2) Öğrenci Listele", true);
			ekranayaz("3) Öğrenci İşlemleri", true);
			ekranayaz("4) Çıkış", true);
			
			String secim=verigirisi("Seçim Yapınız:");
			
			switch (secim) {
			case "1":
					yeniogrenci();
		 		break;
			case "2":
					ogrencilerilistele();
			break;
			case "3":
					ogrenciislemleri();
			break;
			case "4":
					ekranayaz("Çıkış Yapıldı!", true);
					durum=false;
			break;
			default:
					ekranayaz("Geçerli bir seçim yapmadınız!", true);
				break;
			}
			
		}while(durum);
		
		
	}
	
	private void yeniogrenci()
	{
		ogr.add(new ogrenci());	
	}
	
	private void ogrencilerilistele()
	{
		for(int i =0;i<ogr.size();i++)
		{
			ekranayaz((i+1)+")",false);
			ogrenci o = ogr.get(i);
			o.tanit_ozet();
		}
		
		
	}
	
	private void ogrenciislemleri()
	{
		ogrencilerilistele();
		int secim = verigirisi_int("Öğrenci Seçimi Yapınız:");
		
		if(secim>0 && secim<=ogr.size())
		{
			ogrenci o = ogr.get(secim-1); // ogrenciler 1-2-3, indisler 0-1-2
			o.menu();
		}
		else
			ekranayaz("Geçerli Bir Seçim Yapmadınız!", true);
		
	}

	public static void main(String[] args) {
		new calistir();
	}

}
package hafta6.obj;
import java.util.ArrayList;

import hafta6.fonk.*;

public class ogrenci extends kimlik {
	
	ArrayList<ders> dersler = new ArrayList<ders>();
	ArrayList<kulup> kulupler = new ArrayList<kulup>();
	
	public void menu()
	{
		boolean durum=true;
		do{
			
			ekranayaz(".::"+adi_soyadi+" Menu::.", true);
			ekranayaz("1) Öğrenciyi Tanıt", true);
			ekranayaz("2) Ders Ekle", true);
			ekranayaz("3) Ders Listele", true);
			ekranayaz("4) Kulüp Ekle", true);
			ekranayaz("5) Kulüp Listele", true);
			ekranayaz("6) Ana Menü", true);
			
			String secim=verigirisi("Seçim Yapınız:");
			
			switch (secim) {
			
			case "1": 
				tanit();
			break;
			case "2": 
				 
				dersler.add(new ders());
				
				break;
			case "3": 
				ekranayaz("Ders Listesi", true);
				for(int i =0;i<dersler.size();i++){
					ekranayaz((i+1)+")", false);
					dersler.get(i).detay();
				
					/*ders d = dersler.get(i);
					d.detay();*/
				}
				
					break;
			case "4": 
				kulupler.add(new kulup());
				break;
			case "5": 
				ekranayaz("Kulüp Listesi", true);
				for(int i =0;i<kulupler.size();i++){
					ekranayaz((i+1)+")", false);
					kulupler.get(i).detay();
				}
				break;
			case "6":
					durum=false;
			break;
			default:
					ekranayaz("Geçerli bir seçim yapmadınız!", true);
				break;
			}
			
		}while(durum);
		
	}

}
package hafta6.fonk;

public class ders extends ortakfonk {
	
	String adi;
	public ders() {
		adi=verigirisi("Dersin Adını Giriniz:");
	}
	
	public void detay()
	{
		ekranayaz(adi, true);
	}

}
package hafta6.fonk;

public class kimlik extends ortakfonk  {

	public String adi_soyadi, dogumtar,cinsiyet, okulno;
	
	public kimlik() {
		ekranayaz("Öğrenci Bilgilerini Giriniz:", true);
		adi_soyadi=verigirisi("Öğrencinin Adı Soyadı:");
		dogumtar=verigirisi("Doğum Tarihi(Gün-Ay-Yıl):");
		cinsiyet=verigirisi("Cinsiyet(Bay/Bayan):");
		okulno=verigirisi("Okul No:");
		
	}
	
	public void tanit_ozet()
	{
		ekranayaz(okulno+" // "+adi_soyadi, true);
		
	}
	
	public void tanit()
	{
		ekranayaz("Okul No:"+okulno, true);
		ekranayaz("Adı Soyadı:"+adi_soyadi, true);
		ekranayaz("Doğum Tarihi:"+dogumtar, true);
		ekranayaz("Cinsiyet:"+cinsiyet, true);
		
	}

}
package hafta6.fonk;

public class kulup extends ortakfonk {

	String adi;
	public kulup() {
		adi=verigirisi("Kulüp Adını Giriniz:");
	}
	
	public void detay()
	{
		ekranayaz(adi,true);
	}

}
package hafta6.fonk;
import java.util.*;

public class ortakfonk {
	
	public String verigirisi(String metin)
	{
		Scanner sc = new Scanner(System.in);
		ekranayaz(metin,false);
		return sc.nextLine();
	}
	
	public int verigirisi_int(String metin)
	{
		int veri=0;
		
		boolean durum=true;
		do{
			Scanner sc = new Scanner(System.in);
			try{
				ekranayaz(metin,false);
				veri = sc.nextInt();
				durum=false;
			}catch(Exception ex){
				ekranayaz("Girilen Bilgi Hatalı!", true);
			}
		}
		while(durum);
		return veri; 
	}
	
	public void ekranayaz(String metin, boolean tur)
	{
		if(tur)
			System.out.println(metin); // alt satira gec
		else
			System.out.print(metin); 
	}

}

NTP1 (Yaz-2017) Hafta-6/1

Share