fork download
  1. import java.util.Scanner;
  2. import java.util.Random;
  3. public class Vetor {
  4. public static Scanner ler;
  5. static long tinq;
  6. static long tfiq;
  7. public static void main(String[] args) {
  8. int op1, op, i;
  9.  
  10. // instanciando o método Scanner para leitura de dados digitados pelo usuário
  11. ler = new Scanner(System.in);
  12.  
  13. //instanciando objeto para geração de números aleatórios
  14. Random n = new Random();
  15.  
  16. //Instanciando o objeto Ordenações
  17. Ordenações ord1 = new Ordenações();
  18. Ordenações ord2 = new Ordenações();
  19. Ordenações ord3 = new Ordenações();
  20.  
  21. //v vai receber o numero que irá ser o tamanho do vetor
  22. int v, ret;
  23. do{
  24. //Menu de entrada
  25. System.out.println("1 - Ler arquivo externo?");
  26. System.out.println("2 - Preencher vetor?");
  27. op1 = ler.nextInt();
  28. switch(op1){
  29. case 1:
  30. //instaciando a classe Reader para onde está os comandos para leitura de arquivos externo.
  31. Reader ae = new Reader();
  32. // método Leitura sendo chamado na Main
  33. ae.leitura();
  34. break;
  35.  
  36. case 2:
  37. //Usuário vai definir o tamanho do vetor, onde v vai receber o que o usuário irá atribuir
  38. System.out.println("Digite o números de casas no vetor que deseja?");
  39. v = ler.nextInt();
  40. int vetor[] = new int[v];
  41.  
  42. //menu de pré-introdução de dados para o vetor
  43. System.out.println("1 - Deseja digitar os números para Ordenar?");
  44. System.out.println("2 - Deseja que o números sejam gerados para Ordenação?");
  45. op = ler.nextInt();
  46. switch(op){
  47. case 1:
  48. for (i = 0; i < vetor.length; i++) {
  49. System.out.print("Digite o " + (i + 1) + "º valor = ");
  50. vetor[i] = ler.nextInt();
  51. }
  52.  
  53. ord1.bubblesort(vetor);
  54.  
  55. ord2.apresentaQuick(vetor);
  56.  
  57. ord3.Cocktail(vetor);
  58.  
  59. break;
  60. case 2:
  61. for (i = 0; i < vetor.length; i++) {
  62. vetor[i] = n.nextInt();
  63. }
  64. ord1.bubblesort(vetor);
  65.  
  66. ord2.apresentaQuick(vetor);
  67.  
  68. ord3.Cocktail(vetor);
  69.  
  70. break;
  71. default:
  72. System.out.print("Opção inexistente");
  73. break;
  74. }
  75. break;
  76. }
  77. System.out.println("Retornar ao Menu inicial");
  78. ret = ler.nextInt();
  79. }
  80. while(ret == 1);
  81. }
  82.  
  83.  
  84. }
  85.  
  86. // Classe Ordenações
  87.  
  88. public class Ordenações {
  89. long tinicio, tfim;
  90. public void bubblesort(int vet[]){
  91. //teste para ver se o vetor recebido está desordenado.
  92. for(int i = 0; i < vet.length; i++){
  93. System.out.print(vet[i] + " ");
  94. }
  95. int tam = vet.length;
  96.  
  97. int i, j, aux;
  98. tinicio = System.nanoTime();
  99. for(i = 0; i < (tam - 1); i++){
  100.  
  101. for(j = 1; j < tam; j++){
  102.  
  103. if(vet[j] < vet[j - 1]){
  104.  
  105. aux = vet[j];
  106.  
  107. vet[j] = vet[j - 1];
  108.  
  109. vet[j - 1] = aux;
  110. }
  111.  
  112. }
  113.  
  114. }
  115. tfim = System.nanoTime();
  116. // 1 milisegundo é 1000000 nanosegundos
  117. System.out.println("Tempo = " + ((tfim - tinicio) / 1000000.0) + " ms");
  118.  
  119. for(i = 0; i < vet.length; i++){
  120. System.out.print(vet[i] + " ");
  121. }
  122. System.out.println("\n");
  123. }
  124. //criação de um método que apresente o Quick, pois com as Recursões dentro do Quicksort o apresentação iria se repetir várias vezes
  125. public void apresentaQuick(int vet[]){
  126. //teste para ver se o vetor recebido está desordenado.
  127. for(int i = 0; i < vet.length; i++){
  128. System.out.print(vet[i] + " ");
  129. }
  130.  
  131. tinicio = System.nanoTime();
  132. Quicksort(vet, 0, vet.length - 1);
  133. tfim = System.nanoTime();
  134. System.out.println("Tempo = " + ((tfim - tinicio) / 1000000.0) + " ms ");
  135.  
  136. for(int i = 0; i < vet.length; i++){
  137. System.out.print(vet[i] + " ");
  138. }
  139.  
  140. System.out.println("\n");
  141. }
  142.  
  143. public void Quicksort(int v[], int esq, int dir){
  144. int pivo;
  145. if(esq < dir){
  146. pivo = Separar(v, esq, dir);
  147. Quicksort(v, esq, pivo - 1);
  148. Quicksort(v, pivo + 1, dir);
  149. }
  150. }
  151.  
  152. public static int Separar(int vet[], int esq, int dir){
  153. int c = vet[esq], i = esq + 1, j = dir, troca;
  154. while(i <= j){
  155. if(vet[i] <= c)
  156. i++;
  157. else if(c < vet[j])
  158. j--;
  159. else{
  160. troca = vet[i];
  161. vet[i] = vet[j];
  162. vet[j] = troca;
  163. }
  164. }
  165. i = j + 1;
  166. vet[esq] = vet[j];
  167. vet[j] = c;
  168. return j;
  169. }
  170.  
  171. public void Cocktail(int vetor[]){
  172. tinicio = System.nanoTime();
  173. int esq = 0, dir = vetor.length - 1, cond = 0, troca, i;
  174. while(cond == 0 && esq < dir){
  175. cond++;
  176. for(i = esq; i < dir; i++){
  177. if(vetor[i] > vetor[i + 1]){
  178. troca = vetor[i];
  179. vetor[i] = vetor[i + 1];
  180. vetor[i + 1] = troca;
  181. cond = 0;
  182. }
  183. }
  184. dir = dir - 1;
  185. for(i = dir; i > esq; i--){
  186. if(vetor[i] < vetor[i - 1]){
  187. troca = vetor[i];
  188. vetor[i] = vetor[i - 1];
  189. vetor[i - 1] = troca;
  190. cond = 0;
  191. }
  192. }
  193. esq = esq + 1;
  194. }
  195. tfim = System.nanoTime();
  196. System.out.println("Tempo = " + ((tfim - tinicio) / 1000000.0) + " ms");
  197.  
  198. for(i = 0; i < vetor.length; i++){
  199. System.out.print(vetor[i] + " ");
  200. }
  201. }
  202.  
  203. }
  204.  
  205.  
  206. //classe Reader
  207. import java.nio.file.Files;
  208. //biblioteca de manipulação de arquivos (Path e Paths)
  209. import java.nio.file.Path;
  210. import java.nio.file.Paths;
  211. public class Reader {
  212.  
  213. public void leitura() {
  214. // TODO Auto-generated method stub
  215. // Objeto Path armazena na variável "pasta", todo o caminho hierárquico que a fora especificado na Paths.
  216. Path pasta = Paths.get("C:/Users/WRJ/Documents/arq.txt");
  217. // condição caso o caminho esteja errado.
  218. try{
  219. //"File.readAllBytes irá ler o arquivo especifica na Path Pasta, onde se encontra o caminho especificado. E irá retornar um Array de bite, onde estará o texto
  220. byte[] text = Files.readAllBytes(pasta);
  221. String ler = new String(text);
  222. //para interpretação do arquivo armazenado no Array "text" é necessário uma String, que fora instanciada para a String "ler" interpretar o que contém na "text"
  223.  
  224. System.out.println(ler);
  225. //imprimir ler.
  226. }
  227. catch(Exception erro){
  228. }
  229. }
  230. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
Main.java:85: error: illegal character: '\u2003'
?
^
Main.java:205: error: illegal character: '\u2003'
?
^
Main.java:207: error: class, interface, or enum expected
import java.nio.file.Files;
       ^
Main.java:209: error: class, interface, or enum expected
import java.nio.file.Path;
^
Main.java:210: error: class, interface, or enum expected
import java.nio.file.Paths;
^
5 errors
stdout
Standard output is empty