当前位置: 首页>>代码示例>>C++>>正文


C++ Pila::esVacia方法代码示例

本文整理汇总了C++中Pila::esVacia方法的典型用法代码示例。如果您正苦于以下问题:C++ Pila::esVacia方法的具体用法?C++ Pila::esVacia怎么用?C++ Pila::esVacia使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Pila的用法示例。


在下文中一共展示了Pila::esVacia方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: hangarDeVagones

void hangarDeVagones(const int &numeroVagones, Pila<int> &entrada, Lista<int> &secuenciaSalida) {
    
    Pila<int> hangar;
    
    bool resultado = true;
    
    while( resultado && (! secuenciaSalida.esVacia() || ! hangar.esVacia()) ) {
        
        // Si el elemento de la cima es igual que el primer elemento
        // de la secuencia resultante lo sacamos de la pila.
        if (hangar.esVacia() || (! entrada.esVacia() && hangar.cima() < secuenciaSalida.primero()) ) {
            hangar.apila( entrada.cima() );
            entrada.desapila();
        }
        else if  (hangar.cima() == secuenciaSalida.primero() ) {
            
            hangar.desapila();
            secuenciaSalida.resto();
        }
        else if (hangar.cima() > secuenciaSalida.primero()) {
            resultado = false;
        }
    }
    
    if( resultado ) cout << "POSIBLE" << endl;
    else cout << "IMPOSIBLE" << endl;
}
开发者ID:plandevida,项目名称:Practica2-EDA,代码行数:27,代码来源:main.cpp

示例2: main

int main() {
	int wagons = -1, expected[10000];
	int i;

	while (wagons != 0) {
		cin >> wagons;

		for (i = 0; i < wagons; i++) {
				cin >> expected[i];
			}

			int currentWagon = 1;
			int expectedIndex = 0;
			Pila<int> station;
			while (currentWagon <= wagons) {
				station.apila(currentWagon);
				while (!station.esVacia()
						&& station.cima() == expected[expectedIndex] &&
						expectedIndex < wagons) {
					station.desapila();
					expectedIndex++;
				}
				currentWagon++;
			}

			if (station.esVacia())
				cout << "POSIBLE" << endl;
			else
				cout << "IMPOSIBLE" << endl;
		}

	return 0;
}
开发者ID:elreplicante,项目名称:ucm,代码行数:33,代码来源:practica2.cpp

示例3: llaves

bool llaves(const char cadena[], int n, const char caracterAbertura, const char caracterCierre) {
    
    Pila<int> colaAbiertos;
    
    bool completos = true;
    
    int i = 0;
    int j = n-1;
    
    while(i < n) {
        
        if(cadena[i] == caracterAbertura) {
            
            colaAbiertos.apila(cadena[i]);
            
        } else if (cadena[i] == caracterCierre) {
            
            try {
                colaAbiertos.desapila();
            } catch(EPilaVacia e) {
                cout << e.msg() << endl;
            }
        }
        i++;
    }

    if ( ! colaAbiertos.esVacia()) {
        completos = false;
    }
    
    return completos;
}
开发者ID:plandevida,项目名称:Practica4T6,代码行数:32,代码来源:main.cpp

示例4: main

int main(){

Pila pila;
pila.apilar( 5 );
pila.apilar( 6 );
pila.apilar( 7 );
pila.apilar( 8 );
pila.apilar( 9 );
pila.apilar( 10 );

while(  pila.esVacia() == 0 ){
   printf(" %d\n", pila.desapilar() );
}



   return 0;
}
开发者ID:dasesu,项目名称:tap_tareas,代码行数:18,代码来源:pila.cpp

示例5: main

int main() {
	Pila<char> p;
	char c = 'a';
	while (c != '*'){ // Mientras no introduzca asterisco para terminar
		cout << "> "; // Mostramos prompt
		cin.get(c); // Leemos el primer caracter
		if (c != '*'){ // Si no es el asterisco
			while (c != '\n'){ // Mientras no haya fin de linea
				p.apila (c); // Apilamos el caracter
				cin.get(c); // Leemos el siguiente
			}
			while (!p.esVacia()){ // Mientras no se quede vacía la pila
				cout << p.cima(); // Escribimos la cima de la pila
				p.desapila(); // Desapilamos
			}
		}
		cout << endl; // Añadimos un salto de linea final
	}
	
	return 0;
}
开发者ID:jgsojo,项目名称:data-structure-and-algorithms,代码行数:21,代码来源:main.cpp


注:本文中的Pila::esVacia方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。