• 0
Sign in to follow this  
Niedson Santana

imprimindo formatado

Question

Olá Boa noite!
Estou aprendendo a programar e estou com dúvidas nesse exercício:

questão:

Escreva um programa que calcule os N termos da série S  abaixo:

 S = (1/3) + (2/6) + (3/9) + (4/12) + …

O seu programa deve imprimir na saída padrão tanto os termos da série quanto o valor da soma com precisão de 2 casas decimais.

exemplo:

entrada: 8 

saída: 

1/3 + 2/6 + 3/9 + 4/12 + 5/15 + 6/18 + 7/21 + 8/24

2.67

 

fiz assim 

 

#include<stdio.h>

main(){
    
    
    int s,seg,pri;
    double div, res;
    scanf("%i", &s);
    for(pri=1; pri<=s; pri++){
    
    seg=pri*3;
    div=pri/seg;
    res+=div;
    
    printf("%i/%i",pri,seg);
    if(pri<s)
    printf(" + ");
    
}
    printf("\n%f", res);
}

 

consigo imprimir os termos certinho só que o resultado só sai um monte de zero . se alguém puder de dá uma ajuda eu agradeço muito. 

Share this post


Link to post
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Boa tarde, Niedson.

Olhando seu código verifiquei que você esqueceu de inicializar a variável "res" com zero antes de utilizá-la. Se você não inicializá-la antes de utilizar em uma expressão o próprio C atribui um valor qualquer para esta variável, o que gera erro.

Quanto a imprimir formatado, se você quiser, por exemplo, imprimir um número como 27.58 você deve fazer:

printf("%5.2f", res);

onde o 5 é a quantidade total de dígitos mais o ponto(neste caso quatro números mais o ponto).

e o 2 é quantidade de casas decimais(neste caso 58).

Mas sua variável "res" foi declarada do tipo double.Neste caso você usa %lf e não %f.

Beleza?

Não esqueça de editar seu tópico e colocar [resolvido] se o problema for resolvido.

Edited by asantos38
acescentar informação

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this