Lista de Exercícios de C++: 21 a 30
- Receba a altura do degrau de uma escada e a altura que o usuário deseja alcançar subindo a escada. Calcule e mostre quantos degraus o usuário devera subir para atingir seu objetivo, sem se preocupar com a altura do usuário.
Pronto! Com a imagem se pode saber o que é que a questão quer. Utilizando os degraus da escada, quantos degraus serão necessários para se atingir tal altura? Assim fica fácil de deduzir que é só dividir a altura total pela altura do dos degraus. Se, o usuário digitar que a altura a ser atingida é de 1000 cm, e que cada degrau tem 20cm, é só dividir por 1000cm por 20cm.
A expressão: qtdDegraus = ((queroSubir*100)/alturaDegraus); que atribuirá à variável qtdDegraus o resultado da multiplicação da quantidade de metros a subir (variável queroSubir) pela divisão do valor da altura de cada degrau. A multiplicação por 100 é para transformar o valor do metro em centímetros e então dividir pela altura de cada degrau que é dado em centímetros.
O que é a tabela ASCII? - Na década de 60, a necessidade de padronização levou ao ASCII (código
padrão americano para troca de informações). A tabela ASCII contém 128
números atribuídos aos caracteres correspondentes. O ASCII permite que
os computadores armazenem e troquem dados com outros computadores e
programas.
O texto com formato ASCII não contém informações de formatação, como negrito, itálico ou fontes.
Olhe a tabela ASCII acima. Eu marquei a letra A em MAIÚSCULO e a letra "a" em minúsculo. A letra em maiúscula tem o valor de 65, enquanto a letra em minúsculo tem o valor 97. Se é para converter a letra em minúsculo para maiúsculo, a operação é de subtração; se é para converter de maiúsculo para minúsculo a operação é de soma.
Veja assim: a letra A=65, se somado mais 32 será igual a 97. E, o número 97 na tabela equivale à letra a em minúsculo. Já a letra B, será 66+32=98. E, se olhar a tabela acima, 98=b. A operação contrário também funciona: 97-32=65. E 65 equivale a letra A em maiúsculo. Veja o código abaixo:
Como é que este código funciona? O compilador vai interpretar a variável como um número somado com 32. E como a variável é do tipo "char" vai retornar o valor do bit e seu equivalente na tabela ASCII. Para fazer a operação inversa, converter de minúsculo para maiúsculo é só trocar o sinal de mais (+) para o sinal de menos (-) .
numero formado pelos dígitos invertidos do numero lido. Exemplo:
Numero Lido = 123
Numero Gerado = 321.
A lógica acima é simples, porém, para o programador iniciante, complicado de se chegar a esta solução.
O código acima faz o seguinte:
1- divide o número por 100, e guarda na variável centena;
2- A variável número muda de valor, e passa a conter o número digitado e depois de dividido por 100, o resto vai para a variável. Exemplo: se for digitado 854, divide por 100, o que dá 8x100=800, o resto é 54. Assim, a variável NUMERO passa a valer este número;
3- A variável dezena, recebe o conteúdo da variável e divide por 10;
4- A variável unidade pega o último número, e divide por 10, e guarda o resto na variável número;
Pronto. Isto foi suficiente para separar os número. A exibição final é só mero arranjo.
- Leia um numero inteiro de 4 dígitos e imprima 1 dígito por linha.
Esta questão é semelhante à anterior, porém, com outra solução, nesta solução, a divisão é feita sempre por 10, e o resto é armazenado nas variáveis. A solução segue o seguinte padrão:
1- A variável "quinto" recebe o valor do que o usuário digitou em valorUsuario dividido por 10, e o resto é que vai para a variável. Neste caso, quinto recebe o valor da unidade;
2- A variável valorUsuário muda de conteúdo. Ela passa a conter o número digitado dividido por 10;
3- isto se repete até pegar todos os números e lista-os em ordem inversa do que foi feita a operação de divisão e pegando o resto.
- Leia um valor inteiro em segundos, e imprima-o em horas, minutos e segundos.
A questão é bem esta mesmo. Está numa formação estranha. Eu penso que deveria ser "leia um valor inteiro, e imprima-o em horas, minutos e segundos. E foi isto que fiz. no código acima. É simples o código, mas para o iniciante serve para fixar o conhecimento de variáveis, tipos de variáveis, bem como é útil para desenvolver o raciocínio lógico.
Por outra, tem estudante que sequer sabe quantos segundos tem uma hora. Nestes momentos é que se aprende e vê vários e muitos eventos diferentes da matemática e do cotidiano.
Implemente um programa em C que calcule o ano de nascimento de uma pessoa a partir
de sua idade e do ano atual.
Para o código ficar em uma imagem pequena eu utilizei nas linhas 7,9,11 e 14 DOIS comandos na mesma linha. Observe que há o comando cout, e depois do ponto-virgula, existe outro comando o cin >>.