Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

zaggor

Algoritmo em C usando while

Recommended Posts

Preciso de um algoritmo para o seguinte problema Chico tem 1,50 metros e cresce 2 cm por ano, enquanto Zé tem 1,10 metros e cresce 3 cm por ano. Construa um programa que calcule e imprima quantos anos serão necessários para que Zé seja maior que Chico. (while)

 

Agradeço muito quem puder me ajudar, sou novo neste fórum e peço desculpas se postei de forma errada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

chico = 150;

ze = 110;

anos = 0;

 

while(chico!=ze)

{

chico+=2;

ze+=3;

anos+=1;

}

 

Ou você pode usar aquela formula que eu já não me lembro de quando fazíamos isso na 3~4 série.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, ok.

 

Mas o que já fez? O exemplo do Shurd é válido, mas utilize um float (números com casas decimais):

 

float chico = 1,50;
float ze = 1,10;
int anos = 0;

while(chico != ze)
{
   chico += 0,02;
   ze += 0,03;
   ++anos;
}

 

Talvez seja melhor substituir o while por um for:

 

float chico = 1,50;
float ze = 1,10;
int anos = 0;

for(; chico != ze; ++anos)
{
   chico += 0,02;
   ze += 0,03;
}

 

O problema é se o seu professor não deixa, algo do tipo. Porque se não, é de melhor prática. Ah, e lembrando que você pode por o "int anos = 0" dentro da primeira parte do for se quiser.

 

 

Abraços :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

A solução da galera tá quase perfeita, o único problema é a condição que vocês usaram, pois NUNCA a altura de chico será igual a de ze, logo se você usar o "diferente de" (!=) cairá num laço infinito, o correto é usar "maior que" (>).

 

http://codepad.org/cd9tIwcr

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.