-
Notifications
You must be signed in to change notification settings - Fork 0
/
Seguros.cs
306 lines (258 loc) · 8.66 KB
/
Seguros.cs
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
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
/*
* Classe Base CLIENTE
*/
using System;
using System.Collections.Generic;
using System.Text;
namespace Seguros
{
class Cliente
{
//variavel nome
private string nome;
//construtor sem parametro
public Cliente()
{
Nome = "";
}
//construtor com parametro
public Cliente(string n)
{
Nome = n;
}
//propriedades da variavel NOME
public string Nome
{
get { return nome; }
set { nome = value; }
}
//metodo ToString
public override string ToString()
{
string composite = String.Format("\nNome: {0}", nome);
return composite;
}
}
}
/*
* Classe Herdeira ASSEGURADO
*/
using System;
using System.Collections.Generic;
using System.Text;
namespace Seguros
{
//herança com a classe Cliente
class Assegurado:Cliente
{
//variavel nome da seguradora
private string nomeSeguradora;
//variavel numero do seguro
private int nSeguro;
//construtor sem parametros
public Assegurado()
: base()
{
NomeSeguradora = "";
NSeguro = 0;
}
//construtor com parametros
public Assegurado(string n, string nSeguradora, int nSeguro)
: base(n)
{
NomeSeguradora = nSeguradora;
NSeguro = nSeguro;
}
//propriedades da variavel NOMESEGURADORA
public string NomeSeguradora
{
get { return nomeSeguradora; }
set { nomeSeguradora = value; }
}
//propriedades da variavel NSEGURO
public int NSeguro
{
get { return nSeguro; }
set { nSeguro = ((value > 0)? value : 0); }
}
//metodo ToString
public override string ToString()
{
string composite = String.Format("{0}\nNome Seguradora: {1}\nNº Seguro: {2}", base.ToString(), NomeSeguradora, NSeguro);
return composite;
}
}
}
/*
* Classe Herdeira NAO ASSEGURADO
*/
using System;
using System.Collections.Generic;
using System.Text;
namespace Seguros
{
//herança com a classe Cliente
class NaoAssegurado:Cliente
{
//variaveis numero do cheque e numero do banco
private int nCheque, nBanco;
//variavel valor da consulta
private double valorConsulta;
//construtor sem parametros
public NaoAssegurado()
: base()
{
NCheque = 0;
NBanco = 0;
ValorConsulta = 0;
}
//construtor com parametros
public NaoAssegurado(string n, int nC, int nB, double vC)
: base(n)
{
NCheque = nC;
NBanco = nB;
ValorConsulta = vC;
}
//propriedades da variavel NCHEQUE
public int NCheque
{
get { return nCheque; }
set { nCheque = ((value > 0) ? value : 0); }
}
//propriedades da variavel NBANCO
public int NBanco
{
get { return nBanco; }
set { nBanco = ((value > 0) ? value : 0); }
}
//propriedades da variavel VALORCONSULTA
public double ValorConsulta
{
get { return valorConsulta; }
set { valorConsulta = ((value > 0) ? value : 0); }
}
//metodo ToSTring
public override string ToString()
{
string composite = String.Format("{0}\nValor da Consulta: {1:F}\nNº Cheque: {2}\nNº Banco: {3}", base.ToString(), ValorConsulta, NCheque, NBanco);
return composite;
}
}
}
/*
* Parte Principal do Programa
* Contem os Menus
*
* Coloquei varios comentarios no programa,
* para indicar o que esta sendo feito em cada lugar.
*
* Mas, se preferir, pode tira-los.
*/
using System;
using System.Collections.Generic;
using System.Text;
namespace Seguros
{
class Program
{
static void Main(string[] args)
{
//variaveis nome e nome da seguradora
string nome, nomeSeguradora;
//variaveis nº do seguro, nº do cheque e nº do banco
int numSeguro, numCheque, numBanco;
//variavel valor da consulta
double valorConsulta;
//variavel posição do vetor
//ela sera utliziada para que cada objeto criado seja colocado em uma nova posicao no vetor
int posVetor=0;
//variavel escolha do menu
int escolhaMenu;
//criação do vetor de Clientes (20 posições)
Cliente[] vetorSeguro = new Cliente[20];
//variavel que controla o while
int op=1;
while (op == 1)
{
Console.Clear();
//menu de opçoes ao usuario
Console.Write("Menu");
Console.WriteLine("\n\n1 - Inserir Assegurado");
Console.WriteLine("2 - Inserir Nao Assegurado");
Console.WriteLine("3 - Exibir Vetor de Clientes");
Console.WriteLine("4 - Sair");
escolhaMenu = Int32.Parse(Console.ReadLine());
//inicio do switch
switch (escolhaMenu)
{
case 1:
{
//area para inserir dados de um ASSEGURADO
Console.Clear();
Console.Write("Assegurado");
Console.Write("\n\nNome: ");
nome = Console.ReadLine();
Console.Write("\nNome Seguradora: ");
nomeSeguradora = Console.ReadLine();
Console.Write("\nNº Seguro: ");
numSeguro = Int32.Parse(Console.ReadLine());
//criação do objeto da classe Assegurado dentro do vetorSeguro
vetorSeguro[posVetor] = new Assegurado(nome, nomeSeguradora, numSeguro);
//adiciona + 1 a variavel de posição do vetor
posVetor += 1;
break;
}
case 2:
{
//area para inserir dados de um NAO ASSEGURADO
Console.Clear();
Console.Write("Nao Assegurado");
Console.Write("\n\nNome: ");
nome = Console.ReadLine();
Console.Write("\nValor da Consulta: ");
valorConsulta = Double.Parse(Console.ReadLine());
Console.Write("\nNº Cheque: ");
numCheque = Int32.Parse(Console.ReadLine());
Console.Write("\nNº Banco: ");
numBanco = Int32.Parse(Console.ReadLine());
//criação do objeto da classe NaoAssegurado dentro do vetorSeguro
vetorSeguro[posVetor] = new NaoAssegurado(nome, numCheque, numBanco, valorConsulta);
//adiciona + 1 a variavel de posição do vetor
posVetor += 1;
break;
}
case 3:
{
//area para exibir o vetor de clientes
Console.Clear();
Console.WriteLine("Exibir o vetor de Clientes");
foreach (Cliente atual in vetorSeguro)
{
if (atual != null)
{
Console.WriteLine(atual);
Console.ReadKey();
}
}
break;
}
case 4:
{
//area para sair do programa
op = 2;
break;
}
default:
{
//opcao default
Console.Clear();
Console.Write("Opcao Invalida!");
Console.ReadKey();
break;
}
}
}
}
}
}