lb_guilherme Postado Janeiro 31, 2007 Denunciar Share Postado Janeiro 31, 2007 O tipo de variavel "char" pode conter um sinal como "+,-,*,/..."?caso não, qual variavel usar? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Janeiro 31, 2007 Denunciar Share Postado Janeiro 31, 2007 Você pode colocar qualquer caracter em um char, o que inclui símbolos como "+", "-", "*" e "/".Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 SOFTRACE Postado Fevereiro 1, 2007 Denunciar Share Postado Fevereiro 1, 2007 A variável do tipo char pode compreender todo tipo de caracter contido na tabela "ASCII" então vide a tabela "ASCII" e então saberá quais caracteresou simbolos possíveis o tipo char pode assumir.Fallow Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 lb_guilherme Postado Fevereiro 1, 2007 Autor Denunciar Share Postado Fevereiro 1, 2007 Eu usei esta variavel num "scanf" mas quando eu digito o sinal o progama fecha sosinho. não é porque n tem mais comando pra executar... se quiserem eu passo o codigo completo. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Fevereiro 1, 2007 Denunciar Share Postado Fevereiro 1, 2007 Então acho que é melhor você postar o código, porque deveria funcionar.Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 lb_guilherme Postado Fevereiro 4, 2007 Autor Denunciar Share Postado Fevereiro 4, 2007 Então ai vai o codigo... Desculpa pela demora pra responder.#include "ostream.h" #include "iostream.h" int numcont; int num1; int num2; char sinal; int resultado; int v; int main() { for (int a=1;a>=0;a++){ printf("Digite a conta (digite o primeiro valor e aperte Enter. dapois digite o sinal\n(+,-,*,/) e Enter.Agora aperte o segundo valor. Enter.):\n"); scanf("%i",&num1); scanf("%c",&sinal); scanf("%i",&num2); switch(sinal) {case '+': {system("cls"); printf("%i+%i=",num1,num2); scanf("%i",&resultado); v = num1 + num2; if (resultado == v) printf("\n\nCorreto!!!\n"); else printf("\n\nErrado\n"); break;} case '-': {system("cls"); printf("%i-%i=",num1,num2); scanf("%i",&resultado); v = num1 - num2; if (resultado == v) printf("\n\nCorreto!!!\n"); else printf("\n\nErrado\n"); break;} case '*': {system("cls"); printf("%ix%i=",num1,num2); scanf("%i",&resultado); v = num1 * num2; if (resultado == v) printf("\n\nCorreto!!!\n"); else printf("\n\nErrado\n"); break;} case '/': {system("cls"); printf("%i:%i=",num1,num2); scanf("%i",&resultado); v = num1 / num2; if (resultado == v) printf("\n\nCorreto!!!\n"); else printf("\n\nErrado\n"); break;} defalt: {printf("Erro, sinal não encontrado\n");break;}} printf("Deseja continuar? (s/n):"); scanf("%i",&numcont); if (numcont=='s') {} if (numcont=='n') break;} return 0; } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Fevereiro 5, 2007 Denunciar Share Postado Fevereiro 5, 2007 Ao ler o valor e pressionar ENTER você vai estar preenchendo o sinal justamente com o valor do ENTER. Deve ser este o problema.Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - PePeLeGaL - Postado Fevereiro 5, 2007 Denunciar Share Postado Fevereiro 5, 2007 tai colega, pelo que percebi, seu codigo é em C++. E tambem, notei que voce fez no Windows. o codigo abaixo eu fiz em C e utilizando Slackware. Compare com o seu :D #include<stdio.h> int main() { char opcao[2], cont[2]; int n1, n2, n3, v; for(;;) { printf("Digite o primeiro numero: "); scanf("%d",&n1); printf("Sinal: "); scanf("%s",opcao); printf("Digite o segundo numero: "); scanf("%d",&n2); switch(opcao[0]) { case '+': printf("%d + %d = ", n1, n2); scanf("%d",&n3); v = n1 + n2; if(n3 == v) printf("\nCorreto!!!\n"); else printf("\nErrado!!!\n"); break; case '-': printf("%d - %d = ", n1, n2); scanf("%d",&n3); v = n1 - n2; if(n3 == v) printf("\nCorreto!!!\n"); else printf("\nErrado!!!\n"); break; case '*': printf("%d * %d = ", n1, n2); scanf("%d",&n3); v = n1 * n2; if(n3 == v) printf("\nCorreto!!!\n"); else printf("\nErrado!!!\n"); break; case '/': printf("%d / %d = ", n1, n2); scanf("%d",&n3); v = n1 / n2; if(n3 == v) printf("\nCorreto!!!\n"); else printf("\nErrado!!!\n"); break; default: printf("Erro! Sinal não encontrado!!!"); } printf("Continuar(s/n)? "); scanf("%s",cont); if(cont[0]=='s') ; else break; } return 0; } Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
lb_guilherme
O tipo de variavel "char" pode conter um sinal como "+,-,*,/..."?
caso não, qual variavel usar?
Link para o comentário
Compartilhar em outros sites
7 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.