LIFO NEDIR ?
KISACA BIR MESELA BOZULMAYAN URUNLER ICIN. FABRIKALARDA MESELA. CEKIC ICIN .. MESELA MANTIGI ANLATIYIM.. ORNEKTIR
10 TANE RENKLI CEKIC VARDIR VE SIRA SIRA KUTUYA DIZERSIN.. TABI HEPSI NUMARALI SIRA SIRA.. KUTUDAN GERI CIKARDIGINDA.. MANTIK SUDUR (LAST IN - FIRST OUT) TURKCESI (SON GIREN ILK CIKAR) ORNEGIMDENDE ANLATIGIM GIBI.. BASIT OLMASADA ANLAYINCA.. KOLAY OLACAKTIR.. STACK EKLEME CIKARMA .. VE ALGORITMA UZERINDE..BURADA TEK DEGISKEN UZERINDEN ANLATMAYA CALISTIK...
DAHA ONCEDE ACIKLADIM HEADER NEDIR NASIL OLUSTURLUR.. OYUZDEN BURADA 2 CPP 1 ADET HEADER OLUSTURUCAZ 3 AYRI CODE SAYFASI MANTIGINDA EKLIYECEM (BUYUK PROGRAM MANTIGINDA YANE).
BU HEADER FILEMIZ
Kod:
#ifndef LIFO_H_ #define LIFO_H_ typedef unsigned long Item; class Stack ; // BURADA ASLINDA ENUMUN KULLANIM AMACI DIZININ ELEMAN SIRINI KOYMAK ICIN... (IDEX) ICIN.. Item items[MAX]; int top; // BU DEGISKEN SAYESINDE STACTAKI.. YUKLEME CIKARMA OLAYINI GERCEKLESTIRECEZ... public: Stack(); // CONSTRUCTURUMUZ... bool isempty() const; // GERI DONUS TIPLERIMIZ HEP TRUE VE FALSE OLACAGI ICIN... BOOL KULLANACAGIZ.. VE BOS KONTROLU ETME.. bool isfull()const; // DOLU KONTROL ETME.. bool push(const Item & item); // ELEMAN EKLEME... bool pop(Item & item); // STACK EN SONUNCU ELEMENINI SILMEK ICIN.. }; #endif
BU CPP METOTLARIMIZ..
Kod:
#include "stdafx.h" #include #include "LIFO.H" // HEADER ISIMINI YUKARDAKI HEADERDAN DEGISTIREBILIRSINIZ KENDINIZE GORE.. BURADA METOTLARI KULLANMAK ICIN 2 CI CPPYE METOTLARIN ATAMALARINI VE FUCTION ISLEMLERINI YAPTIK... using namespace std; Stack::Stack() // CONSTRUCTURUMUZA YANE BASLANGICTA NESNEYE ATANACAK.. DEGER SADECE BIR DEGISKEN DEGERI VAR ONADA 0 ATANACAK... bool Stack::isempty()const // BURADA KONTROL YAPILIYOR.. STACK YANE (DEPOMUZ) BOSMU...BOS ISE TRUE RETURN EDIOR YANLIS ISE FALSE RETURN EDIYOR... bool Stack::isfull()const // BURADA INDEX UZUNLUGU KADAR GIREBILICEGIMIZ ICIN STACKA FULL ISE TRUE DEGIL ISE FALSE RETURN EDIYOR.. bool Stack:


__________________