trabalho de escola

Delphi

26/03/2003

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


Mikal

Mikal

Curtidas 0

Respostas

Anonymous

Anonymous

26/03/2003

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


GOSTEI 0
POSTAR