-
Notifications
You must be signed in to change notification settings - Fork 0
/
script.c
121 lines (106 loc) · 3.24 KB
/
script.c
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
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
// ordenando com C (decrescente)
// tamanho do array definido em 5.
int orderList(int list[5], int tam){
int loopDecrement;
int loopIncrement;
int i;
for (loopDecrement = --tam; loopDecrement >= 0; loopDecrement--){
int auxiliary = list[0];
// printf("\n");
for(loopIncrement = 0; loopIncrement < tam; loopIncrement++){
if(list[loopIncrement] > list[loopIncrement + 1]){
auxiliary = list[loopIncrement];
list[loopIncrement] = list[loopIncrement + 1];
list[loopIncrement + 1] = auxiliary;
}
// for (i=0; i<tam; i++){
// printf("| %d ", list[i]);
// }
// printf("\n");
}
}
}
int orderListAscTwo(int list[5], int tam){
int loop = 1;
int loopIncrement;
int i;
do{
int auxiliary = list[0];
int houveMudanca = 0;
// printf("\n");
for(loopIncrement = 0; loopIncrement < tam; loopIncrement++){
if(list[loopIncrement] > list[loopIncrement + 1] && list[loopIncrement + 1] != NULL){
auxiliary = list[loopIncrement];
list[loopIncrement] = list[loopIncrement + 1];
list[loopIncrement + 1] = auxiliary;
houveMudanca = 1;
}
// printf("%d", loopIncrement);
// for (i=0; i<tam; i++){
// printf("| %d ", list[i]);
// }
// printf("\n");
}
if(!houveMudanca){
loop = 0;
}
}while(loop);
}
int orderListDescTwo(int list[5], int tam){
int loop = 1;
int loopIncrement;
int i;
do{
int auxiliary = list[0];
int houveMudanca = 0;
// printf("\n");
for(loopIncrement = 0; loopIncrement < tam; loopIncrement++){
if(list[loopIncrement] < list[loopIncrement + 1] && list[loopIncrement + 1] != NULL){
auxiliary = list[loopIncrement];
list[loopIncrement] = list[loopIncrement + 1];
list[loopIncrement + 1] = auxiliary;
houveMudanca = 1;
}
// printf("%d", loopIncrement);
// for (i=0; i<tam; i++){
// printf("| %d ", list[i]);
// }
// printf("\n");
}
if(!houveMudanca){
loop = 0;
}
}while(loop);
}
int main (){
// trocando apenas o sinal < > altera a ordem da lista
// testes
// int list[] = {100,50,25,5,0};
// int list[] = {123,456,768,910,911};
int list[] = {0,100,60,85,30};
int tam = sizeof(list)/sizeof(list[0]);
int i;
// printf("\n %d", tam);
printf("ORDER LIST VERSION 1");
orderList(list, tam);
for (i=0; i<tam; i++){
printf("\n %d ", list[i]);
}
printf("\n");
printf("\n");
printf("ORDERED LIST VERSION 2\n");
printf("ORDERED IN ASC");
orderListAscTwo(list, tam);
for (i=0; i<tam; i++){
printf("\n %d ", list[i]);
}
printf("\n");
printf("ORDERED IN DESC");
orderListDescTwo(list, tam);
for (i=0; i<tam; i++){
printf("\n %d ", list[i]);
}
}