Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Engenharia Curso de Engenharia Elétrica Processos Numéricos - Apostila de Linguagem C Prof. Juliano Benfica ESTRUTURA DE REPETIÇÃO As estruturas de repetição são utilizadas para que um conjunto de instruções seja executado até que ocorra certa condição. O laço for diferencia dos restantes (while e do-while) por ter condições pré-definidas, ou seja, o numero de vezes a ser executada já é conhecido. LAÇO FOR: SINTAXE: for(inicialização; condição ; incremento) comando; Na inicialização é atribuído um valor para variável que controla o laço, a condição determina quando o laço deve ser encerrado e por último temos o quanto a variável controladora é incrementada. Exemplo simples: #include<stdio.h void main() { int n; for(n=1; n<=10; n++) printf("n=%d\n",n); } LAÇO WHILE: SINTAXE: while (condição) Instrução; Este laço executa a instrução até que a condição se torne falsa (qualquer valor diferente de zero). #include<stdio.h> void main() { int cont=0,resposta; resposta=1; while(resposta==1){ cont++; if(cont==5) resposta=0; }/*fim_while*/ } 2 LAÇO DO-WHILE A grande diferença entre o laço do-while e os vistos anteriormente é que ele analisa a condição no final do laço. Dessa forma todas as instruções localizadas dentro do do-while será executada pelo menos uma vez. O laço termina quando a condição se torna falsa. Sintaxe: SINTAXE: do{ Instrução; }while(condição); O programa anterior também pode ser escrito da seguinte forma: #include<stdio.h> void main() { int resposta=0; do{ printf("Digite valor de n1(inteiro):\n"); }while(resposta==1); } COMANDOS DE DESVIO COMANDO BREAK: O comando break pode ser tanto usado para terminar um teste case dentro de um comando switch quanto interromper a execução de um laço. Quando o comando é utilizado dentro de um comando for o laço é imediatamente interrompido e o programa continua a execução no comando seguinte ao comando for. No trecho de programa abaixo o comando for deve ler 100 números inteiros positivos. No entanto, se for digitado um número negativo o comando for é interrompido imediatamente sem que o número seja impresso. for (i = 0; i <100; i++) { scanf("%d", &um); if (num < 0) break; printf("%d\n", num); } 3 FUNÇÃO EXIT(): A função exit provoca a terminação de um programa, retornando o controle ao sistema operacional. O protótipo da função é a seguinte: void exit(); Observar que esta função interrompe o programa como um todo. COMANDO RETURN: O comando return é usado para interromper a execução de uma função e retornar um valor ao programa que chamou esta função. Caso haja algum valor associado ao comando return este é devolvido para a função, caso contrário um valor qualquer é retornado. A forma geral do comando é: return expressão; Notar que a expressão é opcional. A chave que termina uma função é equivalente a um comando return sem a expressão correspondente. É possível haver mais de um comando return dentro de uma função. O primeiro que for encontrado durante a execução causará o fim da execução. Uma função declarada como do tipo void não pode ter um comando return que retorne um valor. Isto não faz sentido, já que funções deste tipo não podem retornar valores. Ex: Utilizando um laço "while" e o comando "break", escreva um programa que exiba a mensagem "HA-HA-HA!! Você está preso." até que a senha "FUI!!" seja digitada. Ex: Escreva um programa que imprima todos os numeros pares entre 0 e 50 e em seguida imprima todos os impares. Deixar um espaco entre os numeros. Ex: Utilizando um laço "for" dentro de outro, escreva um programa que exiba as tabuadas de multiplicação dos números de 1 à 9. 4 Estrutura de Repetição 1. Faça um programa que peça uma nota, entre zero e dez. Mostre uma mensagem caso o valor seja inválido e continue pedindo até que o usuário informe um valor válido. 2. Faça um programa que leia um nome de usuário e a sua senha e não aceite a senha igual ao nome do usuário, mostrando uma mensagem de erro e voltando a pedir as informações. 3. Faça um programa que leia e valide as seguintes informações: a. Nome: maior que 3 caracteres; b. Idade: entre 0 e 150; c. Salário: maior que zero; d. Sexo: 'f' ou 'm'; e. Estado Civil: 's', 'c', 'v', 'd'; 4. Supondo que a população de um país A seja da ordem de 80000 habitantes com uma taxa anual de crescimento de 3% e que a população de B seja 200000 habitantes com uma taxa de crescimento de 1.5%. Faça um programa que calcule e escreva o número de anos necessários para que a população do país A ultrapasse ou iguale a população do país B, mantidas as taxas de crescimento. 5. Altere o programa anterior permitindo ao usuário informar as populações e as taxas de crescimento iniciais. Valide a entrada e permita repetir a operação. 6. Faça um programa que imprima na tela os números de 1 a 20, um abaixo do outro. Depois modifique o programa para que ele mostre os números um ao lado do outro. Dica: use print com uma vírgula no final. 7. Faça um programa que imprima na tela apenas os números ímpares entre 1 e 50. 8. Faça um programa que receba dois números inteiros e gere os números inteiros que estão no intervalo compreendido por eles. 9. Altere o programa anterior para mostrar no final a soma dos números. 10. Desenvolva um gerador de tabuada, capaz de gerar a tabuada de qualquer número inteiro entre 1 a 10. O usuário deve informar de qual numero ele deseja ver a tabuada. A saída deve ser conforme o exemplo abaixo: o Tabuada de 5: o 5 X 1 = 5 o 5 X 2 = 10 o ... o 5 X 10 = 50 Faça um programa que peça dois números, base e expoente, calcule e mostre o primeiro número elevado ao segundo número. Não utilize a função de potência da linguagem. Faça um programa que peça 10 números inteiros, calcule e mostre a quantidade de números pares e a quantidade de números impares. A série de Fibonacci é formada pela seqüência 1,1,2,3,5,8,13,21,34,55,... Faça um programa capaz de gerar a série até o n−ésimo termo. A série de Fibonacci é formada pela seqüência 0,1,1,2,3,5,8,13,21,34,55,... Faça um programa que gere a série até que o valor seja maior que 500. 5 Faça um programa que calcule o fatorial de um número inteiro fornecido pelo usuário. Ex.: 5!=5.4.3.2.1=120 Faça um programa que mostre os n termos da Série a seguir: o S = 1/1 + 2/3 + 3/5 + 4/7 + 5/9 + ... + n/m. Imprima no final a soma da série. Sendo H= 1 + 1/2 + 1/3 + 1/4 + ... + 1/N, Faça um programa que calcule o valor de H com N termos. Não fazer: Faça um programa que calcule a seguinte serie: S = 1/N + 2/(N−1) + 3/(N−2) + ... + (N−1)/2 + N/ 1. Mostre e calcule a série S = 1/1 + 3/2 + 5/3 + 7/4 + ... + 99/50. Não fazer: Mostre e calcule a série S = 2(1)/50 + 2(2)/49 + 2(3)/48 + ... + 2(50)/1. Não fazer: Mostre e calcule a série S = (37*38)/1 + (36*37)/2 + (35*36)/3 + ... + (1*2)/37. Não fazer: Mostre e calcule a série S = 1/1 − 2/4 + 3/9 + 4/16 + ... − 10/100. Não fazer: Mostre e calcule a série S=1/3−3/5+5/7−7/9+9/11 ... Sendo N o número de termos da série informado pelo usuário. Faça um programa que, dado um conjunto de N números, determine o menor valor, o maior valor e a soma dos valores. Altere o programa anterior para que ele aceite apenas números entre 0 e 65536. Altere o programa de cálculo do fatorial, permitindo ao usuário calcular o fatorial várias vezes e limitando o fatorial a números inteiros positivos e menores que 16. Faça um programa que peça um número inteiro e determine se ele é ou não um número primo. Um número primo é aquele que é divisível somente por ele mesmo e por 1. Altere o programa de cálculo dos números primos, informando, caso o número não sejaprimo, por quais número ele é divisível. Faça um programa que mostre todos os primos entre 1 e N sendo N um número inteiro fornecido pelo usuário. O programa deverá mostrar também o número de divisões que ele executou para encontrar os números primos. Serão avaliados o funcionamento, o estilo e o número de testes (divisões) executados. Faça um programa que calcule o mostre a média aritmética de N notas. Faça um programa que peça para n pessoas a sua idade, ao final o programa devera verificar se a média de idade da turma varia entre 0 e 25,26 e 60 e maior que 60; e então, dizer se a turma é jovem, adulta ou idosa, conforme a média calculada. Numa eleição existem três candidatos. Faça um programa que peça o número total de votantes. Peça para cada votante votar e ao final mostrar o número de votos de cada candidato. Faça um programa que calcule o número médio de alunos por turma. Para isto, peça a quantidade de turmas e a quantidade de alunos para cada turma. As turmas não podem ter mais de 40 alunos. Faça um programa que calcule o valor total investido por um colecionador em sua coleção de CDs e o valor médio gasto em cada um deles. O usuário deverá informar a quantidade de CDs e o valor para em cada um. O Sr. Manoel Joaquim possui uma grande loja de artigos de R$ 1,99, com cerca de 10 caixas. Para agilizar o cálculo de quanto cada cliente deve 6 pagar ele desenvolveu um tabela que contém o número de itens que o cliente comprou e ao lado o valor da conta. Desta forma a atendente do caixa precisa apenas contar quantos itens o cliente está levando e olhar na tabela de preços. Você foi contratado para desenvolver o programa que monta esta tabela de preços, que conterá os preços de 1 até 50 produtos, conforme o exemplo abaixo: o Lojas Quase Dois - Tabela de preços o 1 - R$ 1.99 o 2 - R$ 3.98 o ... o 50 - R$ 99.50 O Sr. Manoel Joaquim acaba de adquirir uma panificadora e pretende implantar a metodologia da tabelinha, que já é um sucesso na sua loja de 1,99. Você foi contratado para desenvolver o programa que monta a tabela de preços de pães, de 1 até 50 pães, a partir do preço do pão informado pelo usuário, conforme o exemplo abaixo: o Preço do pão: R$ 0.18 o Panificadora Pão de Ontem - Tabela de preços o 1 - R$ 0.18 o 2 - R$ 0.36 o ... o 50 - R$ 9.00 O Sr. Manoel Joaquim expandiu seus negócios para além dos negócios de 1,99 e agora possui uma loja de conveniências. Faça um programa que implemente uma caixa registradora rudimentar. O programa deverá receber um número desconhecido de valores referentes aos preços das mercadorias. Um valor zero deve ser informado pelo operador para indicar o final da compra. O programa deve então mostrar o total da compra e perguntar o valor em dinheiro que o cliente forneceu, para então calcular e mostrar o valor do troco. Após esta operação, o programa deverá voltar ao ponto inicial, para registrar a próxima compra. A saída deve ser conforme o exemplo abaixo: o Lojas Tabajara o Produto 1: R$ 2.20 o Produto 2: R$ 5.80 o Produto 3: R$ 0 o Total: R$ 9.00 o Dinheiro: R$ 20.00 o Troco: R$ 11.00 o ... Faça um programa que calcule o fatorial de um número inteiro fornecido pelo usuário. Ex.: 5!=5.4.3.2.1=120. A saída deve ser conforme o exemplo abaixo: o Fatorial de: 5 o 5! = 5 . 4 . 3 . 2 . 1 = 120 Faça um programa que leia 5 números e informe o maior número. Faça um programa que leia 5 números e informe a soma e a média dos números. O Departamento Estadual de Meteorologia lhe contratou para desenvolver um programa que leia as um conjunto indeterminado de temperaturas, e informe ao final a menor e a maior temperaturas informadas, bem como a média das temperaturas. Os números primos possuem várias aplicações dentro da Computação, por exemplo na Criptografia. Um número primo é aquele que é divisível apenas por um e por ele mesmo. Faça um programa que peça um número inteiro e determine se ele é ou não um número primo. 7 Encontrar números primos é uma tarefa difícil. Faça um programa que gera uma lista dos números primos existentes entre 1 e um número inteiro informado pelo usuário. Desenvolva um programa que faça a tabuada de um número qualquer inteiro que será digitado pelo usuário, mas a tabuada não deve necessariamente iniciar em 1 e terminar em 10, o valor inicial e final devem ser informados também pelo usuário, conforme exemplo abaixo: o Montar a tabuada de: 5 o Começar por: 4 o Terminar em: 7 o o Vou montar a tabuada de 5 começando em 4 e terminando em 7: o 5 X 4 = 20 o 5 X 5 = 25 o 5 X 6 = 30 o 5 X 7 = 35 Obs: Você deve verificar se o usuário não digitou o final menor que o inicial. Uma academia deseja fazer um senso entre seus clientes para descobrir o mais alto, o mais baixo, a mais gordo e o mais magro, para isto você deve fazer um programa que pergunte a cada um dos clientes da academia seu código, sua altura e seu peso. O final da digitação de dados deve ser dada quando o usuário digitar 0 (zero) no campo código. Ao encerrar o programa também deve ser informados os códigos e valores do clente mais alto, do mais baixo, do mais gordo e do mais magro, além da média das alturas e dos pesos dos clientes Um funcionário de uma empresa recebe aumento salarial anualmente: Sabe- se que: . Esse funcionário foi contratado em 1995, com salário inicial de R$ 1.000,00; a. Em 1996 recebeu aumento de 1,5% sobre seu salário inicial; b. A partir de 1997 (inclusive), os aumentos salariais sempre correspondem ao dobro do percentual do ano anterior. Faça um programa que determine o salário atual desse funcionário. Após concluir isto, altere o programa permitindo que o usuário digite o salário inicial do funcionário. Faça um programa que leia dez conjuntos de dois valores, o primeiro representando o número do aluno e o segundo representando a sua altura em centímetros. Encontre o aluno mais alto e o mais baixo. Mostre o número do aluno mais alto e o número do aluno mais baixo, junto com suas alturas. Foi feita uma estatística em cinco cidades brasileiras para coletar dados sobre acidentes de trânsito. Foram obtidos os seguintes dados: . Código da cidade; a. Número de veículos de passeio (em 1999); b. Número de acidentes de trânsito com vítimas (em 1999). Deseja-se saber: c. Qual o maior e menor índice de acidentes de transito e a que cidade pertence; d. Qual a média de veículos nas cinco cidades juntas; e. Qual a média de acidentes de trânsito nas cidades com menos de 2.000 veículos de passeio. Faça um programa que receba o valor de uma dívida e mostre uma tabela com os seguintes dados: valor da dívida, valor dos juros, quantidade de parcelas e valor da parcela. 8 o Os juros e a quantidade de parcelas seguem a tabela abaixo: o Quantidade de Parcelas % de Juros sobre o valor inicial da dívida o 1 0 o 3 10 o 6 15 o 9 20 12 25 Exemplo de saída do programa: Valor da Dívida Valor dos Juros Quantidade de Parcelas Valor da Parcela R$ 1.000,00 0 1 R$ 1.000,00 R$ 1.100,00 100 3 R$ 366,00 R$ 1.150,00 150 6 R$ 191,67 Faça um programa que leia uma quantidade indeterminada de números positivos e conte quantos deles estão nos seguintes intervalos: [0-25], [26- 50], [51-75] e [76-100]. A entrada de dados deverá terminar quando for lido um número negativo. O cardápio de uma lanchonete é o seguinte: o Especificação Código Preço o Cachorro Quente 100 R$ 1,20 o Bauru Simples 101 R$ 1,30 o Bauru com ovo 102 R$ 1,50 o Hambúrguer 103 R$ 1,20 o Cheeseburguer 104 R$ 1,30 o Refrigerante 105 R$ 1,00 Faça um programa que leia o código dos itens pedidos e as quantidades desejadas. Calcule e mostre o valor a ser pago por item (preço * quantidade) e o total geral do pedido. Considere que o cliente deveinformar quando o pedido deve ser encerrado. Em uma eleição presidencial existem quatro candidatos. Os votos são informados por meio de código. Os códigos utilizados são: o 1 , 2, 3, 4 - Votos para os respectivos candidatos o (você deve montar a tabela ex: 1 - Jose/ 2- João/etc) o 5 - Voto Nulo o 6 - Voto em Branco Faça um programa que calcule e mostre: o O total de votos para cada candidato; o O total de votos nulos; o O total de votos em branco; o A percentagem de votos nulos sobre o total de votos; o A percentagem de votos em branco sobre o total de votos. Para finalizar o conjunto de votos tem-se o valor zero. Desenvolver um programa para verificar a nota do aluno em uma prova com 10 questões, o programa deve perguntar ao aluno a resposta de cada questão e ao final comparar com o gabarito da prova e assim calcular o total de acertos e a nota (atribuir 1 ponto por resposta certa). Após cada aluno 9 utilizar o sistema deve ser feita uma pergunta se outro aluno vai utilizar o sistema. Após todos os alunos terem respondido informar: . Maior e Menor Acerto; a. Total de Alunos que utilizaram o sistema; b. A Média das Notas da Turma. c. Gabarito da Prova: d. e. 01 - A f. 02 - B g. 03 - C h. 04 - D i. 05 - E j. 06 - E k. 07 - D l. 08 - C m. 09 - B 10 - A Após concluir isto você poderia incrementar o programa permitindo que o professor digite o gabarito da prova antes dos alunos usarem o programa. Faça um programa que peça um numero inteiro positivo e em seguida mostre este numero invertido. o Exemplo: o 12376489 => 98467321 Exercícios com comandos de Repetição Compilado pelos Professores Sílvia Moraes e Egídio Terra 1. Escrever um algoritmo que lê 5 valores para a, um de cada vez, e conta quantos destes valores são negativos, escrevendo esta informação. 2. Escrever um algoritmo que lê um valor N inteiro e positivo e que calcula e escreve o valor de E. E = 1 + 1 / 1! + 1 / 2! + 1 / 3! + 1 / N! 3. A prefeitura de uma cidade fez uma pesquisa entre seus habitantes, coletando dados sobre o salário e número de filhos. A prefeitura deseja saber: a) média do salário da população; b) média do número de filhos; c) maior salário; d) percentual de pessoas com salário até R$100,00. 10 O final da leitura de dados se dará com a entrada de um salário negativo. (Use o comando ENQUANTO-FAÇA) 4. Chico tem 1,50 metro e cresce 2 centímetros por ano, enquanto Zé tem 1,10 metro e cresce 3 centímetros por ano. Construa um algoritmo que calcule e imprima quantos anos serão necessários para que Zé seja maior que Chico. 5. Construir um algoritmo que calcule a média aritmética de vários valores inteiros positivos, lidos externamente. O final da leitura acontecerá quando for lido um valor negativo. 6. 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 candidado 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. 7. Escreva um algoritmo que calcule a média aritmética das 3 notas dos alunos de uma classe. O algoritmo deverá ler, além das notas, o código do aluno e deverá ser encerrado quando o código for igual a zero. 8. 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). 9. Escreva um algoritmo que leia 50 valores e encontre o maior e o menor deles. Mostre o resultado. 10. Escreva um algoritmo que leia o código de um aluno e suas três notas. Calcule a média ponderada do aluno, considerando que o peso para a maior nota seja 4 e para as duas restantes, 3. Mostre o código do aluno, suas três notas, a média calculada e uma mensagem "APROVADO" se a média for maior ou igual a 5 e "REPROVADO" se a média for menor que 5. Repita a operação até que o código lido seja negativo. 11. 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 ntermos desta progressão, bem como a soma dos elementos. 11 12. 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 = n2 13. Escrever um algoritmo que leia um número n que indica quantos valores devem ser lidos a seguir. Para cada número lido, mostre uma tabela contendo o valor lido e o fatorial deste valor. 14. Escrever um algoritmo que leia um número não determinado de valores e calcule a média aritmética dos valores lidos, a quantidade de valores positivos, a quantidade de valores negativos e o percentual de valores negativos e positivos. Mostre os resultados. 15. Escrever um algoritmo que leia uma quantidade desconhecida de números e conte quantos deles estão nos seguintes intervalos: [0.25], [26,50], [51,75] e [76,100]. A entrada de dados deve terminar quando for lido um número negativo. 16. Escrever um algoritmo que lê um conjunto não determinado de valores, um de cada vez, e escreve uma tabela com cabeçalho, que deve ser repetido a cada 20 linhas. A tabela conterá o valor lido, seu quadrado, seu cubo e sua raiz quadrada. 17. Escrever um algoritmo que lê um número não determinado de pares de valores m,n, todos inteiros e positivos, um par de cada vez, e calcula e escreve a soma dos n inteiros consecutivos a partir de m inclusive. 18. Escrever um algoritmo que lê um número não determinado de valores para m, todos inteiros e positivos, um de cada vez. Se m for par, verificar quantos divisores possui e escrever esta informação. Se m for ímpar e menor do que 10 calcular e escrever o fatorial de m. Se m for ímpar e maior ou igual a 10 calcular e escrever a soma dos inteiros de 1 até m. 19. Faça um algoritmo que leia uma quantidade não determinada de números positivos. Calcule a quantidade de números pares e ímpares, a média de valores pares e a média geral dos números lidos. O número que encerrará a leitura será zero. 20. 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. 21. Faça um algoritmo que leia vários números inteiros e positivos e calcule o produtório dos números pares. O fim da leitura será indicado pelo número 0. 12 22. Foi feita uma pesquisa entre os habitantes de uma região. Foram coletados os dados de idade, sexo (M/F) e salário. Faça um algoritmo que informe: a) a média de salário do grupo; b) maior e menor idade do grupo; c) quantidade de mulheres com salário até R$100,00. Encerre a entrada de dados quando for digitada uma idade negativa. (Use o comando enquanto-faça e não use vetores ou matrizes) 23. Foi realizada uma pesquisa de algumas características físicas da população de uma certa região, a qual coletou os seguintes dados referentes a cada habitante para serem analisados: - sexo (masculino e feminino) - cor dos olhos (azuis, verdes ou castanhos) - cor dos cabelos ( louros, castanhos, pretos) - idade 24. Faça um algoritmo que determine e escreva: - a maior idade dos habitantes - a quantidade de indivíduos do sexo feminino cuja idade está entre 18 e 35 anos inclusive e que tenham olhos verdes e cabelos louros. O final do conjunto de habitantes é reconhecido pelo valor -1 entrada como idade. 25. Uma empresa deseja aumentar seus preços em 20%. Faça um algoritmo que leia o código e o preço de custo de cada produto e calcule o preço novo. Calcule também, a média dos preços com e sem aumento. Mostre o código e opreço novo de cada produto e, no final, as médias. A entrada de dados deve terminar quando for lido um código de produto negativo. (Use o comando enquanto-faça) 26. Escreva um algoritmo que gere o números de 1000 a 1999 e escreva aqueles que dividido por 11 dão resto igual a 5. 27. Escreva um algoritmo que leia 500 valores inteiros e positivos e: a) encontre o maior valor; b) encontre o menor valor; c) calcule a média dos números lidos. 28. Escreva um algoritmo que lê um valor n inteiro e positivo e que calcula a seguinte soma: 13 S := 1 + 1/2 + 1/3 + 1/4 + ... + 1/n O algoritmo deve escrever cada termo gerado e o valor final de S. 29. Escrever um algoritmo que calcule e mostre a média aritmética dos números lidos entre 13 e 73. 30. Escrever um algoritmo que gera e escreve os números ímpares entre 100 e 200. 31. Escrever um algoritmo que lê 10 valores, um de cada vez, e conta quantos deles estão no intervalo [10,20] e quantos deles estão fora do intervalo, escrevendo estas informações. 32. Escrever um algoritmo que lê 5 pares de valores a, b, todos inteiros e positivos, um par de cada vez, e com a < b, escreve os inteiros pares de a até b, incluindo o a e o b se forem pares. 33. 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 = N2 34. Escrever um algoritmo que leia 5 conjuntos de 2 valores, o primeiro representando o número de um aluno, e o segundo representando a sua altura em centímetros. Encontre o aluno mais alto e o mais baixo. Mostre o número do aluno mais alto e do mais baixo, junto com suas alturas. 35. Escrever um algoritmo que leia um conjunto de 50 informações contendo, cada uma delas, a altura e o sexo de uma pessoa (código=1, masculino código=2, feminino), calcule e mostre o seguinte: a) a maior e a menor altura da turma b) a média da altura das mulheres c) a média da altura da turma. 36. Escrever um algoritmo que leia um número N que indica quantos valores devem ser lidos a seguir. Para cada número lido, mostre uma tabela contendo o valor lido e o fatorial deste valor. 37. Escrever um algoritmo que leia um valor X e calcule e mostre os 20 primeiros termos da série: 1 1 1 1 ..... X X2 X3 X4 38. Escrever um algoritmo que calcula e escreve o produto dos números primos entre 92 e 1478. 39. 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). 14 40. Escrever um algoritmo que lê um valor n que indica quantos valores devem ser lidos para m, valores inteiros e positivos, com leitura de um valor de cada vez. Escreva uma tabela contendo o valor lido, o somatório dos inteiros de 1 até m e o fatorial de m. 41. Faça um algoritmo que leia as três notas de 50 alunos de uma turma. Para cada aluno, calcule a média ponderada, como segue: MP = ( n1*2 + n2*4 + n3*3 ) / 10 Além disso, calcule a média geral da turma. Mostre a média de cada aluno e uma mensagem "Aprovado", caso a média seja maior ou igual a sete, e uma mensagem "Reprovado", caso contrário. Ao final, mostre a média geral. 42. 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) e mostrar o resultado final de H. A soma deve ser calculada apenas uma vez. 43. Fazer um algoritmo que leia 5 grupos de 4 valores (A,B,C,D) e mostre-os na ordem lida. Em seguida, ordene-os em ordem decrescente e mostre-os novamente, já ordenados. 44. Foi feita uma estatística nas 200 principais cidades brasileiras para coletar dados sobre acidentes de trânsito. Foram obtidos os seguintes dados: - código da cidade - estado (RS, SC, PR, SP, RJ, ...) - número de veículos de passeio (em 1992) - número de acidentes de trânsito com vítimas (em 1992) Deseja-se saber: a) qual o maior e o menor índice de acidentes de trânsito e a que cidades pertencem b) qual a média de veículos nas cidades brasileiras c) qual a média de acidentes com vítimas entre as cidades do Rio Grande do Sul. 45. 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; 15 d) percentual de pessoas com idade entre 18 e 35 anos (inclusive). 46. Foi realizada uma pesquisa de algumas características físicas da população de um certa região. Foram entrevistadas 500 pessoas e coletados os seguintes dados: a- sexo: M (masculino) e F (feminino) b- cor dos olhos: A (azuis), V (verdes) e C (castanhos) c- cor dos cabelos: L (louros), C (castanhos) e P (pretos) d- idade Deseja-se saber: o a maior idade do grupo o a quantidade de indivíduos do sexo feminino, cuja idade está entre 18 e 35 anos e que tenham olhos verdes e cabelos louros. 47. Uma loja tem 150 clientes cadastrados e deseja mandar uma correspondência a cada um deles anunciando um bônus especial. Escreva um algoritmo que leia o nome do cliente e o valor das suas compras no ano passado e calcule um bônus de 10% se o valor das compras for menor que 500.000 e de15 %, caso contrário. 48. Faça um algoritmo que mostre os conceitos finais dos alunos de uma classe de 75 alunos, considerando (use o comando CASO): a) os dados de cada aluno (número de matrícula e nota numérica final) serão fornecidos pelo usuário b) a tabela de conceitos segue abaixo: Nota Conceito de 0,0 a 4,9 D de 5,0 a 6,9 C de 7,0 a 8,9 B de 9,0 a 10,0 A 49.Faça um algoritmo que lê um valor N inteiro e positivo e que calcula e escreve o fatorial de N (N!). 50. Faça um algoritmo que leia 2 valores inteiros e positivos: X e Y. O algoritmo deve calcular e escrever a função potência X Y 51. Faça um algoritmo que calcule o fatorial de um número. 52. Faça um algoritmo que calcule a combinação e arranjo de um conjunto de tamanho N em subconjuntos de p elementos. 53. Faça um algoritmo que calcule os 20 primeiros números primos, dados os tres primeiros 1,2 e 3. 16 54. Faça uma algoritmo que receba 2 numeros e divida o intervalo entre eles em 3 partes iguais. Obs. Faça a consistência para que os extremos não sejam iguais. 55. Faça uma algoritmo que receba duas datas e retorne a diferença entre elas em dias. 17 BIBLIOGRAFIA: LIVROS: C COMPLETO E TOTAL => HERBERT SCHILDT C: A LINGUAGEM DE PROGRAMAÇÃO PADRÃO ANSI => BRIAN W. KERNIGHAN SITES: http://www.cplusplus.com http://www.python.org.br/wiki/ListaDeExercicios http://www.python.org.br/ http://www.mtm.ufsc.br/~azeredo/cursoC/c.html http://www.juliobattisti.com.br/tutoriais/ http://www.ime.usp.br/~macmulti/exercicios/ http://www.inf.pucrs.br/~pinho/LaproI/Exercicios/Repeticao/Lista1.htm http://equipe.nce.ufrj.br/adriano/c/apostila/contro.htm#lacos
Compartilhar