programa listas circular

23
Zapatito……………… #include<iostream> #include<string.h> #include<fstream.> #include<stdlib.h> using namespace std; struct nodo{ char *nom; int anyos; nodo*sig,*ant; nodo() { sig=ant=NULL; } nodo(char* n, int a) { nom = new char[strlen(n)+1]; strcpy(nom,n); anyos=a;

Upload: celeste-abigail-ramirez-mata

Post on 17-Jan-2016

220 views

Category:

Documents


0 download

DESCRIPTION

Juego que borra al jugador...

TRANSCRIPT

Page 1: Programa listas circular

Zapatito………………

#include<iostream>

#include<string.h>

#include<fstream.>

#include<stdlib.h>

using namespace std;

struct nodo{

char *nom;

int anyos;

nodo*sig,*ant;

nodo()

{

sig=ant=NULL;

}

nodo(char* n, int a)

{

nom = new char[strlen(n)+1];

strcpy(nom,n);

anyos=a;

}

Page 2: Programa listas circular

};

class zapatito{

private:

nodo *inicio;

fstream caramelo;

public:

void insertarI();

void jugando();

void imprimir();

int contar();

void escribir();

void inicializar();

void finalizar();

zapatito(){

inicio=NULL;

}

};

Page 3: Programa listas circular

void zapatito::inicializar()

{

caramelo.open("abigail.txt",ios::out | ios::app);

}

void zapatito::escribir()

{

if(!inicio)

{

cout<<"lista vacia"<<endl;

}

else

{

nodo *A=inicio;

while(A!=NULL)

{

caramelo<<A->anyos;

A=A->sig;

}

}

}

Page 4: Programa listas circular

void zapatito::finalizar()

{

caramelo.close();

}

int zapatito::contar()

{

if(inicio==NULL)

return 0;

else

{

nodo *cdc=inicio;

int i=0;

do

{

cdc=cdc->sig;

i++;

}

while(cdc!=inicio);

return i;

Page 5: Programa listas circular

}

}

void zapatito::insertarI()

{

char hey[50];

int i;

if(inicio==NULL)

{

cout<<"lee nombre ";

cin>>hey;

cout<<endl<<"cuantos años tiene ";

cin>>i;

inicio = new nodo(hey,i);

inicio->ant=inicio->sig=inicio;

}

else

{ cout<<"lee nombre: ";

cin>>hey;

cout<<endl<<"cuantos años tiene ";

cin>>i;

Page 6: Programa listas circular

nodo*cohete=new nodo(hey,i);

cohete->ant=inicio->ant;

inicio->ant->sig=cohete;

cohete->sig=inicio;

inicio->ant=cohete;

inicio=cohete;

}

}

void zapatito::imprimir()

{

if(inicio==NULL)

cout<<"Lista vacia";

else

{

nodo *sonyando=inicio;

do

{

cout<<sonyando->nom<<endl;

sonyando=sonyando->sig;

Page 7: Programa listas circular

}

while(sonyando!=inicio);

}

cout<<endl;

}

void zapatito::jugando()

{

int a; int i=1;

while(a!=1){

int b=1;

nodo *hola=inicio;

while (b<=21)

{

hola=hola->sig;

b++;

}

b=hola->anyos;

while(b>=1)

{

Page 8: Programa listas circular

hola=hola->ant;

b--;

}

inicio=hola->sig;

hola->ant->sig=hola->sig;

hola->sig->ant=hola->ant;

hola->ant=hola->sig=NULL;

cout<<i++<<"°)En salir......... ";

cout<<hola->nom<<endl;

delete hola;

a=contar();

}

cout<<"EL GANDOR ES:......";

cout<<inicio->nom<<endl;

}

void menu()

{

cout<<"1) jugar"<<endl;

Page 9: Programa listas circular

cout<<"2) salir"<<endl;

}

int main()

