Buscar

Exercício resolvido com explicação

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Exerc�cio resolvido com explica��o (completo).docx
Exercício:
Leia um conjunto de 30 números inteiros e calcule:
quantos sao os pares. 
quantos sao os impares. 
quais pares estão abaixo de media dos pares. 
quais impares estao abaixo da media dos impares.
O programa será assim:
#include<iostream>
#include<conio.h>
#include<cmath>
#include<stdio.h>
using namespace std;
int main()
{
	int a, MA;
	cout << "digite o menos valor do intervalo (de 0 a 30): ";
	cin >> a;
	cout << endl << endl;
	
	cout << "Temos " << (30/2) << " pares e " << (30/2) << " impares." << endl << endl;
	
	MA=(a+(30+a))/2;
	cout << "Media do intervalo dado para numeros pares = " << MA << endl << endl;
	
	if (a%2 == 0)
	{	
		cout << "Os numeros pares sao:" << endl;
		for (int x=a; x<=a+30; x=x+2)
		{
			cout << x << endl;
		}
		cout << endl << endl;
		
		cout << "Os numeros impares sao:" << endl;
		for (int y=a+1; y<=a+30; y=y+2)
		{
			cout << y << endl;
		}
	
		cout << endl << endl;
		
		cout << "Os numeros pares abaixo da media sao:" << endl;
		for (int z=a; z<MA; z=z+2)
		{
			cout << z << endl;
		}
	
		cout << endl << endl;	
		cout << "Os numeros impares abaixo da media sao:" << endl;
		for (int w=a+1; w<MA; w=w+2)
		{
			cout << w << endl;
		}
	}
	
	else
	{	
		cout << "Os numeros pares sao:" << endl;
		for (int x=a+1; x<=a+30; x=x+2)
		{
		cout << x << endl;
		}
		cout << endl << endl;
		cout << "Os numeros impares sao:" << endl;
		for (int y=a; y<=a+30; y=y+2)
		{
		cout << y << endl;
		}
		cout << endl << endl;
		cout << "Os numeros pares abaixo da media sao:" << endl;
		for (int z=a+1; z<MA; z=z+2)
		{
		cout << z << endl;
		}
		cout << endl << endl;	
		cout << "Os numeros impares abaixo da media sao:" << endl;
		for (int w=a; w<MA; w=w+2)
		{
		cout << w << endl;
		}
	}
	
getch();
}
Explicação:
Usarei a cor vermelha para explicar o raciocínio, e a azul para mostrar como deverá ficar no programa.
	Bom... antes de tudo, as bibliotecas: decore <iostream>, <conio.h>, <cmath> e <stdio.h>... elas serão úteis para seu semestre inteiro de computação... para adicionar, basta colocar #include<iostream>, e assim com as demais, cada uma em uma linha (não precisa estar na ordem)...
	Depois das bibliotecas, sempre vem 
using namespace std; 
int main()
{
}
	Note que depois do std temos um ponto e vírgula e depois do (), não... isso porque iremos abrir um programa dentro da função int main... por isso que na próxima linha, abrimos as chaves {}... iremos trabalhar dentro dessa chave.
	Como foi pedido números inteiros, começaremos a chamar os "porta-dados" por int.
Aí analisamos o exercício... temos que colocar um número que seria o limite inferior desse intervalo, que chamaremos de a, e uma media para contar os números abaixo dela, que chamaremos de MA;
int a, MA;
	Primeiramente... a parte da quantidade de numeros pares e ímpares, eh apenas 30/2=15 para ambos... independente do intervalo que você colocar...
	Assim: 
cout << “tem-se: números pares = números impares = ” << (30/2);
	
Abra o cout e peça para o usuário digitar o menor valor do intervalo que ele queira...
e com o cin, na linha seguinte, coloque para armazenar em "a". se você quiser, você já pode calcular a média MA=(a+(30+a))/2 e mostrar pro usuário com a ajuda do cout... (lembre-se em colocar tudo em função de a, porque não sabemos o valor que o usuário vai querer).
	Para que não confundamos números ímpares e pares no programa, e para que o professor fique orgulhoso de um trabalho bonitinho (haha), usaremos o programa if/else...
