-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpseudocodico.txt
128 lines (123 loc) · 3.26 KB
/
pseudocodico.txt
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
125
126
127
128
INÍCIO
DECLARE clientes[100][4]
DECLARE int id = 0
DECLARE int index = 0, escolha
MOSTRE "Menu UaiBank"
MOSTRE "1 - Inserir usuário"
MOSTRE "2 - Inserir vários usuários"
MOSTRE "3 - Buscar usuário por ID"
MOSTRE "4 - Transferência entre usuários"
MOSTRE "5 - Remover usuário por ID"
MOSTRE "0 - Sair"
ENQUANTO 1 FAÇA
LEIA escolha
CASO escolha
SEJA 1 FAÇA
DECLARE char[100] nome
DECLARE int idade
DECLARE float saldo
LEIA nome, idade
REPITA
LEIA saldo
SE saldo < 0 ENTÃO
MOSTRE "Saldo inválido"
FIMSE
ENQUANTO saldo < 0
id++
clientes[index][0] = id
clientes[index][1] = nome
clientes[index][2] = idade
clientes[index][3] = saldo
MOSTRE "Usuário inserido com id " + clientes[index][0]
index++
PARE
SEJA 2 FAÇA
DECLARE int qtdeUsuarios
LEIA qtdeUsuario
PARA int n = 0 ATÉ qtdeUsuario-1 PASSO 1 FAÇA
DECLARE char[100] nome
DECLARE int idade
DECLARE float saldo
LEIA nome, idade
REPITA
LEIA saldo
SE saldo < 0 ENTÃO
MOSTRE "Saldo inválido"
ENQUANTO saldo < 0
id++
clientes[index][0] = id
clientes[index][1] = nome
clientes[index][2] = idade
clientes[index][3] = saldo
FIMPARA
MOSTRE "Usuários inseridos com id "
PARA int n = 0 ATÉ qtdeUsuarios-1 PASSO n++ FAÇA
MOSTRE clientes[index-1-n][0]
FIMPARA
PARE
SEJA 3 FAÇA
DECLARE int idBusca
LEIA idBusca
PARA int n = 0 ATÉ index-1 PASSO 1 FAÇA
SE clientes[n][0] == idBusca ENTÃO
MOSTRE "O usuário " + clientes[n][0] + " tem saldo de R$" + clientes[n][3]
PARE
FIMSE
FIMPARA
MOSTRE "Erro: Usuário " + idBusca + " não encontrado"
PARE
SEJA 4 FAÇA
DECLARE int idOrigem, idDestino, n = 0, indexOrigem = 0, indexDestino = 0
DECLARE float quantia
LEIA (idOrigem, idDestino, quantia)
SE (idOrigem == IdDestino) ENTÃO
MOSTRE "Erro: Transferência entre o mesmo usuário”
SENAO
ENQUANTO (n < index) FAÇA
SE (clientes[n][0] == idOrigem) ENTÃO
indexOrigem = n
FIMSE
SE (clientes[n][0] == IdDestino) ENTÃO
indexDestino = n
FIMSE
n++
FIMENQUANTO
SE (indexOrigem == 0 || indexDestino == 0) ENTÃO
MOSTRE "Erro: Usuário ” + idOrigem + “ e/ou “ + idDestino + “ não encontrado”
SENAO
SE (clientes[indexOrigem][3] >= quantia) ENTÃO
clientes[indexOrigem][3] -= quantia
clientes[indexDestino][3] += quantia
MOSTRE "Transferência de " + idOrigem + " para " + idDestino + " feita com sucesso"
SENAO
MOSTRE "Erro: Saldo do usuário " + idOrigem + " é menor que R$", quantia
FIMSE
FIMSE
FIMSE
PARE
SEJA 5 FAÇA
DECLARE int idBusca, n = 0
LEIA (idBusca)
ENQUANTO (n < index) FAÇA
SE (clientes[n][0] == idBusca) ENTÃO
indexOrigem = n
remove(clientes[n][0])
remove(clientes[n][1])
remove(clientes[n][2])
remove(clientes[n][3])
PARE
FIMSE
n++
FIMENQUANTO
SE (n >= index) ENTÃO
MOSTRE "Erro: Usuário " + idBusca + " não encontrado"
FIMSE
PARE
SEJA 0 FAÇA
criarArquivoTxt(clientes)
RETORNE 0
SENAO
MOSTRE "Erro: Opção inválida"
FIMCASO
FIMENQUANTO
FIM