You are on page 1of 11

/*

Fazer um programa para ler 30 valores inteiros e positivos e usando


funes:
1) Grava-los num arquivo externo.
2) Ler estes valores gravados no arquivo externo e criar dois vetores
contendo o
primeiro os valores pares e o segundo os valores impares;
3) Imprimir os dois vetores;
4) Imprimir o maior valor do primeiro vetor e a media do segundo;
5) Imprimir o fatorial do maior valor do primeiro vetor.
Obs: fazer opo de escolha ou no de gravao do arquivo externo na
main.
*/
#include
#include
#include
#include

<iostream>
<cstdlib>
<clocale>
<fstream>

using namespace std;


int vpar[30], vimpar[30], par, impar;
void grava_arquivo (char nome_arquivo [200])
{
int i, n;
ofstream saida (nome_arquivo, ios::app);
cout << "Informe 30 nmeros para o arquivo:\n\n";
for (i=0; i<30; i++) {
cout << "Informe o " << i+1 << " nmero: ";
cin >> n;
saida << n << endl;
}
}
void ler_arquivo (char nome_arquivo [200])
{
int i, n;
ifstream entrada (nome_arquivo);
par=0;
impar=0;
for (i=0; i<30; i++) {
entrada >> n;
if (n % 2 == 0) {
vpar[par] = n;
par++;
}
else{
vimpar[impar] = n;
impar++;
}
}
}
void imprime_vetor ()

{
int i;
cout << endl;
cout << "Vetor Par:\n";
for (i=0; i<par; i++){
cout << vpar[i] << " ";
}
cout << endl;
cout << endl;
cout << "Vetor Impar:\n";
for (i=0; i<impar; i++) {
cout << vimpar[i] << " ";
}
}
int maior ()
{
int i, maior_par=vpar[0];
for (i=0; i<par; i++){
if (vpar[i]>maior_par)
maior_par = vpar[i];
}
cout << endl;
cout << endl;
cout <<"Maior nmero Par: " << maior_par <<endl;
return maior_par;
}
void media ()
{
int i, soma=0, media=0;
for (i=0; i<impar; i++){
soma = soma + vimpar[i];
media = soma/impar;
}
cout << endl;
cout <<"Mdia dos nmeros Impares: " << media <<endl;
}
void fatorial (int x)
{
long long int i, fat=x;
for (i=1; i<x; i++){
fat = fat * i;
}
cout << endl;
cout << "O fatorial do nmero " << x << ": " << fat;
}
int main()
{
setlocale (LC_ALL, "");
string op;
char nome_arquivo [200];
cout << "Deseja gravar o arquivos (s/n)? " << endl;
cin >> op;

if ((op == "s") || (op == "S")) {


cout << endl;
cout << "Escreva o nome do arquivo: \n";
cin >> nome_arquivo;
grava_arquivo(nome_arquivo);
}
else {
cout << "Informe o nome do arquivo: \n";
cin >> nome_arquivo;
}
ler_arquivo(nome_arquivo);
imprime_vetor();
maior();
media();
fatorial(maior());
cout << endl;
cout << endl;
system ("pause");
return 0;
}
/*
Fazer um programa para ler 10 valores reais e usando funes:
1) Grava-los num arquivo externo.
2) Ler estes valores gravados no arquivo externo e criar dois vetores
contendo o
primeiro os nmeros cujos valores estejam no intervalo de 0 a 15
(inclusive) e
o segundo os nmeros pares encontrados nos valores entre 21 e 37
(inclusive);
3) Calcular a soma de cada um dos vetores;
4) Imprimir a media dos dois vetores;
5) Imprimir o fatorial do maior valor do primeiro vetor.
Obs: fazer opo de escolha ou no de gravao do arquivo externo na
main.
*/
#include
#include
#include
#include

<iostream>
<cstdlib>
<clocale>
<fstream>

using namespace std;


