phk1 Postado Julho 23, 2018 Denunciar Share Postado Julho 23, 2018 Fiz o exercício, mas não sei porque não está funcionando. { Escreva um algoritmo que calcule e escreva a soma dos dez primeiros termos da seguinte serie: 2/500 - 5/450 + 2/400 - 5/350 + ... } #include <iostream> #include <cstdlib> #include <stdio.h> using namespace std; int main() { setlocale(LC_ALL, "Portuguese"); int i, denominador; float s; denominador = 500; s = 0; for (i=1;i<=10;i++) { if ((i % 2) != 0) { s = s + (2/denominador); } else { s = s - (5/denominador); } denominador = denominador - 50; cout << s << "/" << denominador; } return 0; } D sempre 0250. Não descubro o erro. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Thiago André Cardoso Postado Julho 25, 2018 Denunciar Share Postado Julho 25, 2018 Em 23/07/2018 at 10:21, phk1 disse: Fiz o exercício, mas não sei porque não está funcionando. { Escreva um algoritmo que calcule e escreva a soma dos dez primeiros termos da seguinte serie: 2/500 - 5/450 + 2/400 - 5/350 + ... } #include <iostream> #include <cstdlib> #include <stdio.h> using namespace std; int main() { setlocale(LC_ALL, "Portuguese"); int i, denominador; float s; denominador = 500; s = 0; for (i=1;i<=10;i++) { if ((i % 2) != 0) { s = s + (2/denominador); } else { s = s - (5/denominador); } denominador = denominador - 50; cout << s << "/" << denominador; } return 0; } D sempre 0250. Não descubro o erro. #include <stdio.h> #include <stdlib.h> #define S_D 50; //Constante que irá subtrair 50 do denominador int main(void) { float denominador = 500; //valor inicial do denominador float soma = 0; //valores de soma e do denominador tem que ser flutuante for (int i = 2; i < 12; i++){ if (i%2 == 0){ soma = soma + (2/denominador); }else { soma = soma - (5/denominador); } denominador -= S_D; } printf("Soma = %f\n", soma); } Bom dia amigo, O meu deu certo quando coloquei o denominador como float. O resultado final é -0.13313 Verifica os dois programas e compara se está tudo ok. Espero ter ajudado, abraços. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 phk1 Postado Julho 27, 2018 Autor Denunciar Share Postado Julho 27, 2018 Valeu. Obrigado. Minha dúvida é seu eu quiser mostrar assim: a/b. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
phk1
Fiz o exercício, mas não sei porque não está funcionando.
{ Escreva um algoritmo que calcule e escreva a soma dos dez primeiros termos da seguinte serie: 2/500 - 5/450 + 2/400 - 5/350 + ... }
#include <iostream>
#include <cstdlib>
#include <stdio.h>
using namespace std;
int main()
{
setlocale(LC_ALL, "Portuguese");
int i, denominador;
float s;
denominador = 500;
s = 0;
for (i=1;i<=10;i++)
{
if ((i % 2) != 0)
{
s = s + (2/denominador);
}
else
{
s = s - (5/denominador);
}
denominador = denominador - 50;
cout << s << "/" << denominador;
}
return 0;
}
D sempre 0250. Não descubro o erro.
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.