Baixe o app para aproveitar ainda mais
Prévia do material em texto
LISTA DE EXERCÍCIOS No3 - Estrutura de repetição PARA (for) Algoritmos e Programação / Algoritmos e Estrutura de Dados Prof. André Sarmento Barbosa e Paula Faragó Barbosa // 01. Imprimir os números inteiros de 1 a 100 em ordem crescente. #include <iostream> using namespace std; int main() { int x; for (x = 1; x <= 100; x++) { cout << x << endl; } system("pause"); } // 02. Imprimir os números inteiros de 100 a 1 em ordem decrescente . #include <iostream> using namespace std; int main() { int x; for (x = 100; x >= 1; x--) { cout << x << endl; } system("pause"); } // 03. Imprimir os números inteiros pares entre 1 e 100 e depois os ímpares entre 1 e 100. #include <iostream> using namespace std; int main() { int x; cout << "Pares: " << endl; for (x = 2; x <= 100; x=x+2) { cout << x << endl; } cout << "Impares: " << endl; for (x = 1; x <= 100; x=x+2) { cout << x << endl; } system("pause"); } // 04. Imprimir a soma dos números inteiros de 1 a 100. #include <iostream> using namespace std; int main() { int x; int soma; soma = 0; for (x = 1; x <= 100; x++) { soma = soma + x; } cout << "Soma: " << soma << endl; system("pause"); } // 05. 10 números inteiros e imprimir ao final a soma de todos os números. #include <iostream> using namespace std; int main() { int x; int soma; int num; soma = 0; for (x = 1; x <= 10; x++) { cout << "Digite um numero inteiro: "; cin >> num; soma = soma + num; } cout << "Soma: " << soma << endl; system("pause"); } // 06. Ler as notas dos alunos de uma turma (10 notas) e imprimir ao final a média aritmética da turma #include <iostream> using namespace std; int main() { int x; float soma; float nota; soma = 0.0; for (x = 1; x <= 10; x++) { cout << "Digite a nota do aluno: "; cin >> nota; soma = soma + nota; } cout << "Media: " << soma/10.0 << endl; system("pause"); } // 07. Ler dois números inteiros que representam o limite inferior e o superior de um intervalo. Imprimir a soma dos números do intervalo digitado. #include <iostream> using namespace std; int main() { int x; int soma; int inf; int sup; soma = 0; cout << "Digite o limite inferior: "; cin >> inf; cout << "Digite o limite superior: "; cin >> sup; if (sup < inf) { cout << "Os limites estao errados (superior menor que inferior)" << endl; } else { for (x = inf; x <= sup; x++) { soma = soma + x; } cout << "Soma: " << soma << endl; } system("pause"); } // 08. Ler o nome (char[50]), o sexo(char) e a idade (int) de 10 pessoas. Para cada pessoa digitada imprimir o nome desta pessoa se ela for do sexo masculino e tiver mais de 21 anos. #include <iostream> using namespace std; int main() { int x; char nome[50]; char sexo; int idade; for (x = 0; x < 10; x++) { cout << "Digite o nome: "; cin.getline(nome, 50); cout << "Digite o sexo: "; cin >> sexo; cin.get(); cout << "Digite a idade: "; cin >> idade; cin.get(); // Limpeza de buffer de teclado. Necessario pois // misturamos cin.getline() com cin simples if (tolower(sexo) == 'm' && idade > 21) { cout << nome << endl; } } system("pause"); } // 09. Leia 10 números inteiros positivos e ao final imprima o maior deles. #include <iostream> using namespace std; int main() { int x; int num; int maior; maior = 1; for (x = 0; x < 10; x++) { cout << "Digite um numero inteiro positivo: "; cin >> num; if (num > maior) { maior = num; } } cout << "Maior: " << maior << endl; system("pause"); } // 10. Leia inicialmente a quantidade de números inteiros que se deseja digitar. // Em seguida leia todos os números. Ao final imprima o maior e o menor deles. // Obs. Os números podem ser negativos. #include <iostream> using namespace std; int main() { int x, num, quant; int maior, menor; cout << "Digite um numero inteiro: "; cin >> num; maior = num; menor = num; for (x = 1; x <= 9; x++) { cout << "Digite um numero inteiro: "; cin >> num; if (num > maior) { maior = num; } if (num < menor) { menor = num; } } cout << "Maior: " << maior << endl; cout << "Menor: " << menor << endl; system("pause"); } // 11. Imprimir os 10 primeiros termos da série de Fibonacci. #include <iostream> using namespace std; int main() { int x, anterior, atual, proximo; anterior = 0; atual = 1; for (x = 1; x <= 10; x++) { cout << atual << endl; proximo = anterior + atual; anterior = atual; atual = proximo; } system("pause"); } // 12. Ler o nome a as notas de AV1 e AV2 de 10 alunos. Para cada aluno digitado imprimir o nome daqueles com média igual ou superior a 7.0. Ao final imprimir a quantidade de alunos com média inferior a 4.0, a quantidade de alunos com média entre 4.0 e 7.0 e a quantidade de alunos com média igual ou superior a 7.0. #include <iostream> using namespace std; int main() { char nome[50]; float av1, av2, media; int qrep, qaprov, x; qrep = qaprov = 0; for (x = 1; x <= 3; x++) { cout << "Digite o nome do aluno: "; cin.getline(nome, 50); cout << "Digite a nota de AV1: "; cin >> av1; cout << "Digite a nota de AV2: "; cin >> av2; fflush(stdin); media = (av1 + av2) / 2.0; if (media < 4.0) { qrep++; } if (media >= 7.0) { qaprov++; } } cout << "Total de alunos aprovados : " << qaprov << endl; cout << "Total de alunos reprovados: " << qrep << endl; cout << "Total de alunos em AV3 : " << (10 - qaprov - qrep) << endl; system("pause"); } // 13. Ler o nome de 10 pessoas e imprimir ao final a quantidade de pessoas // que tem o nome começando com a letra 'a' ou 'A'. #include <iostream> using namespace std; int main() { int x; char nome[50]; int quant = 0; for (x = 1; x <= 10; x++) { cout << "Digite o nome da pessoa: "; cin.getline(nome, 50); if (nome[0] == 'a' || nome[0] == 'A') { // ou if (tolower(nome[0]) == 'a') { quant++; } } cout << "Quantidade de pessoas que iniciam com a ou A: " << quant << endl; system("pause"); } // 14. Ler um nome e imprimi-lo tantas vezes quanto for a sua quantidade de caracteres. #include <iostream> #include <string.h> using namespace std; int main() { char nome[50]; int x, quant; cout << "Digite o nome da pessoa: "; cin.getline(nome, 50); quant = strlen(nome); for (x = 1; x <= quant; x++) { cout << nome << endl; } system("pause"); } // 15. Ler um nome e imprimi-lo de trás pra frente. #include <iostream> #include <string.h> using namespace std; int main() { char nome[50]; int x, tam; cout << "Digite o nome da pessoa: "; cin.getline(nome, 50); tam = strlen(nome); for (x = tam-1; x >= 0; x--) { cout << nome[x]; } cout << endl; system("pause"); } // 16. Ler um nome e uma letra. Imprimir quantas vezes a letra aparece no nome. #include <iostream> #include <string.h> using namespace std; int main() { char nome[50]; char letra; int x, tam, quant = 0; cout << "Digite o nome da pessoa: "; cin.getline(nome, 50); cout << "Digite uma letra: "; cin >> letra; tam = strlen(nome); for (x = 0; x <= tam; x++) {if (letra == nome[x]) { quant++; } } cout << "A letra [" << letra << "] aparece " << quant << " vezes." << endl; system("pause"); } // 17. Ler o valor de n e imprimir o resultado da série abaixo: // S = 1 + 1/2 + 1/3 + 1/4 + 1/5 + ... + 1/n #include <iostream> #include <string.h> using namespace std; int main() { float S = 0.0; int x, n; cout << "Digite o valor de n: "; cin >> n; for (x = 1; x <= n; x++) { S = S + 1.0/x; } cout << "S = " << S << endl; system("pause"); } // 18. Ler o valor de n e imprimir o resultado da série abaixo: // S = 1 - 1/2 + 1/3 - 1/4 + 1/5 - ... + 1/n #include <iostream> #include <string.h> using namespace std; int main() { float S; int x, n; S = 0.0; cout << "Digite o valor de n: "; cin >> n; for (x = 1; x <= n; x++) { if (x%2 == 0) { S = S - 1.0/x; } else { S = S + 1.0/x; } } cout << "S = " << S << endl; system("pause"); } // 19. o valor de e^x sabendo que uma fórmula para o cálculo é: // e^x = 1 + x + x^2/2! + x^3/3! + x^4/4! + ... #include <iostream> #include <math.h> using namespace std; int main() { float ex, fat; int k, x; int f; ex = 0; cout << "Digite o valor de x: "; cin >> x; for (k = 1; k <= 10; k++) { //Calculando o fatorial fat = 1.0; for (f = 2; f <=k; f++) { fat = fat * f; } ex = ex + pow(x, (float)k)/fat; } cout << "e^x = " << ex << endl; system("pause"); } � // 20. Imprimir as tabuadas de multiplicar de 1 a 10. #include <iostream> using namespace std; int main() { int x, y; for (x = 1; x <= 10; x++) { cout << "Tabuada de " << x << endl; cout << "----------------\n"; for (y = 1; y <= 10; y++) { cout << x << " x " << y << " = " << x*y << endl; } cout << endl; } system("pause"); } // 21. Imprimir uma tabela de um torneio de 10 equipes (todos jogam contra todos). Imprimir da forma: // 1 x 2 // 1 x 3 // ... #include <iostream> using namespace std; int main() { int x, y; for (x = 1; x <= 9; x++) { for (y = x + 1; y <= 10; y++) { cout << x << " x " << y << endl; } cout << endl; } system("pause"); } // 22. Ler uma palavra e imprimir se ela é ou não um palíndromo. #include <iostream> #include <string.h> using namespace std; int main() { char palavra[20]; int x, tam; int pali; pali = 1; //Essa variavel será uma flag (indicará um estado falso ou vedadeiro). //Em C++ poderiamos usar o tipo de dados bool com true ou false. cout << "Digite a palavra (sem espacos): "; cin >> palavra; tam = strlen(palavra); for (x = 0; x <= tam/2; x++) { if (palavra[x] != palavra[tam - x - 1]) { pali = 0; } } if (pali) { cout << "Eh um palindromo!" << endl; } else { cout << "Nao eh um palindromo!" << endl; } system("pause"); } � // 23. Ler 10 palavras e imprimir se elas são ou não palíndromos. #include <iostream> #include <string.h> using namespace std; int main() { char palavra[20]; int k, x, tam; int pali; for (k = 1; k <=10; k++) { cout << "Digite a palavra (sem espacos): "; cin >> palavra; tam = strlen(palavra); pali = 1; for (x = 0; x <= tam/2; x++) { if (palavra[x] != palavra[tam - x - 1]) { pali = 0; } } if (pali) { cout << "Eh um palindromo!" << endl; } else { cout << "Nao eh um palindromo!" << endl; } } system("pause"); } // 24. Ler uma palavra e imprimir uma mensagem se a palavra tiver letras repetidas. #include <iostream> #include <string.h> using namespace std; int main() { char palavra[20]; int x, y, tam, rep; cout << "Digite a palavra (sem espacos): "; cin >> palavra; tam = strlen(palavra); rep = 0; for (x = 0; x < tam - 1; x++) { for (y = x + 1; y < tam; y++) { if (palavra[x] == palavra[y]) { rep = 1; } } } if (rep == 1) { cout << "A palavra possui letras repetidas." << endl; } else { cout << "A palavra nao possui letras repetidas." << endl; } system("pause"); } � // 25. Uma escola tem 5 turmas e cada turma tem n alunos. Crie um algoritmo que imprima, // por turma, o total de alunos com média superior a 7.0. Ao final imprima a média geral da escola. #include <iostream> #include <string.h> using namespace std; int main() { int t, x, n, quant; float media, soma; cout << "Digite o numero de alunos por turma: "; cin >> n; soma = 0.0; for (t = 1; t <= 5; t++) { quant = 0; cout << "Turma " << t << ":\n"; for (x = 1; x <= n; x++) { cout << "Digite a media do aluno: "; cin >> media; if (media > 7.0) { quant++; } soma = soma + media; } cout << "Total de alunos com media acima de 7.0: " << quant << "\n\n"; } cout << "Media da escola: " << soma/(5*n) << endl; system("pause"); } // 26. Desafio. Fazer um jogo ao estilo "Forca", onde um usuário escolhe uma palavra secreta e outro tenta acertar a palavra "chutando" letras a cada tentativa. Em cada tentativa verificar se o usuário acertou a palavra ou o número de tentativas foi excedido. Em cada tentativa dar a chance ao usuário de acertar a palavra completa. #include <iostream> #include <string.h> using namespace std; int main() { char secreta[50]; char impressao[50]; char teste[50]; char letra; int x, tam, achou, maxtent; int tent = 0; int enforcado = 1; cout << "Digite a palavra secreta (sem espacos): "; cin >> secreta; cout << "Digite o numero maximo de tentativas: "; cin >> maxtent; tam = strlen(secreta); //Preenche a impressao com tracos for (x = 0; x < tam; x++) { impressao[x] = '-'; } impressao[x] = '\0'; //finalizar a string system("cls"); //Limpa a tela cout << "Palavra: " << impressao << " (" << tam << " letras, maximo de " << maxtent << " tentativas)\n\n"; do { cout << "Digite uma letra: "; cin >> letra; achou = 0; for (x = 0; x < tam; x++) { if (letra == secreta[x]) { achou = 1; impressao[x] = letra; } } if (achou == 0) tent++; cout << "Palavra: " << impressao << "\n\n"; cout << "Qual a palavra secreta? "; cin >> teste; if (strcmp(teste, secreta)==0) { cout << "Parabens, voce acertou!" << endl; enforcado = 0; break; } cout << "\nRestam " << maxtent - tent << " tentativas." << endl; } while (tent < maxtent); if (enforcado) { cout << "Voce foi enforcado!" << endl; cout << "A palavra secreta era: " << secreta << endl; } system("pause"); }
Compartilhar