EQ - Exercícios - Linguagem C
http://tinyurl.com/labquimica
Leia atentamente os enunciados e cole cada resposta no formulário (clique para abrir), à medida que resolver os exercícios. Ao final da aula você deve enviar suas respostas (veja instruções no formulário).
1. Leia o programa a seguir:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main() {
printf("Bem-vindo(a) ao laboratorio!");
printf("Leia os enunciados e resolva os exercicios.");
system("pause");
}
Copie esse programa em um arquivo novo no Dev-C++ (menu Arquivo >Novo > Arquivo Fonte). Em seguida, compile-o e execute-o (menu Executar, opção Compilar & Executar, ou F9). Quando for pedido, salve com qualquer nome. O que aconteceu quando o programa foi executado? Modifique o programa para que ele escreva cada frase em uma linha.
Viu as instruções #include no início do programa? Elas são obrigatórias em alguns compiladores (o Dev-C++ é um compilador), e nos permitem usar funções como printf, system, sqrt, entre outras. Veja algumas funções definidas em cada arquivo:
+ stdio.h - funções de entrada e saída, como printf e scanf;
+ math.h - funções matemáticas, como sqrt e pow;
+ stdlib.h - funções diversas, como system;
Alguns compiladores podem dar uma mensagem de erro dizendo que não reconheceram "printf" a não ser que você adicione uma linha #include <stdio.h> no início do programa.
Neste exemplo o terceiro #include é desnecessário porque não usamos funções matemáticas, mas ele será obrigatório, por exemplo, na questão 6.
O system("pause"), impede que a janela seja fechada quando o programa termina.
Para simplificar, coloque os #includes e o system("pause") em todos os seus programas daqui em diante.
2. Como resposta de uma questão de prova, um aluno escreveu o seguinte programa:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main() {
printf("Alo, mundo!");
system("pause")
}
O programa compila? Qual é o erro? Corrija o programa.
3. Para automatizar a coleta de dados do censo da faculdade, um aluno escreveu o seguinte programa:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main() {
int idade;
printf("Digite sua idade: ");
scanf("%d", idade);
printf("Voce digitou %d. Obrigado!\n", idade);
system("pause");
}
Ao rodar o programa, aparece uma janela de erro antes de o programa escrever "Voce digitou ... Obrigado!". Que falha o aluno cometeu?
4. Devido ao grande sucesso do censo realizado na faculdade, pediram ao aluno que fizesse um programa para coletar as alturas das pessoas. Infelizmente o aluno já se formou e a tarefa caiu sobre você. Modifique o programa anterior para que ele peça as alturas das pessoas no lugar da idade. Certifique-se de que ele está funcionando conforme o esperado (ou seja, compile-o e execute-o, então teste alguns valores). Lembre-se que o separador decimal na linguagem C é o ponto.
Nas questões a seguir, escreva um programa que faça o que a questão pede. Lembre-se de executá-lo para ver se ele está fazendo exatamente o que foi pedido.
5. Criar um algoritmo que imprima todos os números pares no intervalo de 1 a 100, em ordem crescente.
6. Criar um algoritmo que imprima a soma de todos os números naturais de 1 a 100.
7. Crie um programa que leia 10 números e imprima o quadrado de cada número.
8. Entrar com 5 números e imprimir a média e a variância, sabendo que a variância pode ser calculada pela seguinte expressão:
__
1 \
var = ---/_ (xi²) - xm²
N
Onde xi é o i-ésimo valor fornecido, N é a quantidade de valores fornecidos (neste caso, 5), e xm é a média dos valores.
9. Escrever um algoritmo que lê 50 valores, um de cada vez, e encontra e mostra o maior e o menor deles.
10. Escreva um algoritmo que escreva todos os horários marcados pelo relógio desde 7:30 até 10:20, em intervalos de 10 minutos.
11. A sequência de Fibonacci é uma sequência de números naturais que começa da seguinte forma: 1, 1, 2, 3, 5, 8, 13, 21, ... A regra é a seguinte: os dois primeiros termos são 1, e os demais termos são gerados a partir da soma dos dois termos anteriores. Assim, 1 + 1 = 2, 1 + 2 = 3, 2 + 3 = 5 etc. Escreva um algoritmo que imprima os 10 primeiros termos da série de Fibonacci.
12. Escrever um algoritmo que leia um número e informe se o número é primo.
13. Escrever um algoritmo que leia um número e imprima todos os números primos menores que o número informado.
14. Em uma eleição presidencial existem quatro candidatos. Os votos são informados através de códigos. Os dados utilizados para a contagem dos votos obedecem à seguinte codificação:
1,2,3,4 = voto para os respectivos candidatos;
5 = voto nulo;
6 = voto em branco;
Elabore um algoritmo que leia os votos (dados pelo código do candidato) e então escreva:
total de votos para cada candidato;
total de votos nulos;
total de votos em branco;
Como finalizador do conjunto de votos, tem-se o valor 0.(A votação termina quando o voto é 0)
15. Escreva um algoritmo que leia um número n (número de termos de uma progressão aritmética), a1 ( o primeiro termo da progressão) e r (a razão da progressão) e escreva os n primeiros termos desta progressão, bem como a soma desses termos.
16. Escrever um algoritmo que gera e escreve os 5 primeiros números perfeitos. Um número perfeito é aquele que é igual a soma dos seus divisores. (Ex.: 6 = 1+2+3; 28= 1+2+4+7+14 etc).
17. Faça um algoritmo que lê um valor N inteiro e positivo e que calcula e escreve o fatorial de N (N!).
18. Criar um algoritmo que calcule o MMC (mínimo múltiplo comum) entre dois números lidos.
19. Numa universidade, os alunos das turmas de informática fizeram uma prova de algoritmos. Cada turma possui um número de alunos. Criar um algoritmo que leia o número de turmas, o número de alunos de cada turma, e a nota de cada aluno, e informe a média de cada turma e o percentual geral de alunos aprovados (juntando todas as turmas). Considere que alunos aprovados são aqueles cuja nota é maior ou igual a 7.0.
20. Escreva um algoritmo que leia um número natural e então escreva o número lido e, em seguida, cada algarismo do número, começando pelo algarismo das unidades.
Exemplo:
Digite um numero: 82731
Numero digitado: 82731
Algarismos: 1 3 7 2 8