Fórum trabalho de escola #149995
26/03/2003
0
oi tudo bem,este é um trabalho para nota,e estou com alguns problemas,gostaria que vc desse uma olhada e visse onde eu estou errando,porque nos resultados as porcentagens não me parecem corretas,
desde já agradeço!!! abaixo do enunciado eu coloquei como eu fiz.
DETERMINAR AS POSSIBILIDADES DE OCORRENCIA DE RESULTADOS CARA E COROA NA SEQUENCIA DE 1000 LANÇAMENTOS VÁLIDOS DE 3 MOEDAS ,SENDO 1 DE R$ 0,25,1 DE R$ 0,50 E 1 DE R$ 1,00
AS MOEDAS SÃO EXTRAIDAS ALEATORIAMENTE DE UM RECIPIENTE.
APRESENTAR AO FINAL.
- ¬ DE MOEDAS DE 0,25 LANÇADAS
- ¬ DE MOEDAS DE 0,50 LANÇADAS
- ¬ DE MOEDAS DE 1,00 LANÇADAS
- ¬ DE RESULTADO CARA
MOEDAS DE 0,25
MOEDAS DE 0,50
MOEDAS DE 1,00
- ¬ DE RESULTADO COROA
MOEDAS DE 0,25
MOEDAS DE 0,50
MOEDAS DE 1,00
- ¬ DE LANÇAMENTOS INVÁLIDOS
--------------------------------------------------------------------------------------
procedure TForm1.Button1Click(Sender: TObject);
var
i : integer;
m25,m50,m1,rcaram25,rcaram50,rcaram1,rcoroam25,rcoroam50,rcoroam1:real;
vetor : array[0..5] of integer;
begin
for i := 0 to 1000 do
inc(vetor[random(6)]);
m25 := (vetor[0] + vetor[3])mod 100;//¬ DE MOEDAS DE 0,25 LANÇADAS
m50 := (vetor[1] + vetor[4])mod 100;//- ¬ DE MOEDAS DE 0,50 LANÇADAS
m1:= (vetor[2] + vetor[5])mod 100;//- ¬ DE MOEDAS DE 1,00 LANÇADAS
edit1.text:=floattostr(m25);
edit2.text:=floattostr(m50);
edit3.text:=floattostr(m1);
//- ¬ DE RESULTADO CARA
rcaram25:= vetor[0]mod 100;//MOEDAS DE 0,25
rcaram50:= vetor[1]mod 100;//MOEDAS DE 0,50
rcaram1:= vetor[2]mod 100;//MOEDAS DE 1,00
edit4.text:=floattostr(rcaram25);
edit5.text:=floattostr(rcaram50);
edit6.text:=floattostr(rcaram1);
//- ¬ DE RESULTADO COROA
rcoroam25:= vetor[3]mod 100;//MOEDAS DE 0,25
rcoroam50:= vetor[4]mod 100;//MOEDAS DE 0,50
rcoroam1:= vetor[5]mod 100;//MOEDAS DE 1,00
edit7.text:=floattostr(rcoroam25);
edit8.text:=floattostr(rcoroam50);
edit9.text:=floattostr(rcoroam1);
//- ¬ DE LANÇAMENTOS INVÁLIDOS
desde já agradeço!!! abaixo do enunciado eu coloquei como eu fiz.
DETERMINAR AS POSSIBILIDADES DE OCORRENCIA DE RESULTADOS CARA E COROA NA SEQUENCIA DE 1000 LANÇAMENTOS VÁLIDOS DE 3 MOEDAS ,SENDO 1 DE R$ 0,25,1 DE R$ 0,50 E 1 DE R$ 1,00
AS MOEDAS SÃO EXTRAIDAS ALEATORIAMENTE DE UM RECIPIENTE.
APRESENTAR AO FINAL.
- ¬ DE MOEDAS DE 0,25 LANÇADAS
- ¬ DE MOEDAS DE 0,50 LANÇADAS
- ¬ DE MOEDAS DE 1,00 LANÇADAS
- ¬ DE RESULTADO CARA
MOEDAS DE 0,25
MOEDAS DE 0,50
MOEDAS DE 1,00
- ¬ DE RESULTADO COROA
MOEDAS DE 0,25
MOEDAS DE 0,50
MOEDAS DE 1,00
- ¬ DE LANÇAMENTOS INVÁLIDOS
--------------------------------------------------------------------------------------
procedure TForm1.Button1Click(Sender: TObject);
var
i : integer;
m25,m50,m1,rcaram25,rcaram50,rcaram1,rcoroam25,rcoroam50,rcoroam1:real;
vetor : array[0..5] of integer;
begin
for i := 0 to 1000 do
inc(vetor[random(6)]);
m25 := (vetor[0] + vetor[3])mod 100;//¬ DE MOEDAS DE 0,25 LANÇADAS
m50 := (vetor[1] + vetor[4])mod 100;//- ¬ DE MOEDAS DE 0,50 LANÇADAS
m1:= (vetor[2] + vetor[5])mod 100;//- ¬ DE MOEDAS DE 1,00 LANÇADAS
edit1.text:=floattostr(m25);
edit2.text:=floattostr(m50);
edit3.text:=floattostr(m1);
//- ¬ DE RESULTADO CARA
rcaram25:= vetor[0]mod 100;//MOEDAS DE 0,25
rcaram50:= vetor[1]mod 100;//MOEDAS DE 0,50
rcaram1:= vetor[2]mod 100;//MOEDAS DE 1,00
edit4.text:=floattostr(rcaram25);
edit5.text:=floattostr(rcaram50);
edit6.text:=floattostr(rcaram1);
//- ¬ DE RESULTADO COROA
rcoroam25:= vetor[3]mod 100;//MOEDAS DE 0,25
rcoroam50:= vetor[4]mod 100;//MOEDAS DE 0,50
rcoroam1:= vetor[5]mod 100;//MOEDAS DE 1,00
edit7.text:=floattostr(rcoroam25);
edit8.text:=floattostr(rcoroam50);
edit9.text:=floattostr(rcoroam1);
//- ¬ DE LANÇAMENTOS INVÁLIDOS
Mikal
Curtir tópico
+ 0
Responder
Posts
26/03/2003
Anonymous
Os calculos devem ser assim
m25:=((vetor[0]+vetor[3]) / i) * 100
m50:=((vetor[1]+vetor[4]) / i) * 100
m1 :=((vetor[2]+vetor[5]) / i) * 100
em qualquer valor de i m25+m50+m1 tem que ser = 100
rcaram25:=(vetor[0] / i ) * 100
rcaram50:=(vetor[1] / i ) * 100
rcaram1 :=(vetor[2] / i ) * 100
rcoroam25:=(vetor[3] / i ) * 100
rcoroam50:=(vetor[4] / i ) * 100
rcoroam1 :=(vetor[5] / i ) * 100
Para transformar em String use o FloatToStrF(Variavel,ffFixed,6,2)
assim todos terão duas casas decimais
A somatoria destas seis últimas variaveis tambem tem que ser 100 para qualquer i.
Espero ter ajudado.
Marconi
m25:=((vetor[0]+vetor[3]) / i) * 100
m50:=((vetor[1]+vetor[4]) / i) * 100
m1 :=((vetor[2]+vetor[5]) / i) * 100
em qualquer valor de i m25+m50+m1 tem que ser = 100
rcaram25:=(vetor[0] / i ) * 100
rcaram50:=(vetor[1] / i ) * 100
rcaram1 :=(vetor[2] / i ) * 100
rcoroam25:=(vetor[3] / i ) * 100
rcoroam50:=(vetor[4] / i ) * 100
rcoroam1 :=(vetor[5] / i ) * 100
Para transformar em String use o FloatToStrF(Variavel,ffFixed,6,2)
assim todos terão duas casas decimais
A somatoria destas seis últimas variaveis tambem tem que ser 100 para qualquer i.
Espero ter ajudado.
Marconi
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)