예제 #1
0
int main()
{
	//"Texto del que se eliminan cosas a escribir como quotoes y demas"
	//char p1[]="Texto del que se elimi"""na"n co"sas a es"cribir como" quotoes y de"mas",p2[1024];
	//elimina(p1,p2,""");
	//char p1[]="Text<kaka>o del que se el<kaka><kaka>iminan cosas a escri<a>bir como quotoes y<kakakaka><><a> demas",p2[1024];
	//elimina(p1,p2,'<','>');



	FILE *strin,*strout;   errno_t err,err1;
//	err= fopen_s(&strin,"data/prueba.htm","r");
	err= fopen_s(&strin,"data/Yahoo.htm","r");
	err1=fopen_s(&strout,"data/out.htm","w");
	if ((err)||(err1)) 	{  printf("ERROR en ficheros");getchar();getchar(); return -1;  }
	char ch;
	long size_buffer1=0,size_buffer2,sizeant=0;
	while(!feof(strin))
	{
		ch=fgetc(strin);
		size_buffer1++;
	}
	printf("Tamano buffer1=%li",size_buffer1);sizeant=size_buffer1;
	rewind(strin);
	char *buffer1=new char[size_buffer1];
	char *buffer2=new char[size_buffer1];
	char *buffer3;
	long i;
	for (i=0;i<(size_buffer1-1);i++)
	{
		buffer1[i]=fgetc(strin);
	}
	buffer1[i]='\0';
	extrae_2(buffer1,buffer2);buffer3=buffer1;buffer1=buffer2;buffer2=buffer3;
	sizeant=size_buffer1;size_buffer1=strlen(buffer1);printf("\nTamano buffer2 1=%li %li",size_buffer1,size_buffer1-sizeant);

	elimina(buffer1,buffer2,"&quot;");buffer3=buffer1;buffer1=buffer2;buffer2=buffer3;
	sizeant=size_buffer1;size_buffer1=strlen(buffer1);printf("\nTamano buffer2 2=%li %li",size_buffer1,size_buffer1-sizeant);

	elimina(buffer1,buffer2,"(EFE)");buffer3=buffer1;buffer1=buffer2;buffer2=buffer3;
	sizeant=size_buffer1;size_buffer1=strlen(buffer1);printf("\nTamano buffer2 3=%li %li",size_buffer1,size_buffer1-sizeant);

	eliminaduplicados(buffer1,buffer2);buffer3=buffer1;buffer1=buffer2;buffer2=buffer3;
	sizeant=size_buffer1;size_buffer1=strlen(buffer1);printf("\nTamano buffer2 4=%li %li",size_buffer1,size_buffer1-sizeant);

	//Imprimo el ultimo buffer. ¡¡OJO!! pudiera ser buffer1 ó 2, el último válido
	printf("\nTamano buffer1 FIN=%li",strlen(buffer1));
	char *ptr;
	ptr=buffer1;
	while(*ptr)
	{
		fputc(*ptr++,strout);
	}
	fputc(*ptr++,strout);//El null del final
	_fcloseall( );
	getchar();getchar();
	return 0;

}
예제 #2
0
int main()
{
	S=stivaVida();
	Q=coadaVida();
	
	push(3);
	push(5);
	push(7);
	afisares(S);

	printf("\n%d\n",top());
	pop();
	pop();
	afisares(S);

	printf("\n%d\n",top());
	pop();
	afisares(S);
	

	insereaza(3);
	insereaza(5);
	insereaza(7);
	afisareq(Q);

	
	printf("\n%d\n",citeste());
	elimina();
	afisareq(Q);
	
	printf("\n%d\n",citeste());
	elimina();
	afisareq(Q);

	insereaza(9);
	afisareq(Q);

	elimina();
	elimina();
	afisareq(Q);
	

	system("pause");
	return 0;
}
예제 #3
0
파일: funcoes.c 프로젝트: lsilvs/AEDS3-tp3
int lru(Tipo_Lista * memoria, struct tipo_elemento pagina) {
    int ret = -1;
    struct tipo_elemento * p;
    p = pesquisa(memoria, pagina.valor);
    if (p == NULL) {
        insere(memoria, pagina.valor);
        ordena(memoria->inicio, memoria->qtd);
    } else {
        ret = (memoria->qtd - p->acessos);
        elimina(memoria, p);
        insere(memoria, pagina.valor);
        ordena(memoria->inicio, memoria->qtd);
    }
    return ret;
}
예제 #4
0
tconjunto unions(tconjunto A,tconjunto B){
	tconjunto C;
	int i,k;
	k=0;
	for(i=0;i<=A.Tam;i++){
		C.Elementos[k]=A.Elementos[i];
		k++;
	}
	for(i=0;i<=B.Tam;i++){
		C.Elementos[k]=B.Elementos[i];
		k++;
	}
	C.Tam=k-1;
	elimina(&C);
	return C;
}
예제 #5
0
int menu_camioes ()
{
	int op;
	int c;
	       camioes cam[NR];
	       for(c=0;c<NR;c++)
		   cam[c].estado=0;   /* limpa todo o Array de registos */
        system ("cls"); gotoxy(20,10);
        ler_camioes(cam);
	do {
		system ("cls");						        
		printf("\n\t|============================================|"); system("COLOR 0B");
    	printf("\n\t|              C E M  R O D A S              |");
    	printf("\n\t|                                            |");
	   	printf("\n\t|                                            |");
    	printf("\n\t|                C A M I O E S               |");
    	printf("\n\t|                                            |");
    	printf("\n\t|============================================|");
        printf("\n\t*                                            *"); 
        printf("\n\t*               1 - Inserir                  *");
        printf("\n\t*                                            *"); 
        printf("\n\t*               2 - Alterar                  *");
		printf("\n\t*                                            *"); 
        printf("\n\t*               3 - Eliminar                 *");
        printf("\n\t*                                            *"); 
		printf("\n\t*               4 - Listar                   *");
		printf("\n\t*                                            *");
        printf("\n\t*               0 - Menu Principal           *");
		printf("\n\t*                                            *");
        printf("\n\t**********************************************");
        printf("\n\n\t             Qual a sua opcao? ");
				
				scanf("%d",&op);
               
				switch (op) {
                        case 1: inseri(cam); break;
                        case 2: altera(cam); break;
                        case 3: elimina(cam); break;
                        case 4: mostra(cam); break;
						case 0: system ("cls"); break;
                        default: printf("Opcao invalida!\n");
                }
    } while (op!=0);
	
}
예제 #6
0
causali::causali(QWidget *parent) :
    QDialog(parent)
{
    setupUi(this);
    setAttribute(Qt::WA_DeleteOnClose);
    //Pulsante chiusura finestra di dialogo:
    connect(esci,SIGNAL(clicked()),this,SLOT(close()));
    //Pulsante nuovo tipo di causale di trasporto:
    connect(nuovo_b,SIGNAL(clicked()),this,SLOT(nuovo()));
    //Cliccando sulla tabella si cerca automaticamente:
    connect(tableView,SIGNAL(clicked(QModelIndex)),this,SLOT(clickgrid()));
    //Salvataggio dati:
    connect(salva_b,SIGNAL(clicked()),this,SLOT(salva()));
    //Eliminazione dati:
    connect(elimina_b,SIGNAL(clicked()),this,SLOT(elimina()));
    //Disabilita qlineedit id:
    id->setEnabled(false);
    //Query mod_grid per riempire la tabella:
    mod_grid = new  QSqlQueryModel;
    //Visualizza i dati nella tabella:
    lista();
}
예제 #7
0
int main() {

  Arbol a = NULL; // Se crea un árbol vacío.

  // Ahora se insertan unos cuantos valores

  inserta(100, &a);
  inserta(200, &a);
  inserta(50, &a);
  inserta(150, &a);
  inserta(250, &a);
  inserta(20, &a);
  inserta(75, &a);
  inserta(60, &a);
  inserta(80, &a);
  inserta(170, &a);
  inserta(230, &a);
  inserta(300, &a);
  inserta(30, &a);
  inserta(120, &a);

  // Un recorrido para ver que todo está bien
  printf("\nBusqueda ENORDEN\n");
  enorden(a);

  // Ahora se hacen algunas búquedas

  if (busca(60, a)) printf("\nmuy bien\n");
  else printf("\nmuy mal\n");

  if (busca(85,a)) printf("\nmuy mal\n");
  else printf("\nmuy bien\n");

  // Ahora borramos un elemento del árbol

  elimina(60, &a);

  // Para ver que se haya hecho bien, se hace un recorrido
  printf("\nBusqueda ENORDEN\n");
  enorden(a);

  // Ahora borramos otro elemento.

  elimina(75, &a);

  // De nuevo, revisamos que todo esté bien
  printf("\nBusqueda ENORDEN\n");
  enorden(a);

  // Finalmente, borramos otro elemento

  elimina(200, &a);
  

  // Revisamos
  printf("\nBusqueda ENORDEN\n");
  enorden(a);

  // Ahora los otros recorridos, para que no hayan sido en balde
  printf("\nBusqueda PREORDEN\n");
  preorden(a);
  printf("\nBusqueda POSTORDEN\n");
  postorden(a);

}
예제 #8
0
파일: start.c 프로젝트: bimbomix1/tetris
int main( void ) {

	
	int flag = 1;
	rbtree *box;
	int param[3];
	int *elements;
	char* cmd = (char*) malloc(sizeof(char));
	printf("*************************************\n");
	printf("Laboratiorio di Algoritmi\n");
	printf("Progetto Giugno 2009 Tetris\n");
	printf("*************************************\n");
	printf("Digitare il carattere dell'operazione da svolgere secondo il seguente menu:\n");
// fatta
	printf("s (m) scatola di dimensione m \n");  	
// fatta
	printf("i (x) inserisce rettangolo in posizione x\n"); 
// manca
	printf("e (x) elimina il più alto rettangolo in posizione x\n");
// fatta
	printf("c (x)  calcola sottocatasta elemento in posizione x più alto\n");
// fatta
	printf("a (x)  calcola anticatasta elemento in posizione x più alto\n");
// manca
	printf("p estrae i pezzi liberi \n");
// fatta
	printf("t (n,m,k) esegue la statistica \n");
	printf("!!! ATTENZIONE : dalla specifiche la statistica si invoca con il comando 't' e più 's' \n");
// fatta
	printf("v visualizza\n");
// fatta
	printf("f Esci\n");
	while(flag){
		printf(">");
		scanf("%s", cmd);
		switch (cmd[0]){
			case 's':
				scanf("%d", param);
				box = scatola(param[0]);
				if(box == NULL)
					printf("errore \n");
				else
					boxexist = 1;
				break;
		    case 'i':
				if(!box_exist()) break;
					scanf("%d", param);
					if(inserisci(box,param[0]) == -1)
						printf("errore \n");
				break;
				case 'e':
					if(!box_exist()) break;
						scanf("%d", param);
						if(elimina(box,param[0]) == -1)
							printf("errore \n");
					break;
			case 'v':
			if(!box_exist()) break;
				visualizza(box);
				printf("\n");
			break;
			
			case 'c':
				if(!box_exist()) break;
				scanf("%d", param);
				if(sottocatasta(box,param[0]) == NULL)
					printf("vuoto \n");
				printf("\n");
				break;
			
			case 'a':
				if(!box_exist()) break;
				scanf("%d", param);
				if(anticatasta(box,param[0]) == NULL)
				printf("vuoto ");
				printf("\n");
			break;
				break;
				
			case 'p':
				 	elements= get_free_elements(box);
					estrai_in_parallelo(box, elements);
					free(elements);
				break;
			
			case 't':
				if(!box_exist()) break;
				scanf("%d", param);
				scanf("%d", param +1);
				scanf("%d", param +2);
				statistica(param[0], param[1],param[2]);
				break;
			case 'f':
				flag = 0;
				break;
				
		}
	}
}