From cbf6112bff10304925b50b113ea90872c1b91972 Mon Sep 17 00:00:00 2001
From: Fernando Erd <fce15@inf.ufpr.br>
Date: Fri, 11 Dec 2015 22:44:06 -0200
Subject: [PATCH] Comentando e identando

---
 "Arquivos/Fun\303\247\303\265es.h"   |   3 ++
 Arquivos/Loteria                     | Bin 13776 -> 13776 bytes
 Arquivos/Main.c                      |  53 ++++++++++++++---------
 "Arquivos/Ordena\303\247\303\243o.c" |  60 +++++++++++++++------------
 Arquivos/Pesquisa.c                  |   4 +-
 Arquivos/Vetor.c                     |   1 +
 6 files changed, 73 insertions(+), 48 deletions(-)

diff --git "a/Arquivos/Fun\303\247\303\265es.h" "b/Arquivos/Fun\303\247\303\265es.h"
index c64b0a2..7185223 100644
--- "a/Arquivos/Fun\303\247\303\265es.h"
+++ "b/Arquivos/Fun\303\247\303\265es.h"
@@ -3,5 +3,8 @@ void LerDados (int *Vetor);
 void GeraVetor (int *Vetor);
 void ImprimeVetor (int *Vetor);
 void SelectSort (int *Vetor);
+void BubbleSort (int *Vetor);
+void QuickSortRecursivo (int Vetor[], int Esquerda, int Direita);
+void QuickSortIterativo (int Vetor[], int Esquerda, int Direita);
 void VerificaNumero (int *Vetor, int *Escolhidos);
 void PesquisaBinaria (int *Vetor, int Elem);
diff --git a/Arquivos/Loteria b/Arquivos/Loteria
index de5997e00e653a3e13ffce9849ebf96a0c075f61..f5cdde9c48e3384aa9ecd0c9209422479f765abc 100755
GIT binary patch
delta 2189
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
F%mBDOK^_1A

delta 2280
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

diff --git a/Arquivos/Main.c b/Arquivos/Main.c
index 0f7aa86..a927373 100644
--- a/Arquivos/Main.c
+++ b/Arquivos/Main.c
@@ -1,6 +1,7 @@
 #include "Estruturas.h"
 #include "Funções.h"
 
