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


C++ Pila类代码示例

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


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

示例1: 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

示例2: main

int main(int argc, char **argv) {
    const int TAM_BUFFER = 100;
    char buffer[TAM_BUFFER];
    Pila pila;
    bool primero = false;
    char valor;
    int i = 0;

    while (!cin.eof()) {
        cin >> valor;
        pila.push(valor);

        i = 0;
        primero = false;

        while (buffer[i] != '\0') {
            if ((buffer[i] >= '0') && (buffer[i] <= '9')) {
                cout << buffer[i];
                primero = true;
            } else if (primero == true) {
                cout << '\n';
                primero = false;
            }

            i++;
        }
    }

    return (0);
}
开发者ID:AndreaPaz,项目名称:trabajos_universidad,代码行数:30,代码来源:ejercicio_07.cpp

示例3: TEST

TEST( PilaCharTest, apilarUnUnicoElemento ) {

    Pila<char> pila;

    pila.apilar('D');

    ASSERT_FALSE( pila.estaVacia() );
}
开发者ID:mtugnarelli,项目名称:estructuras-pila-cpp,代码行数:8,代码来源:PilaChar.cpp

示例4: invertirPila

Pila * invertirPila(Pila *ori)
{
	Pila *out = new Pila();
	while (!ori->isEmpty())
	{
		out->push(ori->pop());
	}
	return out;
}
开发者ID:iTubePod,项目名称:Object-Oriented-Programming,代码行数:9,代码来源:A01328258.cpp

示例5: main

int main(int argc, char** argv) {
	Giornale G1(12.50, "Titolo1", false);
	Giornale G2(1.50, "Titolo2", true);
	Giornale G3(2.00, "Titolo3", false);
	Rivista R4(22.70, "Titolo4", false, "Editore4", "Periodo4");
	Rivista R5(11.50, "Titolo5", true, "Editore5", "Periodo5");
	Rivista R6(6.00, "Titolo6", false,  "Editore6", "Periodo6");
	Quotidiano Q7(6.35, "Titolo7", false, "Direttore7", true);
	Quotidiano Q8(9.99, "Titolo8", true, "Direttore8", false);
	Quotidiano Q9(5, "Titolo9", false, "Direttore9", true);
	
	cout<<"Polimorfismo:\n";
	Giornale * vett[9];
	vett[0] = &G1;
	vett[1] = &G2;
	vett[2] = &G3;
	vett[3] = &R4;
	vett[4] = &R5;
	vett[5] = &R6;
	vett[6] = &Q7;
	vett[7] = &Q8;
	vett[8] = &Q9;
	
	for(int i=0; i<9; i++) {
		cout << *vett[i] << "\n\n";
	}
	
	cout<<"\n\nPila:\n";
	Pila P;
	for(int i=0; i<9; i++) {
		P.push(vett[i]);
	}
	cout<<P;
	
	ofstream file;
	file.open("./test.txt", ios::out);
	if(!file) {
		cout<<"Errore apertura file.";
	} else {
		file << P;
	}
	file.close();
	
	Rivista R10(1.00, "Titolo10", false,  "Editore10", "Periodo10");
	Quotidiano Q11(1.35, "Titolo11", false, "Direttore11", true);
	
	P.push(&R10);
	
	cout<<"\n\nEccezione:\n";
	try {
		P.push(&Q11);
	} catch(SpaceOverflow e) {
		cout<<e.errorLog();
	}
	return 0;
}
开发者ID:alessandrocar,项目名称:prog1,代码行数:56,代码来源:main.cpp

示例6: invertirCola

Cola * invertirCola(Cola *ori)
{
	Pila *inc = new Pila();
	while (!ori->isEmpty())
	{
		inc->push(ori->dequeue());
	}
	Cola *out = new Cola();
	while (!inc->isEmpty())
	{
		out->enqueue(inc->pop());
	}
	return out;
}
开发者ID:iTubePod,项目名称:Object-Oriented-Programming,代码行数:14,代码来源:A01328258.cpp

示例7: main

