1ª LISTA DE EXERCÍCIOS DE ALGORITMOS
ALGORITMOS BÁSICOS
(comandos de entrada/saída, declaração de variáveis, atribuições, cálculos simples)
1) Faça um algoritmo para ler as seguintes informações de uma pessoa: Nome, Idade, Sexo, Peso, Altura, Profissão, Rua, Bairro, Cidade, Estado, CEP, Telefone.
2) Faça um algoritmo que leia a idade de uma pessoa expressa em anos, meses e dias e mostre-a expressa apenas em dias.
3) Faça um algoritmo para ler a base e a altura de um triângulo. Em seguida, escreva a área do mesmo.
Obs.: Área = ( Base * Altura ) / 2
4) Escreva um algoritmo para calcular e exibir a média ponderada de 2 notas dadas. (nota1=
peso 6 e nota2= peso 4)
5) Faça um algoritmo que calcule a média aritmética de 4 valores inteiros.
6) Faça um algoritmo que leia dois valores inteiros A e B se os valores forem iguais deverá se somar os dois, caso contrário multiplique A por B ao final do calculo atribuir o valor para uma variável C.
7) Um sistema de equações lineares do tipo:
a x + by = c
dx + ey = f pode ser resolvido segundo mostrado abaixo :
ce - bf af - cd x = y = ae - bd ae - bd
Faça um algoritmo que peça ao usuário os coeficientes das 2 equações e calcule e mostre os valores de X e Y.
8) Dado as seguintes informações de um funcionário: Nome, idade cargo e o seu salário bruto considere:
a) O salário bruto teve um reajuste de 38%.
b) O funcionário receberá uma gratificação de 20% do salário bruto.
c) O Salário total é descontado em 15%
Faça um algoritmo e um algoritmo para:
Imprimir Nome, idade e cargo.
Imprimir o salário bruto.
Imprimir o salário líquido.
UNIVERSIDADE SALGADO DE OLIVEIRA CURSO DE SISTEMAS DE INFORMAÇÃO DISCIPLINA: ALGORITMOS
PROF: GIULIANO PRADO DE MORAIS GIGLIO
ESTRUTURAS CONDICIONAIS
9) Faça um algoritmo que leia os valores A, B, C e diga se a soma de A + B é menor que C.
10) Faça um algoritmo que leia o nome e a três notas de uma disciplina de uma aluno e ao final escreva o nome do aluno, sua média e se ele foi aprovado a média é 8.
11) Faça um algoritmo que leia dois valores inteiros A e B se os valores forem iguais deverá se somar os dois, caso contrário multiplique A por B ao final do calculo atribuir o valor para uma variável C.
12) Escreva um algoritmo para ler um número e determinar se ele é maior, igual ou menor que zero.
13) Faça um algoritmo que leia um nº inteiro e mostre uma mensagem indicando se este número é par ou ímpar, e se é positivo ou negativo.
14) Faça um algoritmo que, dado as três notas de um aluno, determine e exiba a sua média final e o seu conceito, sabendo-se que:
- a média final é calculada pela média aritmética das 3 notas;
-
o conceito é determinado de com base na tabela abaixo:
MÉDIA FINAL CONCEITO
8,0
A
5,0 e < 8,0
B
< 5,0 C
15) O Tupi Futebol Clube deseja aumentar o salário de seus jogadores. O reajuste deve obedecer a seguinte tabela:
SALÁRIO ATUAL (R$) AUMENTO
0,00 a 1.000,00 20%
1.000,01 a 5.000,00 10%
acima de 5.000,00 0%
Escrever um algoritmo que leia o nome e o salário atual de um jogador, e exiba o nome, o salário atual e o salário reajustado.
16) Um vendedor necessita de um algoritmo que calcule o preço total devido por um cliente.
O algoritmo deve receber o código de um produto e a quantidade comprada e calcular o preço total, usando a tabela abaixo:
Código do Produto Preço Unitário
1001 5,32
1324 6,45
6548 2,37
0987 5,32
7623 6,45
17) Um banco concederá um crédito especial aos seus clientes, variável com o saldo médio no último ano. Faça um algoritmo que leia o saldo médio de um cliente e calcule o valor do crédito de acordo com a tabela abaixo. Mostre uma mensagem informando o saldo médio e o valor do crédito.
Saldo médio Percentual
de 0 a 200 nenhum crédito
de 201 a 400 20% do valor do saldo médio
de 401 a 600 30% do valor do saldo médio
acima de 601 40% do valor do saldo médio
18) Escrever um algoritmo que lê a hora de início de um jogo e a hora do final do jogo (considerando apenas horas inteiras) e calcula a duração do jogo em horas, sabendo-se que o tempo máximo de duração do jogo é de 24 horas e que o jogo pode iniciar em um dia e terminar no dia seguinte.
19) Escrever um algoritmo que lê um conjunto de 4 valores i, a, b, c, onde i é um valor inteiro e positivo e a, b, c, são quaisquer valores reais e os escreva. A seguir:
a) Se i=1 escrever os três valores a, b, c em ordem crescente.
b) Se i=2 escrever os três valores a, b, c em ordem decrescente.
c) Se i=3 escrever os três valores a, b, c de forma que o maior entre a, b, c fique dentre os dois.
20) Elaborar um algoritmo que lê 3 valores a,b,c e os escreve. A seguir, encontre o maior dos 3 valores e o escreva com a mensagem : "É o maior ".
21) O custo ao consumidor de um carro novo é a soma do custo de fábrica com a percentagem do distribuidor e dos impostos (aplicados ao custo de fábrica). Supondo que a percentagem do distribuidor seja de 28% e os impostos de 45%, escrever um algoritmo que leia o custo de fábrica de um carro e escreva o custo ao consumidor.
22) Faça um programa que leia um número inteiro e testa se o valor lido termina com 0 divisível por 10). Em caso positivo, exiba a metade deste número. Caso contrário, exibir a mensagem "O número digitado não termina com 0".
23) Faça um programa que imprima se um número real lido é positivo, negativo ou neutro (zero).
24) Em um programa, faça a leitura do salário atual e do tempo de serviço de um funcionário.
A seguir, calcule o seu salário reajustado. Funcionários com até 1 ano de empresa, receberão aumento de 10%. Funcionários com mais de um ano de tempo de serviço, receberão
aumento de 20%. O programa deverá imprimir o salário reajustado.
25) Faça um programa que receba o ano atual e o ano de nascimento de uma pessoa e imprima sua idade. A seguir, imprima se a pessoa é bebê (0 a 3 anos), criança (4 a 10 anos), adolescente (11 a 18 anos), adulta (19 a 50 anos) ou idosa (51 anos em diante).
26) Faça um algoritmo que receba o valor do salário de uma pessoa e o valor de um financiamento pretendido. Caso o financiamento seja menor ou igual a 5 vezes o salário da pessoa, o algoritmo deverá escrever "Financiamento Concedido"; senão, ele deverá escrever
"Financiamento Negado".
27) A taxa de juros aplicada em fundos depositados em um banco é determinada pelo tempo em que estes ficam depositados. Para um banco em particular, a seguinte tabela é usada:
Usando esta informação, escreva uma função que receba o tempo em que os fundos foram mantidos em depósito e retorne a taxa de juros correspondente.
MÚLTIPLA ESCOLHA – SWITCH
28) Desenvolva um programa que pergunte um código e de acordo com o valor digitado seja apresentado o cargo correspondente. Caso o usuário digite um código que não esteja na tabela, mostrar uma mensagem de código inválido. Utilize a tabela abaixo:
29) Uma encomenda de unidades de disco contém unidades marcadas com um código de 1 a 4, que indica o tipo seguinte:
30) Escreva um programa que receba dois números reais e um código de seleção do usuário.
Se o código digitado for 1, faça o programa adicionar os dois números previamente digitados
e mostrar o resultado; se o código de seleção for 2, os números devem ser multiplicados; se
o código de seleção for 3, o primeiro número deve ser dividido pelo segundo. Se nenhuma
das opções acima for escolhida, mostrar "Código inválido".
31) Faça um algoritmo que transforme a nota de um aluno em conceito. As notas 10 e 9 receberão conceito A, as notas 8 e 7 receberão conceito B, as notas 6 e 5 receberão conceito C e abaixo de 5 conceito D.
ESTRUTURAS DE REPETIÇÃO
32) Dado uma série de 20 valores reais, faça uma algoritmo que calcule e escreva a média aritmética destes valores, entretanto se a média obtida for maior que 8 deverá ser atribuída 10 para a média.
33) Escreva um algoritmo que gere os números de 1000 a 1999 e escreva aqueles que dividido por 11 dão resto igual a 5.
34) Escrever um algoritmo que gera e escreve os números ímpares entre 100 e 200.
35) Escrever um algoritmo que leia 20 valores para uma variável N e, para cada um deles, calcule a tabuada de 1 até N. Mostre a tabuada na forma:
1 x N = N 2 x N = 2N 3 x N = 3N ...
N x N = N
236) Faça um algoritmo que calcule a seguinte soma:
H = 10 + 10 + 10 + ... + 10
O algoritmo deve ler um número n (inteiro e positivo) que é o número de parcelas de 10 a serem somadas. O programa deverá mostrar o resultado final de H. A soma deve ser calculada apenas uma vez.
37) Escreva um algoritmo que lê um valor n inteiro e positivo e que calcula a seguinte soma:
S := 1 + 1/2 + 1/3 + 1/4 + ... + 1/n O algoritmo deve escrever cada termo gerado e o valor final de S.
38) Elabore um programa que leia dois valores reais a e b. O programa deve ler uma sequência de valores reais e imprimir a média aritmética dos valores que pertencerem ao intervalo fechado entre a e b. A sequência de valores deverá ser encerrada quando for lido um valor negativo.
Exemplo: Com entradas a=7, b=3 e sequência= 5 2 9 8 3 1 -2, o programa deve imprimir o valor 4.
39) Faça um algoritmo que leia um número N, some todos os números inteiros de 1 a N, e mostre o resultado obtido.
40) Escreva um algoritmo que leia um conjunto de 100 números inteiros positivos e determine o maior deles.
41) Faça um algoritmo para ler base e altura de 50 triângulos e imprimir a sua área.
42) Faça um algoritmo para calcular um valor A elevado a um expoente B. Os valores A e B deverão ser lidos. Não usar A** B.
43) Faça um algoritmo para:
a) Ler um valor x qualquer
b) Calcular Y = ( x+1)+(x+2)+(x+3)+(x+4)+(x+5)+…(x+100).
44) Faça um algoritmo para ler um valor X e calcular Y = X+2X+3X+4X+5X+…+20X
45) Faça um algoritmo que leia vários números inteiros e calcule o somatório dos números negativos. O fim da leitura será indicado pelo número 0.
46) Faça um algoritmo para ler e escrever o Nome, idade e sexo de um número indeterminado de alunos. Ao final escreva o total de alunos lidos. (Condição de parada – FLAG = -1)
47) Escreva um algoritmo que calcule a média dos números digitados pelo usuário, se eles forem pares. Termine a leitura se o usuário digitar zero (0).
48) Escreva um algoritmo que leia 50 valores e encontre o maior e o menor deles. Mostre o resultado.
49) Foi feita uma pesquisa entre os 1000 habitantes de uma região para coletar os seguintes dados: sexo (0-feminino, 1-masculino), idade e altura. Faça um algoritmo que leia as informações coletadas e mostre as seguintes informações: (use o comando repita-até)
a) média da idade do grupo;
b) média da altura das mulheres;
c) média da idade dos homens;
d) percentual de pessoas com idade entre 18 e 35 anos (inclusive).
50) Faça um algoritmo para ler e escrever o Nome, idade e sexo de um número indeterminado de alunos. Ao final escreva o total de alunos lidos. (Condição de parada – FLAG = -1)
51) Escreva um algoritmo que calcule a média dos números digitados pelo usuário, se eles forem pares. Termine a leitura se o usuário digitar zero (0).
52) Escreva um algoritmo que leia 50 valores e encontre o maior e o menor deles. Mostre o resultado.
53) 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 o código do candidato em um voto. Calcule e 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.
54) Escreva um programa que leia um número
nque indicará a quantidade de números inteiros positivos que devem ser lidos a seguir. O programa deve imprimir uma tabela de
nlinhas onde cada linha deve conter um dos valores inteiros lidos seguido de seu dobro, seu quadrado e seu fatorial.
Exemplo: se os valores lidos forem 2 3 5, a saída deverá ter 2 linhas na tabela, com x=3 e x=5:
55) A prefeitura de uma cidade fez uma pesquisa entre seus habitantes, armazenando o salário e o número de filhos de cada entrevistado. A prefeitura deseja saber:
a. média do salário da população;
b. média do número de filhos;
c. percentual de pessoas com salário até R$1000,00;
Faça um programa que leia os dados e, ao final, exiba os resultados solicitados. A leitura de dados será encerrada com a entrada de um salário negativo.
DESAFIOS
DESAFIO 1: Uma empresa de telefonia quer que você desenvolva um programa para calcular o preço de uma ligação internacional. Para isso, o programa precisa ler o prefixo que identifica o país da ligação e a duração da ligação em segundos (número inteiro).
O preço de cada minuto é:
R$1,90 para Argentina (54), Uruguai (598), Paraguai (595), Chile (56);
R$2,00 para Alemanha (49), França (33), Inglaterra (44);
R$2,10 para Canadá e Estados Unidos (1);
R$2,30 para outros países.
Após 5 minutos, o preço dos minutos adicionais tem redução de 5%. Desenvolva o programa e teste-o com os valores 39 e 415.
DESAFIO 2: Para controlar seus gastos mensais, Ana anota todas as suas despesas. Assim, quando vai ao shopping, em cada loja que entra, ela registra quantos itens comprou e qual o valor de cada um dos itens. Faça um programa para ajudá-la. O programa deverá ler o número de itens comprados em cada loja e o valor de cada um. O programa será encerrado quando for informada uma quantidade negativa de itens. Além disso, o programa deverá imprimir o gasto total de Ana.
DESAFIO 3: Neste exercício, você vai fazer um programa que retrata um jogo de
adivinhação. O jogo funciona da seguinte forma:
O programa avisa ao usuário que ele deve pensar em um número de 1 a 100
O programa faz uma sequência de perguntas para o usuário. As perguntas devem ser
do tipo:-O número é maior que 10 e menor ou igual a 20? -O número é 83?