Jump to content
Fórum Script Brasil
  • 0

Ajuda


Natalie M.
 Share

Question

O programa recebe como entrada os quilômetros rodados e os litros gastos para cada tanque. Calcula e exibe os quilômetros por litro obtidos para cada tanque.

O problema é que após exibir o resultado ele continua perguntando várias vezes, mesmo depois de eu ter digitado -1, que é o comando que deveria finalizar. Como resolvo isso?

Depois de resolver esse problema, tenho que fazer outras coisas:

"Depois de processar todas as informações fornecidas, o programa deve calcular e imprimir os quilômetros por litro obtidos por todos os tanques combinados (média)."

Como armazeno as informações anteriores, sendo que não há um número de entradas definido? Usei while, mas não consigo calcular a média, já que não sei quantas vezes o usuário informou, não sei pelo que dividir.

O que eu fiz:

#include <math.h>
#include <stdio.h>
#include <iostream>

using namespace std;

int main()
{
 int number1l = 0;
 int number2q = 0;
 int m1 = 0;

 while (number1l != -1) {
 printf ("Digite os litros usados (-1 para fim):\n");
 scanf ("%d",&number1l);

 printf ("Digite os quilômetros dirigidos:\n");
 scanf ("%d",&number2q);

 m1 = number2q / number1l;

 printf ("Os quilômetros/litro para esse tanque foram: ");
 printf ("\n%d", &m1);
 scanf ("%d",&m1);

}

 printf ("Média total:\n");
 average =  &m1;
 return 0;

}

Alguém pode me ajudar?

Link to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 0

Boa tarde, Não entedi porque a passagem de endereço de memória de m1 para avarage (average = &m1;) e pra não ficar no loop infinito.

Na declaração das variaveis tira a atribuição 0 (ZERO) que vai funciona... e outra dica

esperimenta fazer com

do{

while(condição);

Link to comment
Share on other sites

  • 0

Tenta assim

#include <math.h>
#include <stdio.h>
#include <iostream>

using namespace std;

int main()
{
int number1l = 0;
int number2q = 0;
int m1 = 0;

while (number1l != -1) {
printf ("Digite os litros usados (-1 para fim):\n");
scanf ("%d",&number1l);
if (number1l == -1)
break;

printf ("Digite os quilômetros dirigidos:\n");
scanf ("%d",&number2q);

m1 = number2q / number1l;

printf ("Os quilômetros/litro para esse tanque foram: ");
printf ("\n%d", &m1);
scanf ("%d",&m1);

}

printf ("Média total:\n");
average =  &m1;
return 0;

}

Ou seja, adicionei o if, se for igual a -1 break (pare)

if (number1l == -1)

break;

abraços.

Link to comment
Share on other sites

  • 0

Obrigada pessoal, mas ainda tem um problema... :wacko:

Ficou assim:

#include <math.h>

#include <stdio.h>

#include <iostream>

using namespace std;

int main()

{

int number1l;

int number2q;

int m1;

while (number1l != -1) {

printf ("Digite os litros usados (-1 para fim):\n");

scanf ("%d",&number1l);

if (number1l == -1)

break;

printf ("Digite os quilômetros dirigidos:\n");

scanf ("%d",&number2q);

m1 = number2q / number1l;

printf ("Os quilômetros/litro para esse tanque foram:\n");

printf ("%d",&m1);

scanf ("%d",&m1);

}

printf ("Média total:\n");

printf ("%d",&m1);

return 0;

}

Mas continuo sem saber como calculo a média. :( Coloquei para mostrar o &m1, mas ele mostra a última média calculada, preciso que mostre a média total (cálculo envolvendo todas as médias informadas). Como faço isso?

Link to comment
Share on other sites

  • 0
Obrigada pessoal, mas ainda tem um problema... :wacko:

Ficou assim:

#include <math.h>

#include <stdio.h>

#include <iostream>

using namespace std;

int main()

{

int number1l;

int number2q;

int m1;

while (number1l != -1) {

printf ("Digite os litros usados (-1 para fim):\n");

scanf ("%d",&number1l);

if (number1l == -1)

break;

printf ("Digite os quilômetros dirigidos:\n");

scanf ("%d",&number2q);

m1 = number2q / number1l;

printf ("Os quilômetros/litro para esse tanque foram:\n");

printf ("%d",&m1);

scanf ("%d",&m1);

}

printf ("Média total:\n");

printf ("%d",&m1);

return 0;

}

Mas continuo sem saber como calculo a média. :( Coloquei para mostrar o &m1, mas ele mostra a última média calculada, preciso que mostre a média total (cálculo envolvendo todas as médias informadas). Como faço isso?

estou indo dormi amanhacedo eu resp

Link to comment
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.

 Share



  • Forum Statistics

    • Total Topics
      150.8k
    • Total Posts
      648.7k
×
×
  • Create New...