Esse programa é bem simples: teremos duas ou mais condições, e o programa só roda nesses casos. No exemplo dado, faremos o if para os números pares, e o else para os ímpares...
	Para isso, colocaremos o if, e entre parênteses a condição que você quiser, abrindo chaves em seguida.
if (a%2 == 0)
{
}
	(a%2 == 0) é uma condição para números pares...
	Dentro das chaves, fazer nosso programa rodar...
	Agora a parte trabalhosa... o programa for... ele serve para que você repita algo pelo tanto de vezes que você quiser... isso ajuda, pois se não existisse ele, provavelmente teríamos de calcular 30 numerinhos, um a um...
	A base para o for é: for(int x=n; x<=m; x=x+1), mas podemos alterá-lo, se quisermos... e é o que vamos fazer! Por que? Primeiramente, porque nossa caixa de armazenamento chama-se "a" (ao invés de n), segundo, porque temos que o limite superior dele é (a+30), no lugar do m, e terceiro, porque queremos apenas numeros pares (vamos fazer os pares primeiros...) então a aparencia do nosso programa ficará 
for(int x=a; x<=a+30; x=x+2)
	Abra chaves na linha seguinte e apenas coloque cout e o x, pois ele vai expor todos os numeros pares.
	O mesmo você fará para os ímpares... mas dessa vez, o programa for estará em função de y, ao invés de x (para não bugar o programa)... e só mudaremos o número inicial da contagem, que antes estava x=a, e agora estará x=a+1, pois são números ímpares... então teremos:
for (int y=a+1; y<=a+30; y=y+2)
	Como já foi calculada a média, e o professor quer os números abaixo dela, é muito simples... você vai copiar e colar seu programa for dos dois, e colocar colo limite superior o MA, que é nossa média...
Para calcular os números ímpares, utilize else (não precisa colocar condição), abra as chaves e copie tudo o que foi colocado no if, porém trocando, no programa for o limite inferior de a para a+1, e vice versa...
	Acabou o trabalho... agora, se quiser deixar ele mais bonitinho, indique no cout o que é cada coisa... tipo: a média entre esses numeros é= x...
	Para finalizar, utilize
getch();
antes de fechar as chaves do int main().
	Se quiser pular linha, é só colocar
	cout << endl;
Adicionando << endl por quantidade de linhas que vc queira pular. Ou coloque após uma caixa de texto ter fechado, assim:
	Cout << “média = ” << endl;
	Problemas desse exercício... ele só vale se vc colocar um número par em "a"... caso contrário, ele vai ler os impares como par e vice versa... para isso, temos o "if/else" que ajuda muito nessas horas... então colocarei também o programa em função if/else, no outro arquivo.
	Espero ter ajudado!
Exerc�cio resolvido com explica��o (simplificado).docx
Exercício:
Leia um conjunto de 30 números inteiros e calcule:
quantos sao os pares. 
quantos sao os impares. 
quais pares estão abaixo de media dos pares. 
quais impares estao abaixo da media dos impares.
#include<iostream>
#include<conio.h>
#include<cmath>
#include<stdio.h>
using namespace std;
int main()
{
	int a, MA;
	cout << "digite o menos valor do intervalo (de 0 a 30): ";
	cin >> a;
	cout << endl << endl;
	
	cout << "Temos " << (30/2) << " pares e " << (30/2) << " impares." << endl << endl;
	
	MA=(a+(30+a))/2;
	cout << "Media do intervalo dado para numeros pares = " << MA << endl << endl;
		
	cout << "Os numeros pares sao:" << endl;
	for (int x=a; x<=a+30; x=x+2)
	{
		cout << x << endl;
	}
	cout << endl << endl;
	
	cout << "Os numeros impares sao:" << endl;
	for (int y=a+1; y<=a+30; y=y+2)
	{
		cout << y << endl;
	}
	
	cout << endl << endl;
		
	cout << "Os numeros pares abaixo da media sao:" << endl;
	for (int z=a; z<MA; z=z+2)
	{
		cout << z << endl;
	}
	
	cout << endl << endl;	
	cout << "Os numeros impares abaixo da media sao:" << endl;
	for (int w=a+1; w<MA; w=w+2)
	{
		cout << w << endl;
	}
getch();
}
Usarei a cor vermelha para
explicar o raciocínio, e a azul para mostrar como deverá ficar no programa.
	Bom... antes de tudo, as bibliotecas: decore <iostream>, <conio.h>, <cmath> e <stdio.h>... elas serão úteis para seu semestre inteiro de computação... para adicionar, basta colocar #include<iostream>, e assim com as demais, cada uma em uma linha (não precisa estar na ordem)...
	Depois das bibliotecas, sempre vem 