+//Calcula o Tempo da Execução do SelectSort
 void TempoSelectSort (int *Vetor) {
  	struct timeval inicio, final;
 	int tmili, i;
@@ -15,6 +16,7 @@ void TempoSelectSort (int *Vetor) {
 	printf ("O SelectSort Demorou %d Centesimos\n", tmili);
 }
 
+//Calcula o Tempo da Execução do BubbleSort
 void TempoBubbleSort (int *Vetor) {
  	struct timeval inicio, final;
 	int tmili, i;
@@ -29,6 +31,7 @@ void TempoBubbleSort (int *Vetor) {
 	printf ("O BubbleSort Demorou %d Centesimos\n", tmili);
 }
 
+//Calcula o Tempo da Execução do QuickSort Recursivo
 void TempoQuickSortRecursivo (int *Vetor) {
  	struct timeval inicio, final;
 	int tmili, i;
@@ -43,6 +46,7 @@ void TempoQuickSortRecursivo (int *Vetor) {
 	printf ("O QuickSort Recursivo Demorou %d Centesimos\n", tmili);
 }
 
+//Calcula o Tempo da Execução do QuickSort Iterativo
 void TempoQuickSortIterativo (int *Vetor) {
  	struct timeval inicio, final;
 	int tmili, i;
@@ -61,36 +65,45 @@ int main () {
         int Vetor[TAM], Escolhidos[4];
 	int comando, Ordena;	
 	
-	printf ("1 Para Jogar e 2 Para Comparar Algoritmos\n");
+	printf ("1 - Jogar\n2 - Comparar Algortimos\n");
 	scanf ("%d", &comando);
 	switch (comando) {
-	case 1:
+		case 1:
 		LerDados (Escolhidos);
 		GeraVetor (Vetor);
+		//Sorteia o Algoritmo para Ordenar o Vetor
 		srand (time (NULL));
-		Ordena = rand() % 3;
+		Ordena = rand() % 4;
+		
 		switch (Ordena) {
-		case 0:
-		printf ("O Vetor Foi Ordenado Pelo SelectSort\n");
-		SelectSort (Vetor);
-		break;
-		case 1:
-		printf ("O Vetor Foi Ordenado Pelo BubbleSort\n");
-		BubbleSort (Vetor);
-		break;
-		case 2:
-		printf ("O Vetor Foi Ordenado Pelo QuickSort Recursivo\n");
-		QuickSortRecursivo (Vetor, 0, TAM);
-		break;
-		case 3:
-		printf ("O Vetor Foi Ordenado Pelo QuickSort Iterativo\n");
-		QuickSortIterativo (Vetor, 0, TAM);
-		break;
+		
+			case 0:
+			printf ("O Vetor Foi Ordenado Pelo SelectSort\n");
+			SelectSort (Vetor);
+			break;
+			
+			case 1:
+			printf ("O Vetor Foi Ordenado Pelo BubbleSort\n");
+			BubbleSort (Vetor);
+			break;
+		
+			case 2:
+			printf ("O Vetor Foi Ordenado Pelo QuickSort Recursivo\n");
+			QuickSortRecursivo (Vetor, 0, TAM);
+			break;
+		
+			case 3:
+			printf ("O Vetor Foi Ordenado Pelo QuickSort Iterativo\n");
+			QuickSortIterativo (Vetor, 0, TAM);
+			break;
 		}
+		//Chama a Pesquisa 
 		VerificaNumero (Vetor, Escolhidos);
 		ImprimeVetor (Vetor);
 		break;
-	case 2:
+	
+		//Tempo de Execução dos programas
+		case 2:
 		TempoSelectSort (Vetor);
 		TempoBubbleSort (Vetor);
 		TempoQuickSortRecursivo (Vetor);
diff --git "a/Arquivos/Ordena\303\247\303\243o.c" "b/Arquivos/Ordena\303\247\303\243o.c"
index 515df4b..88a0328 100644
--- "a/Arquivos/Ordena\303\247\303\243o.c"
+++ "b/Arquivos/Ordena\303\247\303\243o.c"
@@ -1,7 +1,7 @@
 //Arquivo com os Algoritmos de Ordenação
 
 #include "Estruturas.h"
-
+//Função para trocar valores
 void Troca (int *Vetor, int i, int j) {
 	int aux;
 
@@ -10,6 +10,7 @@ void Troca (int *Vetor, int i, int j) {
 	Vetor [j] = aux;
 }
 
+//Algoritmo de Ordenação do SelectSort
 void SelectSort (int *Vetor) {
 	int i, j, menor;
 
@@ -22,6 +23,7 @@ void SelectSort (int *Vetor) {
 	}
 }
 
+//Algoritmo de Ordenação do BubbleSort
 void BubbleSort (int *Vetor) {
 	bool trocou;
 	int i;
@@ -38,6 +40,7 @@ void BubbleSort (int *Vetor) {
 	}
 }
 
+//Acha a posicao da Mediana
 int Mediana(int *Vetor, int esq, int dir) {
 	int aux;
 	aux = (dir+esq)/2; // elem. do meio do vetor
@@ -64,6 +67,7 @@ int Mediana(int *Vetor, int esq, int dir) {
 
 }
 
+//Particiona o QuickSort
 int Particao (int *Vetor, int esq, int dir) {
 	int i,j,pivo,aux;
 	aux = Mediana(Vetor,esq,dir);
@@ -87,6 +91,7 @@ int Particao (int *Vetor, int esq, int dir) {
   	return j;
 }
 
+//Algoritmo de Ordenação do QuickSort com Recursão
 void QuickSortRecursivo (int Vetor[], int Esquerda, int Direita) {
 	int pospivo;
 	   if (Esquerda < Direita) {
@@ -95,32 +100,33 @@ void QuickSortRecursivo (int Vetor[], int Esquerda, int Direita) {
 		QuickSortRecursivo(Vetor,pospivo+1,Direita);
 	}
 }
+
+//Algoritmo de Ordenação do QuickSort Iterativo
 void QuickSortIterativo (int Vetor[], int Esquerda, int Direita) {
-    int Posicao;
-    int Pilha[ Direita - Esquerda + 1 ];
-    int top;
- 
-    top = -1;
-    Pilha[ ++top ] = Esquerda;
-    Pilha[ ++top ] = Direita;
- 
-    while ( top >= 0 )
-    {
-        Direita = Pilha[ top-- ];
-        Esquerda = Pilha[ top-- ];
- 
-        Posicao = Particao( Vetor, Esquerda, Direita );
- 
-        if ( Posicao-1 > Esquerda )
-        {
-            Pilha[ ++top ] = Esquerda;
-            Pilha[ ++top ] = Posicao - 1;
-        }
- 
-        if ( Posicao+1 < Direita )
-        {
-            Pilha[ ++top ] = Posicao + 1;
-            Pilha[ ++top ] = Direita;
-        }
+	int Posicao;
+	int Pilha[TAM];
+	int top;
+
+	top = -1;
+	//Empilha os Indices
+	Pilha[++top] = Esquerda;
+	Pilha[++top] = Direita;
+	while (top >= 0) {
+		//Desempilha os Indices
+		Direita = Pilha[top--];
+		Esquerda = Pilha[top--];
+
+		Posicao = Particao(Vetor, Esquerda, Direita);
+
+		if (Posicao-1 > Esquerda) {
+			//Empilha os Indices
+			Pilha[++top] = Esquerda;
+			Pilha[++top] = Posicao - 1;
+        	}
+       		 if (Posicao+1 < Direita) {
+			//Empilha os Indices
+        		Pilha[++top] = Posicao + 1;
+        	    	Pilha[++top] = Direita;
+        	}
     }
 }
diff --git a/Arquivos/Pesquisa.c b/Arquivos/Pesquisa.c
index 9e33b41..c6f88e8 100644
--- a/Arquivos/Pesquisa.c
+++ b/Arquivos/Pesquisa.c
@@ -1,6 +1,7 @@
 //Arquivo com os  algoritmos de busca
 #include "Estruturas.h"
 
+//Algoritmo de Pesquisa Binaria
 int PesquisaBinaria (int *Vetor, int Elem) {
 	int meio, esquerda, direita;
 
@@ -20,6 +21,7 @@ int PesquisaBinaria (int *Vetor, int Elem) {
 		return -1; //return = -1 pq o se o elemento estiver na primeira posição irá retornar 0 (posição que ele se encontra no vetor)
 }
 
+//Algoritmo de Pesquisa Sequencial
 int PesquisaSequencial(int *Vetor, int Elem) {
 	int i;
 
@@ -30,7 +32,7 @@ int PesquisaSequencial(int *Vetor, int Elem) {
 	return -1; //-1 pq o elemento pode estar na posição zero 
 }
 
-
+//Chama as funções de Pesqusia para procurar o número no vetor
 void VerificaNumero (int *Vetor, int *Escolhidos) {
 	int i, acertos;
 	
diff --git a/Arquivos/Vetor.c b/Arquivos/Vetor.c
index 30c6fb8..365ff39 100644
--- a/Arquivos/Vetor.c
+++ b/Arquivos/Vetor.c
@@ -1,5 +1,6 @@
 #include "Estruturas.h"
 
+//Lê os 4 números que o usuario entra
 void LerDados (int *Vetor) {
 	int i;
 	printf ("Digite 4 números: ");
-- 
GitLab