Jump to content
mariof

Converter a hora em extenso

Recommended Posts

mariof

Boa noite.

O meu professor de Programação mandou-nos fazer um programa, e se o soubessemos explicar na aula de segunda que não precisavamos de fazer o teste.

O programa é:

Nos inserimos uma hora, e o programa converte a hora que nos pusemos por extenso.

Exemplo:

19:30

dezonove horas e trinta minutos.

Agradecia que me ajudassem, pois nao sei converter numeros para letras.

Aguardo respostas

Share this post


Link to post
Share on other sites
Andrepereira9

Boas

Não percebo muito de C++, mas o principio é este

Cria as variável necessárias para as horas e para os minutos, com o valor por extenso

Ex:

Horas

1 -> "Uma"

2 -> "Duas"

3 -> "Tres"

....

minutos

1 - > "um"

2 -> "dois"

10 -> "dez"

11 -> "onze"

....

20 -> "vinte"

30 -> "trinta"

Depois pegas na hora inserida, e retiras a hora, e com um Select ou if, vais comparar a hora e guardas o valor por extenso essa hora

Ex:

variável hora_extenso

Se hora = "19" então

hora_extenso = Variável com a hora por extenso -> "Dezanove horas"

Depois vês os minutos

if minutos = "40" então

hora_extenso = hora_extenso + Variável com os minutos por extenso -> "quarenta minutos" 


A informática chegou para resolver problemas que antes não existiam

Quem ri por último é porque está conectado a 52 Kbs.

Share this post


Link to post
Share on other sites
jviana

Ninguem aqui vai fazer o teu trabalho

O que tens que fazer é com o input, mete-lo numa variável string.

Acho que devias ter uma proteção entre as horas com 1 ou 2 caracteres (5:10 e 14:10, para diferenciar estes dois)

Para isso usavas a função LEN, para contar os caracteres, exemplo, se tiver 4 caracteres (5:10) escolhes o primeiro caracter que é as horas, e escolhes os dois ultimos que são os minutos, e se tiver 5 caracteres (14:10) escolhes os 2 primeiros caracteres da esquerda para as horas, e os 2 da direita para os minutos.

Com um if separas os dois.

E depois com um case indicas as horas e os minutos, separadamente.

Case 1

horas = "Uma"

Case 14

horas = "Catorze"

E depois imprimes.

int main()
{
   cout<<horas;
   cout<<":";
   cout<<minutos;
}
cin.get();
return 0;

Espero ter-te ajuda, mas não vou fazer o trabalho.

Cumps. J.Viana


Learning

  • VB.Net
  • HTML
  • C/C++

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.