using namespace std; 
int main()
{
}
	Note que depois do std temos um ponto e vírgula e depois do (), não... isso porque iremos abrir um programa dentro da função int main... por isso que na próxima linha, abrimos as chaves {}... iremos trabalhar dentro dessa chave.
	Como foi pedido números inteiros, começaremos a chamar os "porta-dados" por int.
Aí analisamos o exercício... temos que colocar um número que seria o limite inferior desse intervalo, que chamaremos de a, e uma media para contar os números abaixo dela, que chamaremos de MA;
int a, MA;
	Primeiramente... a parte da quantidade de numeros pares e ímpares, eh apenas 30/2=15 para ambos... independente do intervalo que você colocar...
	Assim: 
cout << “tem-se: números pares = números impares = ” << (30/2);
	
Abra o cout e peça para o usuário digitar o menor valor do intervalo que ele queira...
e com o cin, na linha seguinte, coloque para armazenar em "a". se você quiser, você já pode calcular a média MA=(a+(30+a))/2 e mostrar pro usuário com a ajuda do cout... (lembre-se em colocar tudo em função de a, porque não sabemos o valor que o usuário vai querer)
	Agora a parte trabalhosa... o programa for... ele serve para que você repita algo pelo tanto de vezes que você quiser... isso ajuda, pois se não existisse ele, provavelmente teríamos de calcular 30 numerinhos, um a um...
	A base para o for é: for(int x=n; x<=m; x=x+1), mas podemos alterá-lo, se quisermos... e é o que vamos fazer! Por que? Primeiramente, porque nossa caixa de armazenamento chama-se "a" (ao invés de n), segundo, porque temos que o limite superior dele é (a+30), no lugar do m, e terceiro, porque queremos apenas numeros pares (vamos fazer os pares primeiros...) então a aparencia do nosso programa ficará 
for(int x=a; x<=a+30; x=x+2)
	Abra chaves na linha seguinte e apenas coloque cout e o x, pois ele vai expor todos os numeros pares.
	O mesmo você fará para os ímpares... mas dessa vez, o programa for estará em função de y, ao invés de x (para não bugar o programa)... e só mudaremos o número inicial da contagem, que antes estava x=a, e agora estará x=a+1, pois são números ímpares... então teremos:
for (int y=a+1; y<=a+30; y=y+2)
	Como já foi calculada a média, e o professor quer os números abaixo dela, é muito simples... você vai copiar e colar seu programa for dos dois, e colocar colo limite superior o MA, que é nossa média...
	Acabou o trabalho... agora, se quiser deixar ele mais bonitinho, indique no cout o que é cada coisa... tipo: a média entre esses numeros é= x...
	Para finalizar, utilize
getch();
antes de fechar as chaves do int main().
	Se quiser pular linha, é só colocar
	cout << endl;
Adicionando << endl por quantidade de linhas que vc queira pular. Ou coloque após uma caixa de texto ter fechado, assim:
	Cout << “média = ” << endl;
	Problemas desse exercício... ele só vale se vc colocar um número par em "a"... caso contrário, ele vai ler os impares como par e vice versa... para isso, temos o "if/else" que ajuda muito nessas horas... então colocarei também o programa em função if/else, no outro arquivo.
	Espero ter ajudado!

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Continue navegando