English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
Todas as categorias

Eu queria entender esse algoritmo. Poderiam explicar? Não entendi como o H pode ser (gerado) mostrado na tela,sendo que ele está sendo somado a 1,dividido por i e atribuído a ele mesmo e antes disso,nada foi declarado,nenhum número de modo que H tenha algum valor numérico.

E por que "passo -1"?

Sendo H = 1 + 1/2 + 1/3 + 1/4 + ... + 1/N, escreva um algoritmo para gerar o número H. O número N é fornecido pelo usuário.



Algoritmo numero;

Var N,i: inteiro;
H: real;

Início
Escreva ("Informe o valor para N");
Leia (N);

Para i de 1 até N passo -1 faça

H <- H + 1/i;

FimPara;

Escreva (H);
Fim;

2006-09-20 07:21:51 · 4 respostas · perguntado por BioClon 7 em Computadores e Internet Programação e Design

Agradeço aos que responderam,mas deu na mesma.


// aqui está compreensível
Var N,i: inteiro;

// aqui também.
H: real;

Início

Escreva ("Informe o valor para N");
Leia (N);
//até esse leia(N) também dá pra entender.

Para i de 1 até N passo -1 faça
//aqui complicou. Como é que o H vai receber //H+1/i??? Quem é H?

H <- H + 1/i;

FimPara;

2006-09-20 08:32:19 · update #1

4 respostas

Respondi comentando o algorítmo:

// Declara 2 variáveis do tipo inteiro
Var N,i: inteiro;

// Declara 1 variável do tipo ponto flutuante (real)
H: real;

Início

// Lê um valor para a variável N
Escreva ("Informe o valor para N");
Leia (N);

// O certo seria fazer de N até 1, para cada iteração subtrai -1 do valor de i.

Para i de 1 até N passo -1 faça

H <- H + 1/i;

FimPara;


// Imprime o valor de H na tela.
Escreva (H);
Fim;

H é o resultado da soma das frações, quando faz H <- H + 1/i
significa que H está acumulando os valores de cada fração na iteração "Para".
Para ficar melhor deveria iniciar H com zero (H <- 0)
Entendeu?

2006-09-20 07:37:20 · answer #1 · answered by Itamar R 5 · 0 0

Seu algoritmo está errado!!

N: inteiro;
i = 0: inteiro;
H = 0: real;

Início
Escreva ("Informe o valor para N");
Leia (N);

Para i de 1 até N passo +1 faça

H <- H + 1/i;

FimPara;

Escreva (H);
Fim;

Pelo que eu entendi "passo +1" seria que ao final do laço a variavel i e incrementada em um "i = i + 1"

2006-09-20 14:35:32 · answer #2 · answered by Konig 3 · 0 0

Acho que quem escreveu o algoritmo esqueceu de inicializar H com o valor 0. Assim ele funcionaria, se não fosse o passo -1.

Não faz sentido ter esse passo -1. E se você entrar N como sendo 1? Vai ser de 1 até 0? Não pode. Por outro lado, se você tirar o -1, e colocarmos

Para i de 1 até o passo N

... vai funcionar perfeitamente.

2006-09-20 14:34:15 · answer #3 · answered by Paraiba 2 · 0 0

isso. ta certo!
q q vc quer afinal?

2006-09-20 14:30:15 · answer #4 · answered by Anne* 3 · 0 0

fedest.com, questions and answers