int v1[10], vpar[10], par, cont;
void grava_arquivo(char nome_arquivo [200])
{
int i, n;
ofstream saida (nome_arquivo, ios::app);
cout << endl;

cout << "Informe 10 nmeros para o arquivo:\n\n";


for (i=0; i<10; i++) {
cout << "Informe o " << i+1 << " nmero: ";
cin >> n;
saida << n << endl;
}
cout << endl;
}
void ler_arquivo (char nome_arquivo [200])
{
int i, n;
ifstream entrada (nome_arquivo);
cont=0;
par=0;
for (i=0; i<10; i++) {
entrada >> n;
if ((n >=0) && (n<=15)){
v1[cont] = n;
cont++;
}
else {
if ((n >= 21) && (n <= 37)){
if (n%2 == 0) {
vpar[par] = n;
par++;
}
}
}
}
cout << "Vetor 1: ";
for (i=0; i<cont; i++) {
cout << v1[i] << " ";
}
cout << endl;
cout << endl;
cout << "Vetor 2: ";
for (i=0; i<par; i++) {
cout << vpar[i] << " ";
}
cout << endl;
cout << endl;
}
void soma ()
{
int i, soma1=0, soma2=0;
for (i=0; i<cont; i++) {
soma1 = soma1 + v1[i];
}

for (i=0; i<par; i++) {


soma2 = soma2 + vpar[i];
}
cout
cout
cout
cout

<<
<<
<<
<<

"Soma dos nmeros do primeiro vetor: " << soma1 << endl;
endl;
"Soma dos nmeros do segundo vetor: " << soma2 << endl;
endl;

}
void media ()
{
int i;
float soma1=0, soma2=0, media1=0, media2=0;
for (i=0; i<cont; i++) {
soma1 = soma1 + v1[i];
}
for (i=0; i<par; i++) {
soma2 = soma2 + vpar[i];
}
if (cont != 0)
media1 = soma1 / cont;
if (par != 0)
media2 = soma2 / par;
cout
cout
cout
cout

<<
<<
<<
<<

"Mdia do primeiro vetor: " << media1 << endl;


endl;
"Mdia do segundo vetor: " << media2 << endl;
endl;

}
void fatorial ()
{
long long int i, maior=v1[0], fat;
for (i=0; i<cont; i++){
if (v1[i]>maior){
maior = v1[i];
}
}
for (i=1; i<maior; i++) {
fat = fat * i;
}
cout << "Fatorial do maior nmero contido no vetor 1 " << "( " << maior
<< " ): " << fat << endl;
}

int main()
{
setlocale (LC_ALL, "");
string op;
char nome_arquivo [200];
cout << "Deseja gravar arquivo? ";
cin >> op;
cout << endl;
if ((op == "s") || (op == "S")) {
cout << "Informe o nome do arquivo: ";
cin >> nome_arquivo;
grava_arquivo(nome_arquivo);
}
else {
cout << "Informe o nome do arquivo: ";
cin >> nome_arquivo;
cout << endl;
}
ler_arquivo(nome_arquivo);
soma();
media();
fatorial();
cout << endl;
system ("pause");
return 0;
}
/*
Fazer um programa para ler 50 valores reais de um vetor usando funes:
1)
2)
3)
4)
5)

Grava-los num arquivo externo.


Imprimir o vetor gravado no arquivo externo;
Imprimir os valores dos ndices impares do vetor;
Imprimir a media dos valores dos ndices pares do vetor;
Imprimir o elemento do primeiro ndice e o elemento do ltimo ndice.

Obs: fazer opo de escolha ou no de gravao do arquivo externo na


main.
*/
#include
#include
#include
#include

<iostream>
<cstdlib>
<clocale>
<fstream>

using namespace std;


int vetor[50];

void grava_arquivo (char nome_arquivo [200])


