sábado, 20 de abril de 2013

5. Um atleta quer saber quantos segundos gastou em uma corrida. Faça uma fórmula que calcule para ele:


main ()
{
int h, m, s, total;

printf("Vamos calcular para voce o total de segundos gastos na corrida.\n\n");
printf("Digite por favor o total de horas gastos\n");
scanf("%d", &h);
printf("Digite por favor o total de minutos gastos\n");
scanf("%d", &m);
printf("Digite por favor o total de segundos gastos\n");
scanf("%d", &s);
printf("\n\n");

h=h*3600;
m=m*60;
total=h+m+s;
printf("Segundo nossos calculos você gastou %d + %d + %d =  %d segundos na corrida\n\n", h, m, s, total);
}

Aqui temos um item novo. A soma. As dicas são as mesmas, atenção na hora de declarar, para não errar a quantidade de elementos. 
4. Um professor de pré-escola possui um certo número de balas que deseja distribuir igualmente entre seus alunos. Ele ficará com as balas que sobrarem, se houver. Determinando o número de alunos e o número de balas, apresente quantas balas cada aluno recebe e quantas ficam com o professor.

Código:


// 4. Um professor de pré-escola possui um certo número de balas que deseja distribuir igualmente entre seus
// alunos. Ele ficará com as balas que sobrarem, se houver. Sabendo se o número de alunos e o número de
// balas, determine quantas cada aluno recebe e quantas ficam com o professor.

main ()
{
  int balas, alunos, div, mod;

  printf("Quantas balas o professor trouxe?\n");
  scanf ("%d", &balas);
  printf("\n\n");
  printf("Quantos alunos estao presentes na sala?\n");
  scanf ("%d", &alunos);
  div=balas/alunos;
  mod=balas%alunos;
  printf ("\n\n");
  printf ("Entao definimos que pelo calculo %d / %d = %d balas eh o que cada aluno recebera\n", balas, alunos, div);
  printf ("E que sobrarao %d mod %d = %d balas para o professor\n\n", balas, alunos, mod);

  system ("pause");
}

OBSERVAÇÕES

Mais um exercício que apresenta o uso de módulo e inteiro. Fica como treino



3- Um lote de várias peças idênticas deve ser embalado em caixas que cabem 48 peças em cada caixa. Dada a quantidade de peças de um lote, determinar a quantidade de caixas necessárias e a quantidade de peças que deixarão de ser embaladas.

Segue o código:

main ()
{
int p, c, mod, div; //p=peças e c=caixas

printf("Digite a quantidade de pecas recebidas:\n");
scanf("%d", &p);
c=48;
printf("\n\n");
div=p / c;
mod=p % c;
printf("Apos a distribuicao das pecas, teremos %d / %d = %d caixas\n", p, c, div);
printf("E desse lote sobraram %d mod %d = %d pecas\n\n", p, c, mod);

system ("pause");

}

Observações.

1- Mais uma vez, dou a dica para prestar atenção na apresentação do comando div e mod. Dessa vez por falta de atenção gastei um bom tempo nessa parte.

2- O pedaço que mais tomou meu tempo foi o gasto para descobrir como declarar a maneira e sequência dos elementos p, c, mod/div


printf("Apos a distribuicao das pecas, teremos %d / %d = %d caixas\n", p, c, div);
printf("E desse lote sobraram %d mod %d = %d pecas\n\n", p, c, mod); 

Note que apesar de o elemento c já ter um valor pre estabelecido (48), ele é declarado como elemento que sofre variação "%d" .





2- Leia dois números inteiros e retorne o quociente e o resto da divisão.

main ()
{
int a, b, div, mod;

    printf("Para descobrir o quociente e o resto de uma divisao, faca.\n\n");
    printf("Digite primeiro o dividendo.\n");
    scanf("%d", &a);
    printf("\n\n");
        printf("Agora entre com o numero divisor:\n");
        scanf("%d", &b);
            div = a / b;
            mod = a % b;
                printf("\n\n");
                printf("O quociente de %d / %d = %d\n", a, b, div);
                printf("O resto de %d mod %d = %d\n\n", a, b, mod);

system ("pause");
}

OBSERVAÇÕES
1- Uma técnica que me ajuda muito é começar a resolução de um algoritmo rabiscando no papel. Ajuda a expandir a visão do problema anotando por onde começar, onde se quer chegar, os caminhos principais (aqueles que vem primeiro a mente), como completá-los.

