UNIVERSIDADE FEDERAL DE OURO PRETO-UFOP

Di sci pl i na: Programação de Computadores II
Prof. Geraldo Pereira de Souza
Prof. José Maria Neves
Prof. Vicente Amorim

Rotei ro Práti co

Revisão de C/C++

INSTRUÇÕES:

Parte I: Apresentação do ambiente integrado de desenvolvimento de programas
CodeBlocks
Analise o programa abaixo.
Digite-o, grave-o em um arquivo. Compile e execute.

// Arquivo: equacao.cpp
#include <iostream>
#include <cmath>
using namespace std;

int main()
{
float a,b,c,x1,x2,d;
cout << "Digite 3 numeros (coeficientes da equacao)";
cin >> a;
cin >> b;
cin >> c;
d = b*b - 4*a*c;
if (d>=0) {
x1 = (-b + sqrt(d))/(2*a);
x2 = (-b - sqrt(d))/(2*a);
cout << "x1= " << x1 << " e x2= " << x2;
}
else cout << "Nao existem raizes reais";
}

Parte II - Criação de projetos
Analise o programa abaixo.
Crie um projeto para esse programa.
Compile e execute.

// Arquivo: busca.cpp
#include <iostream>
using namespace std;

int busca(int x[], int n, int k)
{
for (int i=0; i<n; i++)
if (x[i]==k)
return i;
return -1;
}

int main()
{
int i,n,pos,k;
int x[100];
cout << "Digite a quantidade de numeros: ";
cin >> n;
cout << "Digite " << n << " numeros inteiros: ";
for (i=0; i<n; i++)
cin >> x[i];
cout << "Digite o numero que quer procurar: ";
cin >> k;
pos = busca(x, n, k);
cout << "Posicao: " << pos << endl;
return 0;
}

Parte III – Programação
Faça todos programas abaixo usando a linguagem C++ no ambiente
CodeBlocks.

Exercício 1:

Em dupla, crie um programa em C++ chamado MediaNumerica. O programa deve solicitar
números inteiros positivos para o usuário. Caso o usuário digite -1 o programa termina e
imprime a média de todos os números digitados (exceto esse último). Para qualquer outro
valor que seja o inteiro positivo, o programa guarda o valor para ser calculado a média e
solicita o próximo número. Assim sucessivamente.

Dicas: 1) Primeiramente discuta a solução com seu parceiro;
2) Faça o programa em C++

Exercício 2:

Em dupla, crie um programa chamado NumerosParesIntervalo. O programa deve solicitar 2
números inteiros positivos para o usuário sendo que o primeiro número informado deve ser
menor que o segundo. Logo em seguida o programa deve imprimir todos os números ímpares
entre os números informados.

Obs: Na situação do usuário informar o primeiro número maior que o segundo, deve ser
exibida uma mensagem de erro e o programa deve ser encerrado.

Dicas: 1) Primeiramente discuta a solução com seu parceiro;
2) Faça o programa em C++

Exercício 3:

Em dupla, crie um programa chamado MaiorMenor. O programa deve solicitar números
inteiros positivos para o usuário. Caso o usuário digite -1 o programa termina e imprime o
menor e o maior número digitado.

Dicas: 1) Primeiramente discuta a solução com seu parceiro;
2) Faça o programa em C++

Exercício 4:

Em dupla, crie um programa chamado FooBarZ. O programa faz um loop de 1 a 50 e imprime
cada valor do contador em uma linha. Todos os múltiplos de 3 devem ser sequidos da String
"foo", os múltiplos de 5 sequidos de "bar" e os de 7 seguidos de "baz".

Por exemplo:

1
2
3 foo
4
5 bar
6 foo
7 baz
8
9 foo
10 bar
11
12 foo
13
14 baz
15 foo bar
16

etc...

Dica -- O operador % retorna o resto da divisão. Por ex: 7%2 = 1 e 6%2=0.

Exercício 5: Para a sequência abaixo, faça um programa que pede para usuário digitar o
número N. Logo em seguida o programa deve imprimir a somatória de todos os termos da
série:

L = 1 + 2 + 3 + 4 + ... + N . (Obs: N deverá ser lido)
4 9 16 N
2

Para o problema faça:

a) Programa em C++ usando a construção de função;

Exercício 6:
Faça um programa em C++ que solicite ao usuário um número n e um número real x e imprima a
somatória dos n primeiros termos da série abaixo;
!"#$% '"
!
#(% )"
$
#*% +"
'
#,% -."
(
#--% ///