Ir para o conteúdo
Guest tsenart

[Resolvido] Soma de impares

Mensagens Recomendadas

Guest tsenart   
Guest tsenart

Olá pessoal.

Estou a fazer uns exercicios de pascal e encravei neste :-[ ....

O enunciado diz o seguinte:

Escreva e teste um programa em Pascal correspondente ás seguintes situações:

.....

20.3.Calcule e escreva o somatório dos números ímpares entre [glow=red,2,300]0[/glow] e um outro número inteiro positivo a fornecer pelo utilizador.

program vinte_tres;

var num ,soma, conta:integer;

begin
    write('Introduza um número: '); readln(num);
    soma:=0;
    for conta:=0 to num do
    begin
       if (conta MOD 2<>0) then
       soma:=soma+conta;
       writeln(soma);
    end;
end.

Isto foi o que eu fiza mas testei-o e correu mal... Por exemplo com o número 10 dá-me o seguinte:

Introduza um número: 10
0
1
1
4
4
9
9
16
16
25
25

Any help? ;)

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Saco    0
Saco

Mas isso está certo... 1+3+5+7+9 = 25

Se o problema é os números aparecerem 2 vezes, isso é por causa de o if só englobar a linha soma:=soma+conta; logo a soma é sempre impressa, quer o conta seja par quer seja ímpar.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade