Prévia do material em texto
Universidade Federal de Mato Grosso do Sul Campus de Treˆs Lagoas Bacharelado em Sistemas de Informac¸a˜o Algoritmos e Programac¸a˜o I Exerc´ıcios Algoritmos ba´sicos Sugesta˜o: para os exerc´ıcios cuja resposta e´ um algoritmo, implemente-os na linguagem de programac¸a˜o Java. 1. Determine o tipo de dado de cada uma das constantes abaixo: (a) 613 (b) −613 (c) “a” (d) −28, 3 ∗ 10−23 (e) 613, 0 (f) “613” (g) ‘e’ (h) ‘+’ (i) “Fim de Questa˜o” 2. Determine o resultado das expresso˜es: (a) 1 / 2 (b) 1 % 2 (c) (200/10)%4 (d) 5 * 2 + 3 (e) 6 + 19 - 23 (f) 3,0 * 5,0 + 1 (g) 1 / 4 + 2 (h) 29,0 / 7 + 4 (i) 3 / 6,0 - 7 3. Suponha um algoritmo onde ha´ apenas a va´riavel var, do tipo caractere, declarada. Neste algoritmo, qual e´ a diferenc¸a entre as atribuic¸o˜es var ← A e var ← ‘A’? Ambas esta˜o corretas? Explique. 4. Suponha um algoritmo onde ha´ apenas a va´riavel var, do tipo caractere, declarada. Neste algoritmo, qual e´ a diferenc¸a entre as atribuic¸o˜es var ← 3 e var ← ‘3’? Am- bas esta˜o corretas? Explique. 5. Suponha um algoritmo onde ha´ apenas a va´riavel var, do tipo inteiro, declarada. Neste algoritmo, qual e´ a diferenc¸a entre as atribuic¸o˜es var ← 3 e var ← ‘3’? Ambas esta˜o corretas? Explique. Exerc´ıcios - Algoritmos Ba´sicos Pa´gina 1 Universidade Federal de Mato Grosso do Sul Campus de Treˆs Lagoas Bacharelado em Sistemas de Informac¸a˜o Algoritmos e Programac¸a˜o I 6. Suponha um algoritmo onde ha´ apenas a va´riavel var, do tipo cadeia, declarada. Neste algoritmo, qual e´ a diferenc¸a entre as atribuic¸o˜es var ← texto e var ← ‘texto’? Ambas esta˜o corretas? Explique. 7. Suponha um algoritmo onde ha´ apenas a va´riavel var, do tipo cadeia, declarada. Neste algoritmo, qual e´ a diferenc¸a entre as atribuic¸o˜es var ← texto e var ← “texto”? Ambas esta˜o corretas? Explique. 8. No algoritmo abaixo, ha´ algum erro? Explique. algoritmo dados da maria inteiro inteiro cadeia Maria caractere letra real Maria idade ← 23 idade ← 678 idade ← letra letra ← ABC letra ← A letra ← 2 fimalgoritmo 9. Escreva um algoritmo que mostre a seguinte mensagem para o usua´rio: a) Comenta´rios em Java iniciam com /* e terminam com */ b) Letras minu´sculas e maiu´sculas s~ao diferentes para o Java c) Os sı´mbolos { e } envolvem um bloco de comandos no Java d) Todos os comandos no Java devem terminar com um ponto e vı´rgula 10. Escreva um algoritmo que multiplique 108 por 23 e mostre o resultado com uma mensagem apropriada. 11. Escreva um algoritmo que imprima a me´dia aritme´tica dos nu´meros 8.9 e 7; a me´dia dos nu´meros 4, 5 e 6; a soma das duas me´dias e a me´dia das me´dias. 12. Escreva um algoritmo que leia treˆs nu´meros inteiros a, b e c, calcule a ∗ b + c e mostre o resultado para o usua´rio. 13. Escreva um algoritmo que leia um nu´mero inteiro e mostre o seu quadrado e seu cubo. Por exemplo, se o nu´mero de entrada e´ 3, a sa´ıda deve ser 9 e 27. 14. Escreva um algoritmo que leia um nu´mero inteiro e mostre o resultado do quo- ciente (inteiro) da divisa˜o desse nu´mero por 2 e por 3. 15. Escreva um algoritmo onde, dada uma quantidade de tempo em horas, minutos e segundos, converta-a para a quantidade equivalente em segundos. Exerc´ıcios - Algoritmos Ba´sicos Pa´gina 2 Universidade Federal de Mato Grosso do Sul Campus de Treˆs Lagoas Bacharelado em Sistemas de Informac¸a˜o Algoritmos e Programac¸a˜o I 16. Escreva um algoritmo que calcule o volume de um cilindro circular, dados o raio e altura dele. Lembrando que V = pi ∗ r2 ∗h, onde pi = 3.14, r = raio e h = altura. 17. Escreva um algoritmo que leia 6 notas de provas e calcule a me´dia aritme´tica. Escreva uma versa˜o onde voceˆ armazena as 6 notas em 6 varia´veis diferentes. Escreva outra versa˜o na qual voceˆ so´ tem uma varia´vel para ler as notas. 18. Escreva um algoritmo que leia dois caracteres e armazene-os em duas varia´veis c1 e c2. Depois disso, seu algoritmo deve trocar o caractere de c1 pelo caractere de c2 e imprimir o conteu´do de c1 e c2. 19. Escreva um algoritmo que recebe as coordenadas x e y de dois pontos P e Q no plano e calcule a distaˆncia entre eles. A fo´rmula para o ca´lculo da distaˆncia d entre dois pontos (xp, yp) e (xq,yq) e´: d = √ (xp − xq)2 + (yp − yq)2 20. Escreva um algoritmo que leia treˆs nu´meros inteiros e positivos (A, B, C) e calcule a seguinte expressa˜o: D = R + S 2 , onde R = (A+B)2 e S = (B + C)2 21. Escreva um algoritmo que recebe como entrada o nome, idade, cargo e sala´rio bruto de um funciona´rio. O algoritmo deve informar o nome, a idade, o cargo, o sala´rio bruto e o sala´rio l´ıquido do funciona´rio, considerando que: • o sala´rio bruto teve um reajuste de 38%; • o funciona´rio deve receber uma gratificac¸a˜o de 20% do sala´rio bruto; • o sala´rio total e´ descontado em 15%. 22. Escreva um algoritmo que, tendo como entrada treˆs comprimentos das arestas de uma caixa (x, y, z), calcule e informe a quantidade de tinta necessa´ria para pinta´-la externamente e o custo total que e´ a soma do valor da ma˜o de obra com o valor do material; Para resolver o exerc´ıcio, considere que: • para pintar cada metro quadrado sa˜o necessa´rios 3 litros de tinta; • para cada 10 metros quadrados e´ necessa´rio um novo rolo de tinta que custa R$ 5,00; • a ma˜o de obra custa R$ 20,00 por metro quadrado; • cada lata de tinta conte´m 5 litros e custa R$ 45,00. Exerc´ıcios - Algoritmos Ba´sicos Pa´gina 3 Universidade Federal de Mato Grosso do Sul Campus de Treˆs Lagoas Bacharelado em Sistemas de Informac¸a˜o Algoritmos e Programac¸a˜o I 23. Escreva um algoritmo que leia treˆs valores: A, B e C. A seguir, calcule e mostre: (a) a a´rea do triaˆngulo que tem A por base e C por altura. (b) a a´rea do c´ırculo de raio C. (c) a a´rea do trape´zio que tem A e B por bases e C por altura. (d) a a´rea do quadrado que tem lado B. (e) a a´rea do retaˆngulo que tem lados A e B. 24. Escreva um algoritmo que, dado um nu´mero inteiro de segundos, mostre a quan- tidade de horas, minutos e segundos correspondente. 25. Sabendo que lata˜o e´ constitu´ıdo de 70% de cobre e 30% de zinco, escreva um algoritmo que indique a quantidade de cada um desses componentes para se obter uma certa quantidade de lata˜o (requerida pelo usua´rio). 26. Escreva um algoritmo que, dado uma quilometragem a ser percorrida, o consumo de um ve´ıculo por quiloˆmetro rodado e o valor do combust´ıvel utilizado, calcule quantos litros sa˜o necessa´rios para percorrer a distaˆncia informada e qual o valor gasto com esse combust´ıvel. 27. Escreva um algoritmo que leia um nu´mero de quatro d´ıgitos e escreva-o invertido. Por exemplo, se o nu´mero lido for 2548, o resultado sera´ 8452. Considere que o nu´mero em questa˜o nunca ira´ terminar com o d´ıgito zero. 28. Dois carros (x e y) saem de uma mesma cidade. O carro x sai com velocidade constante de 60Km/h e o carro y com velocidade constante de 90Km/h. Escreva um algoritmo que leia uma distaˆncia (em quiloˆmetros) e calcule quanto tempo leva para o carro mais veloz tomar essa distaˆncia do outro carro. 29. Treˆs amigos, Carlos, Andre´ e Felipe, decidiram rachar igualmente a conta de um bar. Fac¸a um algoritmo para ler o valor total da conta e imprimir quanto cada um deve pagar, mas fac¸a com que Carlos e Andre´ na˜o paguem centavos. Ex: uma conta de R$101,53 resulta em R$33,00 para Carlos, R$33,00 para Andre´ e R$35,53 para Felipe. 30. Qual e´ a sa´ıda esperada para o programa em Java abaixo: 1 class Ola 2 { 3 public static void main(String args[]) 4 { 5 System.out.println("Ola!"); 6 System.out.print("Ola! "); 7 System.out.print("Tem alguem ai?\n"); 8 } 9 } Exerc´ıcios - Algoritmos Ba´sicos Pa´gina 4 Universidade Federal de Mato Grosso do Sul Campus de Treˆs LagoasBacharelado em Sistemas de Informac¸a˜o Algoritmos e Programac¸a˜o I 31. Verifique se o programa em Java abaixo esta´ correto. Em caso negativo, liste os erros que voceˆ encontrou. 1 /* Programa que computa a soma de dois nu´meros 2 clas Erro 3 { 4 public static void main(args[]) 5 { 6 int resultado; 7 resultado = 13 - 8 8 System.out.println("O resultado da operacao e + resultado); 9 } 10 } Exerc´ıcios - Algoritmos Ba´sicos Pa´gina 5