• 28 Mart 2024 18:31

Sait ORHAN

Öğretmek için Öğrenin- Öğrenmek için Öğretin

void TepeyeElemanEkle(void);

BySait ORHAN

Kas 4, 2011

Yığına eleman eklemek için yeni alan tahsis edilir. Yeni elemanın numarası alındıktan sonra numara analiz edilerek kayıt olabilirliği sınanır daha sonra numara YiginiTara() metoduna gönderilerek daha önce kayıt yapmamış olduğu doğrulanır. Numara bu testlerden geçtikten sonra yeni elemanın sonrakine yığını tepesi değeri atanır ve yeni eleman da yığın tepesi olarak değiştirilir.

[cpp]

void Yigin::TepeyeElemanEkle(void)
{
int secim=1;
while(secim==1)
{
YiginVerileri *Eklenecek = new YiginVerileri();
if(Eklenecek)
{
cout << "Yeni Ogrencinin Numarasini Giriniz: ";
cin >> Eklenecek->numara;
if(YiginiTara(Eklenecek->numara))
{
cout << Eklenecek->numara << " ile daha once kayit alinmistir. Numarayi Kontrol ediniz!\n";
continue;
}
Eklenecek->BolumBelirle();
for(;Eklenecek->numara/1000 >= 20 || Eklenecek->numara/1000 < 10;)
{
cout << "Hatali Numara Girisi! Numarayi Tekrar Giriniz.\n";
cout << "Yeni Ogrencinin Numarasini Giriniz: ";
cin >> Eklenecek->numara;
if(YiginiTara(Eklenecek->numara))
{
cout << Eklenecek->numara << " ile daha once kayit alinmistir. Numarayi Kontrol ediniz!\n";
Eklenecek->numara = 0;
continue;
}
}
Eklenecek->BolumBelirle();
cout << "Yeni Ogrencinin Adi ve Soyadini Giriniz: ";
cin >> Eklenecek->isim; cin >> Eklenecek->soyisim;
}
//Eklenecek Eleman Yığınınn ilk elemanı ise
if(YiginTepesi==NULL)
{
YiginTepesi = Eklenecek;
YiginTepesi->sonraki = NULL;
}
else
{
Eklenecek->sonraki = YiginTepesi;
YiginTepesi = Eklenecek;
}
cout << "\nYeni Ogrenci Girisi Basarili. Yeni Giris Icin 1 e basiniz.\n"
"Cikmak Icin 1 Disinda Rakam Giriniz.Seciminiz: ";
cin>>secim;
cout<<endl;
}
}

[/cpp]

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.