Preciso separar um string de um índice conhecido ate outro índice conhecido...
Estou fazendo uma calculadora e preciso que o calculo seja feito na ordem como foi
escrito tipo "2*1+1/2" preciso que ele faça a multiplicação dps a soma e dps a divisão
espero te sido claro... Obrigado a quem ajudar vou botar o codigo do que eu tava fazendo...
Não e fácil de fazer isso, a maioria opta por um teclado virtual. Tambem pode ser feito pelo teclado do PC tratando sua entrada. Por exemplo:
tecla == (0,9) int num = tecla;
tecla ==(caracter) char operando = tecla;
Precisa especificar melhor a operação, o que é feito primeiro ?
“2*(1+1/2)”
“21+(1/2)"
"(21)+1/2”
davidbuzatto
Oi Chakal,
Fazer a interpretação de expressões não é tão simples assim.
Você levou em consideração os parênteses? E números com mais de um dígito? O sinal de subtração pode ser um operador unário também (2 + -2).
Você até consegue fazer algo com essa abordagem, mas ela não é a mais apropriada.
Fazer a interpretação de expressões não é tão simples assim.
Você levou em consideração os parênteses? E números com mais de um dígito? O sinal de subtração pode ser um operador unário também (2 + -2).
Você até consegue fazer algo com essa abordagem, mas ela não é a mais apropriada.
E ta complicado, tenho que fazer essa calculadora com padrão de projeto e tenho que guardar um resultado após o calculo ser efetuado
para que o usuário posso voltar um calculo antes ja vi até qual o padrão que e para ser usado que e o Memento…
Eu separei os tratamentos só para orientar os pensamentos:
Tratamentos:
Não pode ter sinal de ?*? dps ?/? ou um sinal de ?+?ou?-? sem um n° após eles
Guardar um resultado…Para consulta…
Apos o sinal de ?=? termina a conta…
//Apos inserir um n° começar teste;SE(iniciarcomumsinal?*?,?/?){Nãodeixarbotar…;}