Ir ao conteúdo
  • Cadastre-se

DEVC++ Algoritmos


Regiane Galdino

Posts recomendados

Boa noite Pessoal, estou com dificuldade em concluir um algoritmo é um trabalho de faculdade e confesso que não é meu forte, estou estudando algumas literaturas mas ainda não obtive sucesso, espero que possam me ajudar, pois preciso concluir o quanto antes, segue exercício e o que já elaborei:

 

/* 4 - Página 62
Ao completar o tanque de combustível de um automóvel, faça algoritmos que calcule o CONSUMO EFETUADO, assim como a AUTONOMIA que o
carro teria antes do abastecimento. Considere que o veículo sempre seja abastecido até encher o tanque, a quantidade de litros abastecidos
e a quilometragem percorrida desde o último abastecimento.*/

 

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <math.h>

// Qual o consumo efetuado?
// Qual a autonomia que ainda teria antes do abastecimento?
// CT = Capacidade do Tanque;
// QLA = Quantidade de Litros Abastecidos;
// QP = Quilometragem Percorrida;
// C = Consumo
// AF = Autonomia Futura
// ST = Sobra Tanque
main()
{
    system ("color 0E");
    setlocale(LC_ALL, "Portuguese");
    int CT, QLA, QP, C, ST, AF;
    printf("Digite a capacidade do tanque em Litros: ");
    scanf("%i: L", &CT);
    printf("Digite a Quantidade de Litros Abastecidos: ");
    scanf("%i: L",&QLA);
    printf("Digite a quilometragem percorrida desde o último abastecimento:");
    scanf("%i : km", &QP);
    if (C = QLA / QP)
    {
    printf("Consumo efetuado é de:  = %i lts/km \n", &C);
    }
    if (ST = CT - QLA)
    {
    printf ("Sobrou %i: L de combustível no tanque", &ST);
    }
    if (AF = ST/ C)
    {
    printf ("Autonomia que ainda teria é de: = %i \n", &AF);
    }
}

Link para o comentário
Compartilhar em outros sites

Boa noite, nesse caso não é necessário usar if, apenas faça o cálculo e mostre o resultado. Porém, veja o que acontece quando você faz isso:

if (AF = ST/ C), você está executando o programa nessa ordem:

 

1) o if executa a operação em vez de verificar uma condição.

2) ST divide por C (operação)

3) AF obtém o resultado de ST/C (operação)

 

você poderia executar normalmente acima, mas é inutil, a não ser que você use o AF posteriormente ou/e tenha uma condição no if, como:

if((AF = ST/C) <= 5){

if( AF == 5 ) {...}

}

 

Enfim, tire os if's e use normalmente:

C = QLA / QP;
printf("Consumo efetuado é de:  = %i lts/km \n", C);// Se usar & ira mostrar o endereço não o valor
ST = CT - QLA;
printf ("Sobrou %i: L de combustível no tanque", ST);
AF = ST/ C;
printf ("Autonomia que ainda teria é de: = %i \n", AF);

 

P.S: Respondi, presumindo que os cálculos estavam certos...

Link para o comentário
Compartilhar em outros sites

Boa noite, obrigada pelas dicas, tentei com e sem o if, porém o programa parece que entra em uma loop infinita, ele carrega e mas não conclui vou anexar as imagens para melhor compreensão, veja o que acontece:59ab519b43cfd_DEVC.JPG.77c8510218f8b88965ae6f339f1ae355.JPG

A partir desta linha ele só continua se digitar um número a mais, e depois ele faz o cálculo mas errado.

59ab51a213407_DEVC.2.JPG.afffb79e55b0123f21e7518b897bc990.JPG

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!