{
int i, n;
cout << "Informe 50 nmeros para o arquivo:\n\n";
ofstream saida (nome_arquivo);
for (i=0; i<50; i++){
cout << "Informe o " << i+1 << " nmero: ";
cin >> n;
saida << n << endl;
}
}
void cria_vetor (char nome_arquivo[])
{
int i, n;
ifstream entrada (nome_arquivo);
for (i=0; i<50; i++) {
entrada >> n;
vetor[i] = n;
}
}
void imprimi_vetor ()
{
int i, n;
cout << "Vetor: ";
for (i=0; i<50; i++){
cout << vetor[i] << " ";
}
}
void imprime_vimpar ()
{
int i;
cout << "Nmeros dos indices impares do vetor: ";
for (i=1; i<50; i+=2) {
cout << vetor[i] << " ";
}
}
void media_par ()
{
int i, cont=0;
float soma=0, media=0;
for (i=0; i<50; i+=2) {
soma = soma + vetor[i];
cont++;
}
if (cont != 0)

media = soma / cont;


cout << "Mdia dos nmeros contidos nos indices pares do vetor: " <<
media;
}
void p_u_indice ()
{
cout << "Primeiro nmero do vetor: " << vetor[0] << endl;
cout << endl;
cout << "ltimo nmero do vetor: " << vetor[49] << endl;
}
int main()
{
setlocale (LC_ALL, "");
string op;
char nome_arquivo [200];
cout << "Deseja gravar arquivo? ";
cin >> op;
cout << endl;
if ((op == "s") || (op == "S")) {
cout << "Informe o nome do arquivo: ";
cin >> nome_arquivo;
cout << endl;
grava_arquivo(nome_arquivo);
}
else {
cout << "Informe o nome do arquivo: ";
cin >> nome_arquivo;
}
cria_vetor(nome_arquivo);
cout << endl;
imprimi_vetor();
cout << endl;
cout << endl;
imprime_vimpar();
cout << endl;
cout << endl;
media_par();
cout << endl;
cout << endl;
p_u_indice();
cout << endl;
system ("pause");
return 0;
}

/*
Fazer um programa para ler 15 valores inteiros e positivos e usando
funes:
1) Grava-los num arquivo externo.
2) Ler estes valores gravados no arquivo externo e criar um vetor
contendo os
valores pares menores que 10 e os impares maiores que 20;
3) Imprimir o vetor;
4) Imprimir o menor valor do vetor gravado;
5) Imprimir o fatorial do primeiro elemento do vetor.
Obs: fazer opo de escolha ou no de gravao do arquivo externo na
main.
*/
#include
#include
#include
#include

<iostream>
<cstdlib>
<clocale>
<fstream>

using namespace std;


int vetor[15], cont=0, i, n;
void grava_arquivo (char nome_arquivo [])
{
cout << endl;
cout << "Informe 15 nmeros para o arquivo:\n\n";
ofstream saida (nome_arquivo);
for (i=0; i<15; i++) {
cout << "Inform o" << i+1 << " nmero: ";
cin >> n;
saida << n << endl;
}
}
void ler_arquivo (char nome_arquivo [])
{
ifstream entrada (nome_arquivo);
for (i=0; i<15; i++) {
entrada >> n;
if ((n < 10) && (n%2 == 0)) {
vetor[cont] = n;
cont++;
}
else {
if ((n > 20) && (n%2 != 0)) {
vetor[cont] = n;
cont++;
}
}
}

}
void imprime_vetor ()
{
cout << endl;
cout << "Vetor: ";
for (i=0; i<cont; i++) {
cout << vetor[i] << " ";
}
cout << endl;
}
void menor_valor ()
{
int menor = vetor[0];
for (i=0; i<cont; i++) {
if (vetor[i] < menor) {
menor = vetor[i];
}
}
cout << endl;
cout << "Menor valor gravado no vetor: " << menor << endl;
}
void fatorial_primeiro()
{
int i,fat=1;
for(i=1;i<=v[0]; i++){
fat=*i
}
cout<<"fatorial="<<fat<<endl;
int main()
{
setlocale (LC_ALL, "");
string op;
char nome_arquivo [200];
cout << "Deseja gravar o arquivo: ";
cin >> op;
if ((op == "s") || (op == "S")) {
cout << endl;
cout << "Informe o nome do arquivo: ";
cin >> nome_arquivo;
grava_arquivo(nome_arquivo);
}
else {
cout << endl;
cout << "Informe o nome do arquivo: ";
cin >> nome_arquivo;

}
ler_arquivo(nome_arquivo);
imprime_vetor();
menor_valor();
fatorial();

cout << endl;


system ("pause");
return 0;
}

You might also like