{

zapatito A,B;

int N,i,o;

int y=0;

while(y==0)

{

menu();

int g;

cin>>g;

system("cls");

switch(g)

{

case 1:

cout<<"Nombres a ingresar";

cin>>N;

system("cls");

for(i=0;i<N;i++){

Page 10: Programa listas circular

A.insertarI();

system("cls");

}

cout<<"1)iniciar"<<endl;

cout<<"2)Guardar Archivo"<<endl<<endl;

cin>>o;

switch(o){

case 1:

system("cls");

A.imprimir();

A.jugando();

break;

case 2:

A.escribir();

A.inicializar();

A.finalizar();

A.jugando();

system("pause");

Page 11: Programa listas circular

break;

}

case 2:

exit(0);

break;

}

}

system("pause");

}

…………………….

18……………………..

#include <iostream>

#include <conio.h>

#include <stdlib.h>

#include <fstream>

using namespace std;

Page 12: Programa listas circular

struct nodo

{

nodo *sig;

char *nom;

nodo()

{

sig=NULL;

}

nodo(char* n)

{

nom = new char[strlen(n)+1];

strcpy(nom,n);

}

};

class diezyocho{

private:

nodo*inicio;

nodo *fin;

Page 13: Programa listas circular

fstream caramelo;

public:

void insertarI();

void borrar18();

void imprimir();

void escribir();

void inicializar();

void finalizar();

diezyocho(){

fin=inicio=NULL;

}

};

void diezyocho::inicializar()

{

caramelo.open("abigail.txt",ios::out | ios::app);

}

void diezyocho::escribir()

{

if(!inicio)

Page 14: Programa listas circular

{

cout<<"lista vacia"<<endl;

}

else

{

nodo *A=inicio;

do

{

caramelo<<A->nom<<endl;

A=A->sig;

}

while(A!=inicio);

cout<<"inicializado"<<endl;

}

}

void diezyocho::finalizar()

{

caramelo.close();

}

Page 15: Programa listas circular

void diezyocho::insertarI()

{

char x[100];

cin>>x;

if(inicio==NULL)

{

inicio=new nodo(x);

inicio->sig=inicio;

}

else

{

nodo *extincion=inicio;

while(extincion->sig!=inicio)

{

extincion=extincion->sig;

}

nodo *soledad=new nodo(x);

Page 16: Programa listas circular

extincion->sig=soledad;

soledad->sig=inicio;

}

}

void diezyocho::imprimir()

{

if(inicio==NULL)

{

cout<<"lista vacia"<<endl;

}

else

{

nodo *tim=inicio;

do

{

Page 17: Programa listas circular

cout<<tim->nom;

cout<<endl;

tim=tim->sig;

}

while(tim!=inicio);

}

system("pause");

}

void diezyocho::borrar18()

{

if(inicio==NULL)

{

cout<<"no hay elementos a borrar"<<endl;

}

else

{

nodo *bares=inicio->sig;

nodo *tango=inicio;

Page 18: Programa listas circular

for(int i=1;i<17;i++)

{

bares=bares->sig;

tango=tango->sig;

}

tango->sig=bares->sig;

bares->sig=NULL;

delete bares;

cout<<"borrado"<<endl;

system("pause");

}

}

void menu()

{

cout<<"1) Leer Nombre"<<endl;

cout<<"2) Imprimir Lista"<<endl;

cout<<"3)Borrar 18 en la lista"<<endl;

cout<<"4)Inicializar archivo"<<endl;

cout<<"5) Salir"<<endl;

Page 19: Programa listas circular

}

int main() {

int a=0,b;

char x[100];

diezyocho A;

while(a!=1)

{

menu();

cin>>b;

system("cls");

switch(b)

{

case 1:

cout<<"1) insertar lista"<<endl;

cout<<"2)salir"<<endl;

int c;

cin>>c;

system("cls");

Page 20: Programa listas circular

switch(c){

case 1:

cout<<"ingresa dato"<<endl;

A.insertarI();

system("cls");

break;

case 2:

exit(0);

break;

}

break;

case 2:

A.imprimir();

system("cls");

break;

case 3:

A.borrar18();

Page 21: Programa listas circular

system("cls");

break;

case 4:

A.inicializar();

A.escribir();

system("pause");

A.finalizar();

break;

case 5:

exit(0);

break;

}

}

Page 22: Programa listas circular

return 0;

}