STRINGS: DÚVIDAS!
2 participantes
Página 1 de 1
STRINGS: DÚVIDAS!
Galera, primeiramente boa noite. Estou desenvolvendo uma aplicação e estou armazenando alguns dados em strings!
Estou com uma dúvida cruel se é possível eu somar duas strings!!!!
Alguém confirma ou refuta?
a ideia do código é mais ou menos a seguinte:
string sub_A;
string sub_B;
string A;
string resultado;
A = variavel_x; >> essa variável x virá de uma porta serial
sub_A = A.substring(2,10);
sub_B = A.substring(10,20);
sub_B = (sub_B/60);
resultado = sub_A + sub_B;
agradeço a ajuda de todos!
Estou com uma dúvida cruel se é possível eu somar duas strings!!!!
Alguém confirma ou refuta?
a ideia do código é mais ou menos a seguinte:
string sub_A;
string sub_B;
string A;
string resultado;
A = variavel_x; >> essa variável x virá de uma porta serial
sub_A = A.substring(2,10);
sub_B = A.substring(10,20);
sub_B = (sub_B/60);
resultado = sub_A + sub_B;
agradeço a ajuda de todos!
Bruno Rafael- Mensagens : 22
Data de inscrição : 17/03/2013
Re: STRINGS: DÚVIDAS!
Só pra ficar mais compreensível o que quero fazer galera:
Quero pegar as inforamações NMEA que a SIM 908 fornece e tratá-las no próprio software do Arduino pra que o usuário que as receba só tenha o trabalho de colocar no Google Maps e saber a localização!
O problema é que as coordenadas do SIM 908 vêm neste formato aqui:
onde a informação de latitude é 306.596893 S e a informação de longitude é 6003.615167 W.
aí o que o tem que ser feito pra que o google maps compreenda:
- primeiro, separar o S do restante da informação. ou seja, trabalhar com os seguinte números: 306.596893
- depois, devemos enxergar que antes da vírgula, temos 4 dígitos (que são estes em negrito: 0306.596893).
- então, devemos tratar da seguinte forma: toma-se os dois primeiros dígitos da parte inteira do número (antes do ponto). no caso, isso corresponde a 03.
- em seguida, pegar os números restantes de antes da vírgula e, juntamente com os demais que estão depois da vírgula, dividir por sessenta. da seguinte forma: 06.596893/60 = 0.10993155
- e por fim, somar a parte inteira que separamos lá atrás com o resultado da operação acima, o que nos dá o valor da coordenada pronto pra jogar em mapas: 03 + 0.10993155 = 3.010993155.
- para a longitude, devemos proceder da mesma forma.
A questão é que não enxergo como fazer essa separação e depois somar os dois dados que vão surgir. Pensei em fazer por strings, mas não dá certo somar duas strings. Quando você soma ele só coloca uma na frente da outra.
Se alguém tiver uma ideia, agradeço a ajuda!
Quero pegar as inforamações NMEA que a SIM 908 fornece e tratá-las no próprio software do Arduino pra que o usuário que as receba só tenha o trabalho de colocar no Google Maps e saber a localização!
O problema é que as coordenadas do SIM 908 vêm neste formato aqui:
32,183106.000,A,306.596893,S,6003.615167,W,0.00,0.00,130613,,E,A |
onde a informação de latitude é 306.596893 S e a informação de longitude é 6003.615167 W.
aí o que o tem que ser feito pra que o google maps compreenda:
- primeiro, separar o S do restante da informação. ou seja, trabalhar com os seguinte números: 306.596893
- depois, devemos enxergar que antes da vírgula, temos 4 dígitos (que são estes em negrito: 0306.596893).
- então, devemos tratar da seguinte forma: toma-se os dois primeiros dígitos da parte inteira do número (antes do ponto). no caso, isso corresponde a 03.
- em seguida, pegar os números restantes de antes da vírgula e, juntamente com os demais que estão depois da vírgula, dividir por sessenta. da seguinte forma: 06.596893/60 = 0.10993155
- e por fim, somar a parte inteira que separamos lá atrás com o resultado da operação acima, o que nos dá o valor da coordenada pronto pra jogar em mapas: 03 + 0.10993155 = 3.010993155.
- para a longitude, devemos proceder da mesma forma.
A questão é que não enxergo como fazer essa separação e depois somar os dois dados que vão surgir. Pensei em fazer por strings, mas não dá certo somar duas strings. Quando você soma ele só coloca uma na frente da outra.
Se alguém tiver uma ideia, agradeço a ajuda!
Bruno Rafael- Mensagens : 22
Data de inscrição : 17/03/2013
Sobre a soma de Strings
Quando você usa o operador soma, o que você faz é concatenar duas Strings.
O que você deve fazer é converter a String para um float (ou int), fazer essa soma e então voltar para String.
O que você deve fazer é converter a String para um float (ou int), fazer essa soma e então voltar para String.
Aleatorio- Mensagens : 2
Data de inscrição : 28/08/2013
Idade : 32
Tópicos semelhantes
» Placa de Automação residencial e Alarme
» Sim908 + Arduino Mega
» ALARME COM SENSOR - DUVIDAS
» Placa de automação residencial V2 - Dúvidas
» Shield Automação e Alarme residencial V4 - Dúvidas
» Sim908 + Arduino Mega
» ALARME COM SENSOR - DUVIDAS
» Placa de automação residencial V2 - Dúvidas
» Shield Automação e Alarme residencial V4 - Dúvidas
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos