Ejemplo n.º 1
0
int seleciona_registros() {
    sql = "SELECT * FROM usuario;";
    int ret = conecta();
	if (ret != SQLITE_OK) {
        
        fprintf(stderr, "Falha ao conectar no banco de dados: %s\n", sqlite3_errmsg(db));
        encerra_conexao();
		
        return 0;

    	}
	else{
        msg = sqlite3_exec(db, sql, callback, 0, &MsgErro);

		if (msg != SQLITE_OK ) {
		
            fprintf(stderr, "Erro ao realizar consulta no banco de dados\n");
            fprintf(stderr, "SQL error: %s\n", MsgErro);
			sqlite3_free(MsgErro);
            encerra_conexao();
		
            return 0;
        }
		
        encerra_conexao();
        return 1;
	}
}
Ejemplo n.º 2
0
void MoleculaB::reconec (double param)
{			//IGUAL QUE PONCONEC; pero sin iniciar --> JUST AS PONCONEC; but without initiating
    int nv = susatomos.size ();
    for (int i = 0; i < nv; i++) {
	Atomo *atm = susatomos.get(i);
	atm->index = i;
    }
    for (int i = 0; i < nv; i++) {
	Atomo *atm = susatomos.get (i);
	pto3D ptoa = atm->vert;
	int tipA = atm->tipo;

	AtomList alst = susatomos.neighborhood(atm);
	for (int j = 0; j < alst.size(); j++) {
	    Atomo *atm2 = alst.get(j);
	    pto3D ptob = atm2->vert;
	    int tipB = atm2->tipo;
	    double distamax = param * (periodicTable()->en1[tipA] +
				       periodicTable()->en1[tipB]);	//PARAMETRO AQUI
	    if (ptoa.dista (ptob) < distamax && ptoa.dista (ptob) > 0.6)
		conecta (i, atm2->index);
	}
    }
    //depuraconec();                          //OJO!!!
}
Ejemplo n.º 3
0
int atualiza_registro(usuario u) {
    sql = "UPDATE usuario SET aniversario = ?, link = ?, nome = ?, localizacao = ?, sexo = ?, email = ? WHERE usuario = ?;";

    int r = conecta();
    if (r != SQLITE_OK) {

        fprintf(stderr, "Falha ao conectar no banco de dados: %s\n", sqlite3_errmsg(db));
        encerra_conexao();

        return 0;

        }
	else{

        msg = sqlite3_exec(db, sql, callback, 0, &MsgErro);
        if (msg != SQLITE_OK ) {
            fprintf(stderr, "SQL error: %s\n", MsgErro);
            encerra_conexao();

            return 0;
        }
		else {
            sqlite3_bind_text(stmt, 1, u.aniversario, strlen(u.aniversario), 0);
            sqlite3_bind_text(stmt, 2, u.link, strlen(u.link), 0);
            sqlite3_bind_text(stmt, 3, u.nome, strlen(u.nome), 0);
            sqlite3_bind_text(stmt, 4, u.localizacao, strlen(u.localizacao), 0);
            sqlite3_bind_text(stmt, 5, u.sexo, strlen(u.sexo), 0);
            sqlite3_bind_text(stmt, 6, u.email, strlen(u.email), 0);
            sqlite3_bind_text(stmt, 7, u.usuario, strlen(u.usuario), 0);
        }

        sqlite3_step(stmt);
        sqlite3_finalize(stmt);

        encerra_conexao();
        return 1;
    }
}
Ejemplo n.º 4
0
int main(int ari,char **arc)//./a.out wlan0 -r 5-2 -s localhost -u usuario -c clave -b basedatos -i ip -m mac
{
    int paquete=socket(AF_PACKET,SOCK_RAW,htons(ETH_P_ALL)),j;
    char **miarg=(char **)malloc(4*sizeof(char));
    if(paquete==-1)
    {
        puts("error al abrir el socket");
        return 1;
    }
    else
    {
        cabr=NULL;
//		memset(tuip,0x63,4);
//		memset(tumac,0xcc,6);
        for(j=0; j<4; j++)
            miarg[j]=(char *)malloc(50*sizeof(char));
        ipm=(unsigned char *)malloc(4*sizeof(unsigned char));
        macm=(unsigned char *)malloc(6*sizeof(unsigned char));
        memset(macpadre+0,0xff,6);
        memcpy(miarg[0],"localhost",9);
        memcpy(miarg[1],"root",4);
        memcpy(miarg[2],"toor",4);
        memcpy(miarg[3],"scaner",6);
        parametros(ari,arc,miarg);
        cabr=datosred(arc[1],paquete);
        putdatos();
        system("service mysql start");
        conecta(miarg);
        usebase(miarg[3]);
        pthread_mutex_init(&mutex,NULL);
        pthread_mutex_init(&mutex2,NULL);
        pthread_create(&hres[0],NULL,resivearp,NULL);
        pthread_join(hres[0],NULL);
    }
    return 0;
}
Ejemplo n.º 5
0
int main(){

	FILE *fp;
	Cidade *listaCidades = criaListaCidade();
	Gerador *listaGeradores = criaListaGerador();
	Interconexao *listaInterconexoes = criaListaInterconexao();
	Adaptador *listaAdaptadores = criaListaAdaptador();
	Relatorio relatorio;
	int i, tempoSimulacao = 2;
	char arquivo[100];

	char str[100]; //!< String auxiliar para obter registros

	printf("Rede de distribuicao\n");

	do{
	//! AE: o nome do arquivo nao eh valido

		printf("Digite o caminho para o arquivo (a partir de ./app/src):\n");
		scanf("%s",arquivo);
		getchar();

		fp = fopen(arquivo,"r");//!< Abre arquivo de entrada

	} while(fp == NULL);
	//! AE: o nome do arquivo eh valido

	printf("Digite o tempo desejado de simulacao\n");
	scanf("%d",&tempoSimulacao);

	do{
	//! AE: o arquivo nao chegou ao fim

		if(fgets(str,100,fp)!=NULL){
		//! AE: a linha (registro) obtido do arquivo possui conteudo

			switch (str[0]) {
				case 'C':
					//! AE: O registro obtido eh do tipo Cidade
					listaCidades = insereCidade(str,listaCidades);
					break;

				case 'G':
				//! AE: O registro obtido eh do tipo Gerador
					listaGeradores = insereGerador(str,listaGeradores);
					break;

				case 'I':
				//! AE: O registro obtido eh do tipo Interconexao
					listaInterconexoes = insereInterconexao(str,listaInterconexoes);
					break;

				case 'A':
				//! AE: O registro obtido eh do tipo Adaptador
					listaAdaptadores = insereAdaptador(str,listaAdaptadores);
					break;

				default:
					break;
			}
		}
		//! AS: a linha (registro) obtido do arquivo nao possui conteudo, ou seja, o arquivo chegou ao fim

	} while(!feof(fp));
	//! AS: o arquivo chegou ao fim

	fclose(fp);

	//! Comentarios de argumentacao
		/**
		*	Conectando e verificando as listas
		**/
	conecta(listaCidades,listaGeradores,listaInterconexoes,listaAdaptadores);
	verifica(listaCidades,listaGeradores,listaInterconexoes,listaAdaptadores);
	inicializa(listaGeradores,listaInterconexoes,listaAdaptadores,listaCidades);

	//! Comentarios de argumentacao
		/**
		*	Iniciando a interface
		**/
	mvprintw(0,0,"Pressione enter para comecar!");
	getch();
	mvprintw(0,0,"                             ");

	srand(1);

	for(i=0;i<tempoSimulacao;i++){
	// AE: tempo de simulacao nao chegou ao fim

		start_color();
	  init_pair(1, COLOR_GREEN, COLOR_BLACK);
		attron(COLOR_PAIR(1));
		mvprintw(1,100,"%d segundos", i);

		zerarCidades(listaCidades);
		zerarAdaptadores(listaAdaptadores);
		zerarInterconexoes(listaInterconexoes);

		gerenciaFalhas(listaInterconexoes);

		mandarRecursoProduzido(listaGeradores);
		defineDistribuicao(listaAdaptadores);
		mandarRecursoAdaptado(listaAdaptadores);
		gerenciaRecursoRecebido(listaCidades);

		atualizaCidades(listaCidades);
		atualizaInterconexoes(listaInterconexoes);
		atualizaGeradores(listaGeradores);
		atualizaAdaptadores(listaAdaptadores);

		getch();
	}
	// AS: tempo de simulacao chegou ao fim

	mvprintw(0,0,"                             ");
	mvprintw(1,0,"                             ");
	mvprintw(0,0,"Pressione enter para finalizar!");
	getch();
	endwin();
	//! Comentarios de argumentacao
		/**
		*	Finalizando a interface
		**/

	//! Comentarios de argumentacao
		/**
		*	Imprimindo as listas obtidas a partir do arquivo de entrada
		**/
	printf("\nLista de cidades:\n");imprimeListaCidade(listaCidades);
	printf("\nLista de geradores:\n");imprimeListaGerador(listaGeradores);
	printf("\nLista de interconexões:\n");imprimeListaInterconexao(listaInterconexoes);
	printf("\nLista de adaptadores:\n");imprimeListaAdaptador(listaAdaptadores);

	//! Comentarios de argumentacao
		/**
		*	Preenchimento do relatorio
		**/
	fp = fopen("../../RELATORIO.txt","w");//!< Abre arquivo de entrada
	fprintf(fp,"Relatório:\n\n");
	printf("Relatório:\n\n");

	relatorio.tempoTotalSimulacao = tempoSimulacao;
	fprintf(fp,"Tempo total da simulação: %d segundos\n", relatorio.tempoTotalSimulacao);
	printf("Tempo total da simulação: %d segundos\n", relatorio.tempoTotalSimulacao);

	relatorio.custoTotalSimulacao = custoGeradores(listaGeradores)*tempoSimulacao + custoGastoComConserto(listaInterconexoes);
	fprintf(fp,"Custo total na simulação: %d\n", relatorio.custoTotalSimulacao);
	printf("Custo total na simulação: %d\n", relatorio.custoTotalSimulacao);

	relatorio.totalGeradores = numeroGeradores(listaGeradores);
	fprintf(fp,"Total de geradores: %d\n", relatorio.totalGeradores);
	printf("Total de geradores: %d\n", relatorio.totalGeradores);

	relatorio.energiaTotalGerada = recursoProduzidoTotal(listaGeradores) * tempoSimulacao;
	fprintf(fp,"Energia total gerada: %d\n", relatorio.energiaTotalGerada);
	printf("Energia total gerada: %d\n", relatorio.energiaTotalGerada);

	relatorio.totalCidades = numeroCidades(listaCidades);
	fprintf(fp,"Total de cidades: %d\n", relatorio.totalCidades);
	printf("Total de cidades: %d\n", relatorio.totalCidades);

	relatorio.energiaGastaCidades = recursoGastoTotal(listaCidades);
	fprintf(fp,"Energia total gasta pelas cidades: %d\n", relatorio.energiaGastaCidades);
	printf("Energia total gasta pelas cidades: %d\n", relatorio.energiaGastaCidades);

	relatorio.tamanhoTotalInterconexoes = tamanhoTotalConexao(listaInterconexoes);
	fprintf(fp,"Tamanho total das interconexões: %.2f\n", relatorio.tamanhoTotalInterconexoes);
	printf("Tamanho total das interconexões: %.2f\n", relatorio.tamanhoTotalInterconexoes);

	relatorio.numeroFalhaInterconexoes = numeroTotalFalhas(listaInterconexoes);
	fprintf(fp,"Número de falhas nas interconexões: %d\n", relatorio.numeroFalhaInterconexoes);
	printf("Número de falhas nas interconexões: %d\n", relatorio.numeroFalhaInterconexoes);

	relatorio.numeroCidadesNegativadas = numeroCidadesNegativadas(listaCidades);
	fprintf(fp,"Número de cidades que ficaram com menos recurso que o necessário: %d\n",relatorio.numeroCidadesNegativadas);
	printf("Número de cidades que ficaram com menos recurso que o necessário: %d\n",relatorio.numeroCidadesNegativadas);

	relatorio.tempoSemRecurso =	tempoSemRecursoNecessario(listaCidades);
	fprintf(fp,"Tempo que ficaram sem recurso: %d\n",relatorio.tempoSemRecurso);
	printf("Tempo que ficaram sem recurso: %d\n",relatorio.tempoSemRecurso);

	relatorio.numeroCidadesNoVermelho = numeroCidadesNoVermelho(listaCidades);
	fprintf(fp,"Número de cidades que ficaram com menos de 30%% dos recursos: %d\n",relatorio.numeroCidadesNoVermelho);
	printf("Número de cidades que ficaram com menos de 30%% dos recursos: %d\n",relatorio.numeroCidadesNoVermelho);

	relatorio.tempoCidadesNoVermelho = tempoCidadesNoVermelho(listaCidades);
	fprintf(fp,"Tempo que ficaram com menos de 30%% dos recurso: %d\n", relatorio.tempoCidadesNoVermelho);
	printf("Tempo que ficaram com menos de 30%% dos recurso: %d\n", relatorio.tempoCidadesNoVermelho);

	fclose(fp);

	printf("\n\nRelatório gerado!\n\n");

	//! Comentarios de argumentacao
		/**
		*	Desalocando as listas obtidas
		**/
	liberaListaCidade(listaCidades);
	liberaListaGerador(listaGeradores);
	liberaListaInterconexao(listaInterconexoes);
	liberaListaAdaptador(listaAdaptadores);

	getchar();
	return 0;
}