forked from henrique4d/Simulador
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Talhao.cs
143 lines (128 loc) · 3.99 KB
/
Talhao.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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Simulador
{
class Talhao
{
public List<Parcela> parcelas;
public string numero;
public string regiao;
public int num_parcelas;
public double idade;
public double dap_medio;
public double altura_media;
string material_genetico;
public List<double> volume;
public List<double> lucro;
public List<double> lucro_hectare;
public double ima;
public double vpl;
public double vpl2;
public double vae;
public double vae2;
public double vpl_infinito;
public double vpl_infinito2;
public double vet;
public double vet2;
public double B0_dap;
public double B1_dap;
public double B0_altura;
public double B1_altura;
public double area_talhao;
public Talhao(string num, int quant_produtos)
{
volume = new List<double>();
lucro = new List<double>();
lucro_hectare = new List<double>();
for (int i = 0; i <= quant_produtos; i++)
{
volume.Add(0);
lucro.Add(0);
lucro_hectare.Add(0);
}
parcelas = new List<Parcela>();
this.numero = num;
B0_dap = 0;
B1_dap = 0;
B0_altura = 0;
B1_altura = 0;
}
public void adiciona_arvore(ref Arvore arvore)
{
foreach (Parcela parc in parcelas)
{
if (parc.numero == arvore.parcela)
{
parc.arvores.Add(arvore);
return;
}
}
Parcela nova_parcela = new Parcela(arvore.parcela, volume.Count());
nova_parcela.arvores.Add(arvore);
parcelas.Add(nova_parcela);
}
public void set_dados()
{
foreach(Parcela parc in parcelas)
{
parc.set_dados();
}
regiao = parcelas[0].regiao;
material_genetico = parcelas[0].material_genetico;
num_parcelas = parcelas.Count();
idade = parcelas[0].idade;
altura_media = 0;
dap_medio = 0;
for (int i=0; i< volume.Count(); i++)
{
volume[i] = 0;
}
ima = 0;
vpl = 0;
vpl2 = 0;
vae = 0;
vae2 = 0;
vpl_infinito = 0;
vpl_infinito2 = 0;
vet = 0;
vet2 = 0;
foreach (Parcela parc in parcelas)
{
for (int i = 0; i < volume.Count(); i++)
{
volume[i] += parc.volume[i];
}
altura_media += parc.altura_media;
dap_medio += parc.dap_medio;
ima += parc.ima;
vpl += parc.vpl;
vpl2 += parc.vpl2;
vae += parc.vae;
vae2 += parc.vae2;
vpl_infinito += parc.vpl_infinito;
vpl_infinito2 += parc.vpl_infinito2;
vet += parc.vet;
vet2 += parc.vet2;
}
area_talhao = parcelas[0].area_talhao;
dap_medio /= parcelas.Count(); ;
altura_media /= parcelas.Count(); ;
for (int i = 0; i < volume.Count(); i++)
{
volume[i] /= parcelas.Count(); ;
}
ima /= parcelas.Count();
vpl /= parcelas.Count();
vpl2 /= parcelas.Count();
vae /= parcelas.Count();
vae2 /= parcelas.Count();
vpl_infinito /= parcelas.Count();
vpl_infinito2 /= parcelas.Count();
vet /= parcelas.Count();
vet2 /= parcelas.Count();
}
}
}