diogo1n23456 Posted January 25, 2006 at 09:59 PM Report #12579 Posted January 25, 2006 at 09:59 PM boas noites. pessoal tou me a atrofiar tdo com isto. alguem me pode dizer o k tenho mal aki e o k tenho de alterar??? #include <iostream.h> void main() { int nota; cout<<"0 - 4 Mau\n"; cout<<"5 - 9 Mediocre\n"; cout<<"10 - 13 Suficiente\n"; cout<<"14 - 17 Bom\n"; cout<<"18 - 20 Muito Bom\n"; cout<<"Introduza a nota\n"; cin>> nota; switch (nota) { case 'nota': (nota >=0 && <=4); cout<<"Mau\n" <<endl;break; case 'nota': (nota >=5 && <=9); cout<<"Mediocre\n" <<endl;break; case 'nota': (nota >=10 && <=13); cout<<"Suficiente\n" <<endl;break; case 'nota': (nota >=14 && <=17); cout<<"Bom\n" <<endl;break; case 'nota': (nota >=18 && <=20); cout<<"Muito Bom\n" <<endl;break; default : cout<<"ERRO!!!\n"; } } agradeço as respostas obrigado
vbmaster Posted January 25, 2006 at 10:02 PM Report #12582 Posted January 25, 2006 at 10:02 PM Tens um erro redondo no case!... não podes fazer case 'nota' mas sim, em vez de 'nota', por o valor que o case tem de ter para ser executado o código posterior. E falta-te o using namespace std; 🙂
brink@ero Posted January 25, 2006 at 11:00 PM Report #12586 Posted January 25, 2006 at 11:00 PM Tens um erro redondo no case!... não podes fazer case 'nota' mas sim, em vez de 'nota', por o valor que o case tem de ter para ser executado o código posterior. E falta-te o using namespace std; 🙂 Deve começar por: #include <iostream> using namespace std; E o 'case' só aceita constantes! http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vccelng/htm/statem_10.asp Por isso conselho-te a usar o if...elseif... Outra coisa, ' cout<<endl ' é o mesmo que ' cout<<"\n" '.
vbmaster Posted January 25, 2006 at 11:16 PM Report #12588 Posted January 25, 2006 at 11:16 PM Sim naquele caso não me parece que um case seja boa opção....
diogo1n23456 Posted January 26, 2006 at 12:08 PM Author Report #12597 Posted January 26, 2006 at 12:08 PM #include <iostream.h> void main() { int x, nota; cout<<"0 - 4 Mau\n"; cout<<"5 - 9 Mediocre\n"; cout<<"10 - 13 Suficiente\n"; cout<<"14 - 17 Bom\n"; cout<<"18 - 20 Muito Bom\n"; cout<<"Introduza a nota\n"; cin>> nota; x=nota/4; switch (x) { case 0: (nota >=0 && nota <=4); cout<<"Mau\n" <<endl;break; case 1: (nota >=5 && nota <=9); cout<<"Mediocre\n" <<endl;break; case 2: (nota >=10 && nota <=13); cout<<"Suficiente\n" <<endl;break; case 3: (nota >=14 && nota <=17); cout<<"Bom\n" <<endl;break; case 4: (nota >=18 && nota <=20); cout<<"Muito Bom\n" <<endl;break; default : cout<<"ERRO!!!\n"; } } este é o meu programa mas ta a dar uma coisa mal.eu meto 4 e ele ja me da mediocre, em x de me dar mau
saramgsilva Posted January 26, 2006 at 01:28 PM Report #12600 Posted January 26, 2006 at 01:28 PM bem pra comecar nao podes fazer iostream.h!! :dontgetit: fiz a minha versao... #include <iostream> using namespace std; int main() { int x, nota; cout<<"0 se 0 - 4 \n"; cout<<"1 se 5 - 9 \n"; cout<<"2 se 10 - 13\n"; cout<<"3 se 14 - 17\n"; cout<<"4 se 18 - 20\n"; cout<<"Introduza a nota\n"; cin>> nota; switch (nota) { case 0: { cout<<"Mau\n" <<endl;break;} case 1: { cout<<"Mediocre\n" <<endl;break;} case 2: { cout<<"Suficiente\n" <<endl;break;} case 3: { cout<<"Bom\n" <<endl;break;} case 4: { cout<<"Muito Bom\n" <<endl;break;} default : cout<<"ERRO!!!\n"; } int sair; cin>>sair; return 0; } e nao entendi o pq de (nota >=0 && nota <=4); nao vai servir para nada... 🙂 www.saramgsilva.com As minhas apps no WP7 Marketplace Youtube : Galinho - Windows Phone 7.5
vbmaster Posted January 26, 2006 at 01:57 PM Report #12603 Posted January 26, 2006 at 01:57 PM tofas... não percebi para que era a variavel x.... além disso o objectivo do rapaz era introduzir uma nota de 1 a 20 e ser retornado a apreciação correspondente à escala em que se encontra... 😕 EDIT: eu faria assim: #include <iostream> using namespace std; int main () { int nota,sair; cout<<"0 se 0 - 4 \n"; cout<<"1 se 5 - 9 \n"; cout<<"2 se 10 - 13\n"; cout<<"3 se 14 - 17\n"; cout<<"4 se 18 - 20\n"; cout<<"Introduza a nota\n"; cin>> nota; if (nota > 20) cout<<"INSERE-ME UMA NOTA SUA BESTA!"; else if (nota >= 18) cout <<"Muito bom\n\n"; else if (nota >=14) cout << "Bom\n\n"; else if (nota >=10) cout << "Suficiente\n\n"; else if (nota >= 5) cout << "Mediocre\n\n"; else if (nota >= 0) cout << "Mau\n\n"; cin>>sair; return 0; }
saramgsilva Posted January 26, 2006 at 02:14 PM Report #12604 Posted January 26, 2006 at 02:14 PM tofas... não percebi para que era a variavel x.... além disso o objectivo do rapaz era introduzir uma nota de 1 a 20 e ser retornado a apreciação correspondente à escala em que se encontra... 😕 essa variavel nao estava mto correcta... acho que melhorando 1 pouco o bla bla ...fica c o programa que prentende... www.saramgsilva.com As minhas apps no WP7 Marketplace Youtube : Galinho - Windows Phone 7.5
brink@ero Posted January 26, 2006 at 05:00 PM Report #12610 Posted January 26, 2006 at 05:00 PM #include <iostream.h> void main() { int x, nota; cout<<"0 - 4 Mau\n"; cout<<"5 - 9 Mediocre\n"; cout<<"10 - 13 Suficiente\n"; cout<<"14 - 17 Bom\n"; cout<<"18 - 20 Muito Bom\n"; cout<<"Introduza a nota\n"; cin>> nota; x=nota/4; switch (x) { case 0: (nota >=0 && nota <=4); cout<<"Mau\n" <<endl;break; case 1: (nota >=5 && nota <=9); cout<<"Mediocre\n" <<endl;break; case 2: (nota >=10 && nota <=13); cout<<"Suficiente\n" <<endl;break; case 3: (nota >=14 && nota <=17); cout<<"Bom\n" <<endl;break; case 4: (nota >=18 && nota <=20); cout<<"Muito Bom\n" <<endl;break; default : cout<<"ERRO!!!\n"; } } este é o meu programa mas ta a dar uma coisa mal.eu meto 4 e ele ja me da mediocre, em x de me dar mau (nota >=18 && nota <=20); <- só assim não faz nada de útil!! x=nota/4; <- até poderia funcionar se os intervalos fossem constantes (de 4 em 4) este é o meu programa mas ta a dar uma coisa mal.eu meto 4 e ele ja me da mediocre, em x de me dar mau Simples, tu ao colocares 4, na linha: x=nota/4; <- faz a divisão inteira 4/4=1 por isso vai para o case 1!!
saramgsilva Posted January 26, 2006 at 06:57 PM Report #12620 Posted January 26, 2006 at 06:57 PM vdmaster acho que o que fizeste é andar para tras!! o case é o melhor para estes casos!! 😕 nao te aconselho isso... www.saramgsilva.com As minhas apps no WP7 Marketplace Youtube : Galinho - Windows Phone 7.5
vbmaster Posted January 26, 2006 at 07:15 PM Report #12625 Posted January 26, 2006 at 07:15 PM vdmaster acho que o que fizeste é andar para tras!! o case é o melhor para estes casos!! 😕 nao te aconselho isso[quote caso apresentem um código com case e que funcione totalmente, eu reconheço essa afirmação..... 😉 (subentende-se que ainda não o vi... )
brink@ero Posted January 26, 2006 at 10:05 PM Report #12661 Posted January 26, 2006 at 10:05 PM Para quem teima em querer utilizar o case, fica aqui um exemplo (por enquanto não vejo outro): #include <iostream> #include <math.h> using namespace std; int main() { int nota, categoria, aux1, aux2; cout<<"0 - 4 Mau\n"; cout<<"5 - 9 Mediocre\n"; cout<<"10 - 13 Suficiente\n"; cout<<"14 - 17 Bom\n"; cout<<"18 - 20 Muito Bom\n"; cout<<"Introduza a nota\n"; cin>>nota; aux1=nota/10; aux2=pow(aux1,2)+aux1; categoria = (nota>=0) ? (nota - aux2)/(5-aux1) : -1; switch (categoria) { case 0: cout<<"Mau\n" <<endl; break; case 1: cout<<"Mediocre\n" <<endl; break; case 2: cout<<"Suficiente\n"<<endl; break; case 3: cout<<"Bom\n" <<endl; break; case 4: cout<<"Muito Bom\n"<<endl; break; default : cout<<"ERRO!!!\n"; } return 0; } ...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now