Josy Almeida 0 Denunciar post Postado Janeiro 11, 2014 Olá, gostaria que voces me ajudassem porque estou com essa duvida cruel que eu nao consigo resolver de jeito nenhum. É o seguinte: Estou fazendo um programa para calcular e imprimir a media dos pesos de cada faixa etária. Estou fazendo pela estrutura de repetição While porque o meu professor disse pra fazer usando essa. Já vi varias respostas em varios sites e foruns que usaram o For, mas isso nao vem ao caso agora. Se tiverem muuuuuuuuuuuita coisa errada, podem falar, nao importo, ja estou acostumada com isso :( tanto que é por isso que estou participando desse forum. Ah é! O erro que está dando é no Else, daí q vem a minha duvida. Vou deixa aqui um pedacinho do meu codigo para voces analisarem e me ajudarem. Desde já agradeço. O código é esse: int idade,cont,soma,ida,idb,idc,idd; float peso,meda,medb,medc,medd; cont=1; while (cont<=10); cout<<"Digite a idade da pessoa \n"; cin>>idade; cout<<"Digite o peso dessa pessoa\n"; cin>>peso; if (idade<=10){ meda=peso/ida; } else{ if (idade<=20) medb=peso/idb; } } else if (idade<=30){ medc=peso/idc; } } else { if (idade<30){ medd=peso/idd; } } cont++; } cout<<"A media a e:"<<meda; cout<<"A media b e:"<<medb; cout<<"A media c e:"<<medc; cout<<"A media d e:"<<medd; system("PAUSE"); return EXIT_SUCCESS; Compartilhar este post Link para o post Compartilhar em outros sites
webdevbr 35 Denunciar post Postado Janeiro 11, 2014 acho que você não entendeu muito bem o conceito de indentação em programação. nós não vamos simplesmente indo para a direita, organizamos "colunas" if { if { // } else { // } } use else if. http://mtm.ufsc.br/~azeredo/cursoC/aulas/c410.html int idade,cont,soma,ida,idb,idc,idd; float peso,meda,medb,medc,medd; cont=1; while (cont<=10) { cout<<"Digite a idade da pessoa \n"; cin>>idade; cout<<"Digite o peso dessa pessoa\n"; cin>>peso; if (idade<=10){ meda=peso/ida; } else if (idade<=20) { medb=peso/idb; } else if (idade<=30){ medc=peso/idc; } else if (idade<30){ medd=peso/idd; } cont++; } cout<<"A media a e:"<<meda; cout<<"A media b e:"<<medb; cout<<"A media c e:"<<medc; cout<<"A media d e:"<<medd; system("PAUSE"); return EXIT_SUCCESS; tópico com double-post e código fora de code, tome cuidado com as regras do fórum.. espero ter ajudado ;) Compartilhar este post Link para o post Compartilhar em outros sites
KhaosDoctor 242 Denunciar post Postado Janeiro 14, 2014 Está faltando uma chave aqui if (idade<=20) { medb=peso/idb; } Na verdade tem chaves a mais em alguns lugares e outra a menos. if (idade <= 10) { meda = peso / ida; } else if (idade <= 20) { medb = peso / idb; } else if (idade <= 30) { medc = peso / idc; }else if (idade < 30) { medd = peso / idd; } cont++; cout << "A media a e:" << meda; cout << "A media b e:" << medb; cout << "A media c e:" << medc; cout << "A media d e:" << medd; system("PAUSE"); return EXIT_SUCCESS; Por que você não usa um case nesse caso? É bem mais fácil Compartilhar este post Link para o post Compartilhar em outros sites