Você está na página 1de 4

Desafio

Algoritmos e Programação

O desafio entre as turmas consiste em fornecer o maior número de soluções para os


problemas abaixo utilizando os conhecimentos já adquiridos na disciplina de Algoritmos e
Programação.

Prazo e entrega: o prazo de entrega será na segunda-feira (27/06) às 23h55m. Cada turma
deverá eleger um membro para fazer a submissão das soluções via Moodle. O arquivo
submetido deverá estar em formato .zip contendo as soluções em Linguagem C. Os
arquivos texto “.c” devem ser nomeados de acordo com o número das questões (por
exemplo, 1.c).

Pontuação: a turma que submeter o maior número de soluções corretas será a vencedora
do desafio. Lembrem que esta atividade é em grupo e, desta forma, a pontuação também.
Entretanto, o aluno responsável pela submissão deverá informar o nome dos alunos
envolvidos em cada solução. Observem que vocês podem optar por incluir todos ou apenas
um subgrupo de alunos. A validade e corretude das questões será aferida de maneira
aleatória entre os alunos indicados. A garantia da nota será validada com uma avaliação
oral com os alunos responsáveis pela solução.

—------------------------------------------------------------------------------------------------------------------------

1. Elabore um programa em linguagem C para ler um valor inteiro (aceitar somente


valores entre 1 e 10) e escrever a tabuada de 1 a 10 do valor lido.

2. Escreva um programa em linguagem C para ler várias idades (até a idade lida ser
igual a 0) e calcule a média entre as idades.

3. Faça um programa para ler 100 números inteiros e informar na tela quantos são
pares e quantos são ímpares.

4. O IBGE fez uma pesquisa com 500 pessoas do Alegrete, coletando dados sobre o
salário e o número de filhos. A prefeitura da cidade deseja saber:
a. A média do salário dessas pessoas
b. A média do número de filhos
c. O menor salário
d. A porcentagem de pessoas com salários até R$300,00

5. Uma loja do baita-chão utiliza o código D para compras no débito, C para compras
no crédito e V para compras a vista no dinheiro. Escreva um algoritmo para receber
o código de compra (D, C ou V apenas) e o valor de 20 transações. Calcule e
mostre:
a. O valor total das compras no Débito.
b. O valor total das compras no Crédito.
c. O valor total das compras a Vista.
d. O valor total das compras realizadas.
e. A média de valor por compra.

6. Escreva um programa em C que calcula e escreve a seguinte soma:


soma = 1/1 + 3/2 + 5/3 + 7/4 + ... + 99/50

7. Dado um número n inteiro e positivo, dizemos que n é perfeito se n for igual à soma
de seus divisores positivos diferentes de n. Construa um programa em C que verifica
se um dado número é perfeito. Ex: 6 é perfeito, pois 1+2+3 = 6.

8. Escreva um algoritmo em C para gerar os n primeiros termos da sequência de


Fibonnaci de maneira iterativa (usando for ou while).

9. Elabore um programa em C para calcular o número de dias decorridos entre duas


datas lidas: a data mais antiga e a data mais recente. Considerar a ocorrência de
anos bissextos.

10. Escreva um programa em Linguagem C para ler as médias finais de vários alunos
de uma turma e mostrar a maior média, a menor média, a média aritmética e a
média geométrica da turma. O programa pára quando encontrar uma média
negativa.

11. Elabore um programa para ler vários números inteiros positivos e calcule o
produtório dos números pares. O programa pára de ler a entrada quando receber um
número “zero”. Por fim, exiba o valor final do produtório.

12. Projete um algoritmo em C para gerar 100 números de maneira aleatória no intervalo
de 0 - 200. Para cada valor, informar se ele é par ou impar. Dica: a função srand()
pode ser utilizada para gerar números aleatórios.

13. Elabore um algoritmo para gerenciar o saldo de uma empresa de Alegrete. O


programa deve apresentar as seguintes opções: (a) consulta saldo, (b) saque, (c)
depósito e (d) sair. O saldo deve iniciar em R$0,00 e a cada saque ou depósito o
valor do saldo deve ser atualizado e informado na tela. O programa deve garantir
que não seja possível sacar um valor superior ao disponível no saldo.

14. Faça um programa que simule a urna eletrônica.


A tela a ser apresentada em forma de menú deverá ser da seguinte forma:
—--------------------------------------------------------------------------------------------------------
As opcoes sao:
1. Candidato Paulo Rodrigues
2. Candidato Carlos Luz
3. Candidato Neves Rocha
4. Nulo
5. Branco
6. Sair
Entre com o seu voto:
—---------------------------------------------------------------------------------------------------------
O programa deverá ler os votos dos eleitores e, quando solicitado, sair do menu e
imprimir as seguintes informações:
a) o número de votos de cada candidato;
b) a porcentagem de votos de cada candidato;
c) a porcentagem de votos nulos;
d) a porcentagem de votos brancos;
e) o candidato vencedor.

15. Escreva um programa que conte de 100 a 999 (inclusive) e exiba, um por linha, o
produto dos tres dıgitos dos numeros. Por exemplo, inicialmente o programa ira exibir:
—---------------------------------------------------------------------------------------------------
0 (1*0*0)
0 (1*0*1)
0 (1*0*2)
(...)
0 (1*1*0)
1 (1*1*1)
2 (1*1*2)
….
9*9*9=729

—---------------------------------------------------------------------------------------------------
Faça seu programa dar uma pausa a cada 20 linhas para que seja possível ver todos os
números pouco a pouco.
Solicite que seja pressionada alguma tecla para ver a próxima sequencia de numeros.

16. Refaça o código abaixo usando o comando while.

#include <stdio.h>

int main(){
for(int i=1; i<=20; i++){
if(i == 2) continue;
if(i == 5) break;
printf(“i = %d”, i);
}
}

17. Faça um programa que receba dois números X e Y, sendo X < Y. Calcule e mostre:
- a soma dos números pares desse intervalo de números, incluindo os números
digitados;
- a multiplicação dos números ímpares desse intervalo, incluindo os digitados;

18. Faça um programa para calcular a distância euclidiânia entre dois pontos A(X,Y) e
B(X,Y) em um plano de duas dimensões.
19. Elaborar um algoritmo em C para calcular o valor de ex. O valor de X deverá ser digitado
pelo usuário e deve ser inteiro. O valor de ex será calculado pela soma dos 10 primeiros
termos da série a seguir:

20. Escreva um programa que receba como entrada um valor inteiro em reais e imprima na
tela a quantidade necessária de notas de R$ 100, R$ 50, R$ 20, R$10, R$ 5, R$ 2 e R$ 1
para pagar esse valor com o menor número de notas possível. Por exemplo, para pagar R$
80 são necessárias apenas três notas, uma nota de R$ 50, uma nota de R$ 20 e uma nota
de R$10.

Você também pode gostar