2- Não se esqueça de no início declarar o tipo de variável e todos os seus elementos. Diversos erros que surgem durante o caminho para a execução do programa,  são por esquecimentos de complementar, ajustar e/ou preencher o a variável.


3- Para calcular o resto, é necessário declará-lo:
mod = a % b; 
Note que dentro do comando "print" ele foi usado de forma diferente:
 printf("O resto de %d mod %d = %d\n\n", a, b, mod);

Faço essa observação pois no caso da divisão, da mesma maneira que foi declarada, ela também foi usada dentro do comando print:
declaração -> div = a / b;
print:          -> printf("O quociente de %d / %d = %d\n", a, b, div);


EXERCÍCIO 1. Leia uma temperatura em Celsius e imprima o valor desta temperatura em Farenheit., sabendo que: 
F = C * (9.0 / 5.0) + 32.0

Exercício simples que merecem algumas observações importantes, mas primeiro vamos aos códigos:

main (){

    float graus;

printf("Digite aqui a temperatura atual em Celsius para descobrir sua representação em Fahrenheit.\n");
scanf ("%f", &graus);
printf ("Representação da temperatura em Fahrenheit sera em: %f/n", (graus*(1.8)+32 ));
system("pause");

Primeira observação: 
- Diferente do VISUALG, a declaração de váriaveis vem primeiro e depois os elementos, como no caso float (que é a variável para números reais). Float é uma alusão ao ponto flutuante.

- No lugar do escreval, utilizado no visualG usaremos o printf. 
Não tem importancia nem valor, a necessidade de dar ou não espaços entre o comando PRINTF e as instruções escritas depois do parenteses. Exemplos:
*printf("Digite aqui a temperatura atual em Celsius para descobrir sua representação em Fahrenheit.\n");
*printf ("Digite aqui a temperatura atual em Celsius para descobrir sua representação em Fahrenheit.\n");
A mesma informação serve para a instrução:  (graus*(1.8)+32 )); tanto faz colocar ou não pararenteses antes de "grau" e depois de +32) 



Obrigado pela visita, até a próxima.



CODE BLOCK,




CODE::BLOCK, é um ambiente de desenvolvimento, mais conhecido como IDE. Mas o que é uma IDE?
IDE, resumindo (*para uma explicação mais detalhada click no link), esse programa oferece várias ferramentas que auxiliam na criação de softwares.
Principais características:
 - Editor - facilita a edição de códigos fonte.
 - Compilador - Transforma em linguagem máquina
- Depurador - Auxilia a encontrar defeitos em códigos font.
- Modelagem - Auxilia na criação de modelos de classes, objetios, interfaces, associações e interações.

Existem muitas outras ferramentas, porém uma rápida pesquisa com palavras chaves em um bom site de pesquisas como o Google, Bing, podem fornecer infindáveis exemplos, funções e respostas para todas as funções e ferramentas que esse programa oferece.

O motivo desse post é dar início a uma séria de publicações a respeito de exercícios que utilizam esse software.
Por que?
A maioria dos usuários já devem ter escutado conselhos mais ou menos assim: "Tenha cuidado com o que encontra na internet! Nem tudo é correto, nem tudo é confiável, investigue as fontes e conteúdo.
Fazer isso exige muito tempo, pois dependendo do assunto/matéria, a pesquisa  e o estudo podem levar horas. Infelizmente, nem sempre dispomos de tanto tempo e prazo, e foi exatamente essa sensação que tive ao tentar sanar dúvidas que estão surgindo ao realizar uma tarefa para a faculdade.
Estou com uma lista com cerca de 20 questões, para serem resolvidas utilizando um programa IDE.
Portanto a idéias de fazer posts relacionados a resolução de questões surgiu como forma de retribuir a ajuda encontrada na internet e por um segundo motivo: tentar ser o mais claro e breve possível. Resumir o caminho para a solução de forma a evitar excesso de termos técnicos.
Sendo assim, dou destaque para a seguinte observação: ESTOU PRODUZINDO E REPRODUZINDO ESSE CONTEÚDO PARA AUXILIAR NA INTERPRETAÇÃO E SOLUÇÃO DE PROBLEMAS E NÃO PARA ATRAPALHAR O DESENVOLVIMENTO DE NINGUÉM QUE BUSCA INFORMAÇÃO.

Sendo assim, fica declarado o meu interesse em auxiliar e, portanto,  não fornecer nenhum tipo de cola ou trapaça.
Será da consciência de cada um utilizar o código para fazer uma reflexão dos pontos que tem dificuldade na interpretação e resolução de problemas algoritmos.