int main() {

    Pila<int> pila;

    pila.apilar(3);
    pila.apilar(5);
    pila.apilar(1);
    pila.apilar(6);

    while (! pila.estaVacia()) {

        cout << pila.desapilar() << endl;
    }

    return 0;
}
开发者ID:mtugnarelli,项目名称:estructuras-pila-cpp,代码行数:16,代码来源:ejemplo.cpp

示例8: main

int main(){

  Pila<int> p;
  cout << "Entra pila naturals (acabada per -1): " << endl;
  llegir_pila_int(p,-1);
  cout << "Entra número a buscar: " << endl;
  int x = readint();
  bool b;
    b = p.cerca_pila(x);

  if (b) cout << "esta" << endl;
  else cout << "no esta" << endl;
  cout << "pila p, despues de buscar (notad que no se destruye en ningun caso, aunque no se ha usado copia)" << endl;
  escriure_pila_int(p);

}
开发者ID:Outer2g,项目名称:PRO2,代码行数:16,代码来源:buscar.cpp

示例9: viaDeEntrada

int viaDeEntrada(Pila<int> &entrada, Lista<int> &secuenciaSalida) {
    
    int numeroVagones = 0;
    
    //cout << "Introduzce el número de bagones: ";
    
    cin >> numeroVagones;
    
    if ( numeroVagones != 0) {
        //cout << endl << "Escriba la secuencia resultante de los bagones: " << endl;
        
        for (int n = 0; n < numeroVagones; n++) {
            
            //if( n > 0 ) cout << "Queda/n " << numeroVagones-n << " bagón/es." << endl;
            
            int a;
            
            cin >> a;
            
            secuenciaSalida.ponDr(a);
        }
        
        for (int j = numeroVagones; j > 0 ; j--) {
            entrada.apila(j);
        }
    }
    
    return numeroVagones;
}
开发者ID:plandevida,项目名称:Practica2-EDA,代码行数:29,代码来源:main.cpp

示例10: main

int main() {
	Pila<float> pila;
	Cola<float> cola;

	cout << " -> Pila" << endl;
	for (int i = 0; i < 10; i++)
		pila.insertar(i + 0.01);

	while (!pila.estaVacia())
		cout << "\t" << pila.sacar() << endl;

	cout << endl << " -> Cola " << endl;
	for (int i = 0; i < 10; i++)
		cola.insertar(i + 0.03);

	while (!cola.estaVacia())
		cout << "\t" << cola.sacar() << endl;

	return 0;
}
开发者ID:wafto,项目名称:Teoria-de-lenguajes,代码行数:20,代码来源:main.cpp

示例11: 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

示例12: 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

示例13: 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

示例14: main

int main()
{
  Pila *x = new Pila();
  x->push(12);
  x->push(13);
  x->push(14);
  
  cout<<"Pila original "<<endl;
  x->print();
  cout<<endl;
  
  Pila *y = new Pila();
  y = invertirPila(x);
  cout<<"Pila invertida "<<endl;
  y->print();

  cout<<"\n-------------------------"<<endl<<endl;

  Cola *q = new Cola();
  q->enqueue(9);
  q->enqueue(8);
  q->enqueue(7);
  q->enqueue(6);
  q->enqueue(5);
  q->enqueue(4);

  cout<<"Cola original "<<endl;
  q->print();
  cout<<endl;

  Cola *q2 = new Cola();
  q2 = invertirCola(q); 

  cout<<"Cola invertida "<<endl;
  q2->print();
  cout<<endl;
 
  int loop;
  cin >> loop;
  return 0;
}
开发者ID:iTubePod,项目名称:Object-Oriented-Programming,代码行数:41,代码来源:A01328258.cpp

示例15: main

int main()
{
	Pila<int> pila;
	Pila<int> pila2;

	pila.Apilar(1);
	pila.Apilar(2);
	pila.Apilar(3);
	pila.Apilar(4);
	pila.Apilar(5);
	pila.Apilar(6);

	pila2.Apilar(7);
	pila2.Apilar(8);

	//Invertirmos la pila
	//pila.ConcatenarPila(pila2);

	//pila.ImprimirPila();
	//pila.ImprimirPila();

	pila.InvertirPila();
	pila.ImprimirPila();
}
开发者ID:ivan-ramon-moran,项目名称:personal,代码行数:24,代码来源:Main.cpp


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