Enviado em 23/08/2012 - 11:58h
#include <iostream>
#include <fstream>
#include <locale>
#include <cstdlib>
#include <sstream>
using namespace std;
int main ()
{
setlocale(LC_ALL,"portuguese");
string arquivo;
int i=0;
bool aux=false;
char opcao;
cout<<"1- Salvar um jogo"
<<"\n2- Ler um jogo\n";
cin>>opcao;
if (opcao=='1')
{
cout<<"Nome do jogo: ";
cin>>arquivo;
ofstream fout(arquivo.c_str());
ostringstream jogos[6];
int jogo[6];
for (i=0; i<6; i++)
{
cout<<i+1<<"º número: ";
cin>>jogo[i];
jogos[i]<<jogo[i]<<"\t";
if (jogo[i]>60||jogo[i]<1)
{
cout<<"Digite outro número\a!\n"; --i;
}
if (i==5)
{
int temp=jogo[0];
for (int j=1 ; j<6; j++)
{
{
if( jogo[j] == temp ) aux=true;
else temp=jogo[j];
}
}
}
if (aux == true)
{
cout<<"\n\tVocê digitou números repetidos!\n\t Preste mais atenção!\n\a";
delete[] jogo, jogos;
i=-1;
aux=false;
}
if (i==5 && aux==false)
{
for (int k=0; k<6; k++)
{
for (int j=0; j<jogos[k].str().length(); j++)
{
aux=jogos[k].str().at(j);
fout.put(aux);
}
}
}
}
}
return 0;
}
/* Uma loja de artesanato possui apenas 1 vendedor e comercializa 10 tipos de objetos.
O vendedor recebe, mensalmente, salário de R$ 400,00, acrescido de 5% do valor total de suas vendas.
O valor unitário dos objetos deve ser informado e armazenado em um vetor;
a quantidade vendida de cada peça deve ficar em outro vetor, mas na mesma posição.
Crie um programa que receba os preços e as quantidades vendidas, armazenando-as em seus respectivos vetores
(ambos com tamanho dez). Depois determine e mostre: um relatório contendo quantidade vendida, valor unitário
e valor total de cada objeto.
*/
#include <iostream>
#include <locale>
#include <cstdlib>
#include <fstream>
#include <sstream>
#include <string>
using namespace std;
int main ()
{
setlocale(LC_ALL,"portuguese"); int opcao;
cout<<"1- Gerar novo relatório\n2- Ler relatório\nOpção: ";
cin>>opcao;
char aux;
system("cls || clear");
if (opcao==1)
{
ofstream fout("relatório.txt"); //cria o arquivo
double vun[11], qtdv[11], salario=0;
ostringstream s[12];
for (int i=1; i<11; i++)
{
cout<<"Digite o preço do produto "<<i<<": ";
cin>>vun[i];
cout<<"Digite a quantidade de unidades vendidas do produto "<<i<<": ";
cin>>qtdv[i];
salario=vun[i]*qtdv[i]+salario;
}
system ("cls || clear");
s[0]<<"\nProduto\t Qtd vendida\t V. Unitário\t V. total"; //salva a saída para a string de saída s
cout<<s[0].str(); //.str() pode ser usada pra obter uma cópia da
//string que está sendo manipulada pelo atual fluxo (stream)
for (int i=1; i<11; i++)
{
s[i]<<"\n "<<i<<"\t\t"<<qtdv[i]<<"\t\t\t"<<vun[i]<<"\t\t\t"<<vun[i]*qtdv[i];
cout<<s[i].str();
}
s[11]<<"\nSalário: R$"<<400+salario*0.5<<"\n";
cout<<s[11].str();
for (int j=0; j<12; j++)
{
for (int i=0; i<s[j].str().length(); i++) //lê o tamanho das strings para ler caractere
{ //por caracter e copiar para o arquivo
aux=s[j].str().at(i);
fout.put(aux);
}
}
} else if (opcao==2) {
string aux1;
ifstream fin("relatório.txt"); //procura pelo arquivo relatório.txt
if (!fin) {cout<<"Arquivo não encontrado!\a\n"; system("pause"); return 0;}
while ( getline(fin,aux1) ) cout<<aux1<<endl;
} else cout<<"Opções 1 e 2, somente!\a\n";
system ("pause");
return 0;
}