-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path20160606_p3_1.alg
124 lines (113 loc) · 1.99 KB
/
20160606_p3_1.alg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
algoritmo "questao_1"
// Função :
// Autor : Guilherme R. Utech & Lucas Litter Mentz
// Data : 02/06/2016
// Seção de Declarações
var
a: vetor[1..15] de inteiro
contp,met,i,j,aux,comeco,fim,meio,p:inteiro
enc:logico
inicio
a[1] <- 5
a[2] <- 4
a[3] <- 3
a[4] <- 2
a[5] <- 1
a[6] <- 10
a[7] <- 9
a[8] <- 8
a[9] <- 7
a[10] <- 6
a[11] <- 15
a[12] <- 14
a[13] <- 13
a[14] <- 12
a[15] <- 11
escreva("A:")
para i de 1 ate 15 faca
escreva(a[i])
fimpara
escreval()
para i de 1 ate 14 faca
para j de i+1 ate 15 faca
se a[i]>a[j] entao
aux <- a[i]
a[i] <- a[j]
a[j] <- aux
fimse
fimpara
fimpara
escreval("B: OK")
escreva("C:")
para i de 1 ate 15 faca
escreva(a[i])
fimpara
escreval()
fim <- 15
comeco <- 1
meio <- (comeco+fim)\2
escreval("D: ",meio:1)
escreva("E:")
para i de 1 ate meio faca
escreva(a[i])
fimpara
escreval()
para i de meio+1 ate 15 faca
escreva(a[i])
fimpara
escreval()
escreva("F: Que numero quer pesquisar? ")
leia(p)
escreva("G: ")
contp <- 0
enc <- FALSO
se p<meio entao
met <- 1 //primeira metade
senao
met <- 2 //segunda metade
fimse
se (met=1) entao
para i de comeco ate meio faca
contp <- contp + 1
se (a[i]=p) entao
escreval("Encontrado na posicao",i," do vetor")
enc <- VERDADEIRO
interrompa
fimse
fimpara
senao
para i de meio+1 ate fim faca
contp <- contp + 1
se (a[i]=p) entao
escreval("Encontrado na posicao",i," do vetor")
enc <- VERDADEIRO
interrompa
fimse
fimpara
fimse
escreva("H: ")
se (enc) entao
escreval("Foram",contp," passos até encontrar")
senao
escreval("Valor não encontrado")
fimse
escreva("I:")
para i de 1 ate 14 faca
para j de i+1 ate 15 faca
se (a[i]<a[j]) entao
aux <- a[i]
a[i] <- a[j]
a[j] <- aux
fimse
fimpara
fimpara
para i de 1 ate 15 faca
escreva(a[i])
fimpara
escreval()
escreva("J:")
para i de 1 ate 15 faca
escreva(a[i]*2)
fimpara
escreval()
fimalgoritmo