Jump to content
Sign in to follow this  
Steiger!!

duvid

Recommended Posts

Steiger!!

boas

eu tenho uma grande dificuldade em resolver este problema

se me podessem ajudar tlvz kom um prototipo agradecia

o problema:

Sendo h= 1 + ½ + 1/3 + ¼ + ... + 1/N, prepare um algoritmo para calcular o número h, sendo o número N fornecido pelo utilizador.

Fikem bem

Share this post


Link to post
Share on other sites
David Pintassilgo

Tão,... vamos lá ver:

Ler n
array[x]=1
Para x=2 to n entao
         array[x]=(1/x)
Seguinte

no fim somar todo o array.

Assim de repente axo que é só isto!

(ps: já agora, evita MESMO usar titulos como esse "duvid", um titulo mais apelativo ajuda)


cool stuffs to check.

http://blog.zxcoders.com//

Share this post


Link to post
Share on other sites
Steiger!!

deixa ver se entendi

o n é o algoritmo k peço pa k se poxa calcular o h

e depois utilizo algum subprograma tipo funçao pa por h: 1 + 1/2....

ou so faço o array

tentei me explikar melhor k sou um pouco noob nisto:p

Share this post


Link to post
Share on other sites
David Pintassilgo

Pera ai que eu enganei-me e se calhar por isso é que tás a fazer confuzão:

Ler n

array[1]=1

Para x=2 to n entao

        array[x]=(1/x)

Seguinte

neste caso estou a ignorar a 1ª posição do array que é o array[0] só por uma questão de simplificação.

ou seja, vais carregar no array todos os valores que precisas de somar, e no fim é só correr um ciclo for para somar tudo, vai correndo os campos todos e vai somado cada um ao somatório que vem de traz


cool stuffs to check.

http://blog.zxcoders.com//

Share this post


Link to post
Share on other sites
Strong

Não é preciso usar arrays..


perl is a prismthrough which chaos breeds order.perfection attained.

Share this post


Link to post
Share on other sites
vbtipo

Não tenho o pascal para testar isto mas o código não deve fugir muito deste

o n é o valor dado pelo utilizador

c=0

a=1

while a<>n

        b=1/a

        c=c+b 

  wend


Lema: Se eu não saber de alguma coisa não se preocupem porque tento sempre ajudar alguma coisita, nem que seja, por palpites/sugestões.

Share this post


Link to post
Share on other sites
Warrior

Hmm... uma duvida:

o resultado (h) deve ser apresentado na forma numérica ou fraccional?

Porque se for uma fracção, nenhuma das vossas respostas serve, pois têm de fazer (por exemplo)

1/1 + 1/2 -> achar maximo divisor comum entre 1 e 2, reduzir ao mesmo denominador e somar numeradores, de seguida, simplificar a fracção (mdc entre numerador e denominador, e dividir ambos) e somar com 1/3, repetindo os passos iniciais.

Isto para dar a fraccao final, o resultado correcto.

Se precisares de ajuda posso-t ajudar a fazer o codigo

Share this post


Link to post
Share on other sites
Sub-Z3r0

Ler N

H = 0

Faça I de 1 até N

        H = H + 1/I

Seguinte

Simples

Share this post


Link to post
Share on other sites
elementsky

não poderá ser assim?:

program pap;

VAR

   n:real;

BEGIN
   WriteLn('Insira o Valor para N');
   ReadLn(n);
   WriteLn('O Valor d H é:', 1+(1/2)+(1/3)+(1/n));
   ReadLn;

Share this post


Link to post
Share on other sites
UnKnowN

não poderá ser assim?:

program pap;

VAR

  n:real;

BEGIN
  WriteLn('Insira o Valor para N');
  ReadLn(n);
  WriteLn('O Valor d H é:', 1+(1/2)+(1/3)+(1/n));
  ReadLn;

Acho que nao pk as reticências (...) querem dizer que do 1/4 passa para 1/5 e para 1/6, 1/7, 1/8 ... etc ;)

Share this post


Link to post
Share on other sites
maiden

Boas, este é o meu primeiro post e espero ser o mais correcto possível

Quanto ao problema, estava a pensar em algo do género:

var n,num,h:real;

begin
   WriteLn('Insira o Valor para N');
   ReadLn(num);
   h:=0;
   for n:=num downto 1 do begin
    h:=h+(1/n);
   end;
    write('o valor de h é: ',h);
    ReadLn;
end.

Espero ter ajudado de alguma forma

Cumps,

MAiDEN_DuDE

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.