domingo, 22 de fevereiro de 2015

5 exercicios de C++ para você ver como é que faz!

Um dos segredos para se aprender a programar e que é exigido à exaustão nos cursos é a resolução de exercícios propostos pelos professores. É requisito básico também sofrer para aprender. Não é minha opinião, e tão pouco, é de meu consenso. Penso o contrário. Penso que para aprender a programar, você terá mais facilidade se tiver acesso aos códigos de quem já sabe programar, e entender como é que ele chegou àquela lógica e solução.

Para isto, veja abaixo 5 exercícios de programação resolvido em C++ utilizando o Dev-C++ no Windows 8.1 de 64 bit. Estes exercícios reforça o conhecimento básico de variáveis, tipos de variáveis, operadores matemáticos (somar, diminuir, subtrair, dividir) expressões matemáticas (a+b(a*b))/100).

Certos exercícios passados em sala de aula para o professor é coisa simples, fácil e muitos professores, SUPERESTIMA a capacidade dos alunos, e então, relega a explicação de ações simples e básicas para o iniciante. Abaixo nestes exercícios eu exibo a questão, explicarei como alcançar o objetivo, e mostrarei o código.

1) Escreva um algoritmo para ler um valor  digitado pelo usuário no teclado e escrever na tela o seu antecessor. 

Nesta questão acima, a ideia é fazer com que você saiba declarar variáveis de inteiro, e dominar os seguintes comandos:
  • cout << , que é o comando que é utilizado para escrever mensagens na tela;
  • cin >>  que é comando usado para solicitar a digitação de dados pelo teclado;
A lógica da solução deste algoritmo poder ser a seguinte:

- Digite um número inteiro:
- Depois que o usuário digitar um número, usar o comando cout << para exibir o (numero-1);

Veja a imagem do código:

Observação: Se fosse sugerido também a exibição do número posterior, teria de acrescentar um linha cout <<  assim:

cout << "\n O numero posterior: " << (umNumero+1);
Isto, e somente isto é suficiente!

Se quiser mudar mais você pode mudar o programa para exibir o número digitado, o anterior e o posterior, e o código ficaria assim:
cout << "\n O numero digitado foi: " << (umNumero);
cout << "\n O numero anterior: " << (umNumero-1);
cout << "\n O numero posterior: " << (umNumero+1);
Isto é simples, mas, para quem está começando no mundo dos códigos, e que não se sabe como é que faz, isto pode ser considerado sem solução.

2) Escreva um algoritmo para ler as dimensões de um retângulo (base e altura), calcular e escrever a área do retângulo.

A lógica da solução deste exercício exige de você, pelo menos um conhecimento básico de matemática quanto ao calculo de áreas de retângulos.  Se obtém o total da área de um retângulo multiplicando o valor de sua altura pelo valor de sua largura. Ou seja a fórmula é: area = altura * largura.

Tendo isto em mente, você já tem que pensar em quantas variáveis e de que tipo de variáveis você vai precisar. Então é só seguir o raciocínio. Uma variável para a altura, uma variável para a largura, e uma variável para o total da área.

Veja o código:


A variável "area", a linha 16 podem ser removida, se você utilizar o seguinte comando na linha 18:
cout << "\n A area toltal do retangulo: " << (altura * largura);

3) Faça um algoritmo que leia a idade de uma pessoa expressa em anos e escreva a idade dessa pessoa expressa apenas em dias. 

A lógica deste algoritmo é a seguinte:
- Digite a sua idade;
- Você já viveu "x" dias;

Uma variável do tipo inteiro é suficiente para este código. Veja a imagem do código abaixo:



Além desta solução, você poderá, por exemplo, adicionar uma CONSTANTE com "ano" valendo 365 dias, e então, a expressão de calculo ficaria assim: (idade * ano).

Você também poderia acrescentar uma variável dias e fazer o calculo assim: dias = (idade * 365) em seguida usar um cout << dias;

4 - Escreva um algoritmo para ler o salário mensal atual de um funcionário e o percentual de reajuste. Calcular e escrever o valor do novo salário.

Neste exercício você tem que elaborar mais um pouco. Mas, tenha em mente que as variáveis serão do tipo float. Terá que ter uma variável para saber qual é o valor do salário; uma variável para pedir o valor do percentual de aumento; uma variável para o novo salário.

Assim ficaria a entrada de dados;

- Digite o valor do salário atual;
- Digite o valor do percentual de aumento;

O calculo do novo salário envolve o seguinte raciocinio:
- Salário multiplica o valor de aumento e divide por 100;
- O resultado desta conta, será somada com o valor do salário atual para se ter o valor do novo salário.

Veja o código:


Na linha 23 do código acima, eu inserir (novoSalario-salario) para calcular o valor do aumento para ter uma prova de que o percentual do aumento equivale ao total acrescido.

5 -Escreva um algoritmo para ler o número total de eleitores de um município, o número de votos brancos, nulos e válidos. Calcular e escrever o percentual que cada um representa em relação ao total de eleitores.

A lógica é a seguinte: variáveis do tipo inteiro os votos, brancos e nulos, e variáveis do tipo float para os  percentuais referenciados.

Então fica assim:
- Qual o valor total dos votos?
- Qual o valor dos votos em brancos?
- Qual o valor dos votos nulos?
- O total de votos válidos e os percentuais serão calculados.

 Exemplo: Se o total dos votos são 120 e o total de brancos = 12, e o total de nulos = 12, o total de válidos será (120-12-12)= 96.

O calculo do percentual dos votos será obtido com uma regra de 3 simples, que será os (votosBrancos*100)/100 afinal é só olhar como ficaria a armação da regra de 3:

120 total de votos = 100%         logo: 12 x 100
12   total de brancos =  x                       120

    perBrancos = (votosBrancos*100)/totalVotos;
    perNulos = (votosNulos*100)/totalVotos;

O calculo dos votos válidos utilizarei apenas uma linha de comando: cout << totalVotos-brancos-nulos. E poderia ter uma variável do tipo inteiro que receberia o valor assim: votosValidos=(totalVotos-brancos-nulos).

Observação: Não irei fazer nenhum controle de verificação do tipo: total de brancos e nulos maior do que total de votos, que é algo que poderia ser exigido na questão, mas, não foi.

Veja o código abaixo:


No código acima não tem, por exemplo, o percentual dos votos válidos. Se fosse necessário calcular o percentual dos votos válidos, o calculo deveria ser feito assim.

1- acrescentar outra variável float: perValidos;
2- inserir o calculo do percentual. Para isto, primeiro deve-se obter o valor dos números de votos validos, que no caso é obtido com a subtração do total de votos, dos brancos e nulos. Assim, se obtém o valor dos válidos; depois, este valor será multiplicado por 100 e dividirá pelo total dos votos;


Veja o novo código:


Faça mais e mais exercícios. E outro detalhe importante: você tem que dominar ou pelo menos gostar de matemática, raciocínio lógico, e outra matérias exatas para encontrar certas respostas.

Um comentário:

  1. 1. Escrever um programa que recebe valores de uma matriz e verifica se é identidade ou não.
    O programa recebe a dimensão da matriz, isto é, o número de linhas e colunas.

    2. Escrever um programa que recebe dois testos e exclui do segundo todas as letras repetidas pelo menos uma vez no primeiro testo.

    3. Fazer um programa que recebe infinitos números. Este deve parar assim que o usuário inserir por 3 vezes consecutivas números primos.

    4. Fazer um programa que copia valores de uma matriz para outra desde que o factorial do elemento a copiar seja um elemento na matriz.

    me ajuda ai cara:

    ResponderExcluir