Jump to content


Andre_seduc

Member Since 26/06/2007
Offline Last Active 06/03/2008, 12:52
-----

Topics I've Started

Ssl?

08/11/2007, 14:19

como configurar o apache para acessar uma pagina https://meusiteseguro.com
isso tudo localmente

Como Fazer Esse Slide Show?

01/11/2007, 12:44

alguem saberia fazer igual ou parecido com este slide show do site www.CIEE.org.br
alguem poderia deixar o link para poder pegar o arquivo .fla

desde já gradeço

Urgente....duvida Em C

20/09/2007, 13:28

bem
tenho que desenvolver um programa que a partir da leitura de dois arquivos(pedidos.txt, supermercado.txt), seja gerado um arquivo chamado notasfiscais.txt.

arquivo supermercado.txt contem em cada linha o codigo e o preco de um determinado produto.
ex:

1 1.20
2 2.30
3 4.50


arquivo pedidos.txt na 1ªlinha o numero de clientes que fizeram o pedido,na proxima linha tem o numero de pedidos, e nome do cliente,e nas seguintes tem o codigo e quantidade
ex:
2
2 andre
3 4
1 2
2 alex
2 2
3 1

agora tenho que ler esses dois arquivos e gerar um terceiro nesse padrão
cliente:
Cliente: andre
Codigo Qtd Preco Unitario Preco Total
3 4 2.17 8.68
5 5 0.78 3.90
Total Geral: 12.58

Cliente: alex
Codigo Qtd Preco Unitario Preco Total
2 1 4.41 4.41
3 2 2.17 4.34
Total Geral: 8.75
---------------------------------------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//-----------começo-------------------
int main(){

int i = 0, j = 0, k = 0, l = 0;
int cont = 0;

char *p, *d;

int ncliente = 0;
char count[100];

//supermercado
int cod[50];
float preco[50];
char linha[100];

//pedidos
char cliente[100];
char conta[100];
int pedido[50];

//-----------arquivos---------------------
FILE *sp;
FILE *pd;
FILE *nf;

sp = fopen("supermercado.txt", "r");
pd = fopen("pedidos.txt", "r");
nf = fopen("notas.txt", "w");

//-----tratamento de erros------------------
if((!sp) || (!nf)) {
printf("erro");
exit(1);
}

while( !feof(sp) ) {
fgets(linha,12,sp);
fputs("Preco:",nf);
p = strstr(linha," ");
preco[i] = atof(p);
fputs(p, nf);
fputs("\n",nf);
i++;
}

rewind(sp);

while( !feof(sp) ) {
fputs("Codigo: ", nf);
fgets(linha,2, sp);
cod[k] = atoi(linha);
fputs(linha, nf);
fputs("\n", nf);
fgets(linha,10, sp);
strcat(linha,"\n");
k++;
}



printf("Codigo\tPreco\n");

for(j = 0; j < i; j++){
printf("%d \t %2.2f \n",cod[j],preco[j]);
}


fclose(sp);
fclose(nf);

printf("\n\tArquivo da Nota Fiscal foi criado!\n");

//------------pausa tela---------------------------
system("pause");

//---------------fim-------------------------------
return 0;
}
----------------------------------------------------------------------------------------
a pergunta é, como devo ler, linha por linha,veja que no primeiro arquivo(supermercado.txt) é facil por motivo pois tem um padrão, mas o pedidos.txt é complicado,como saber que linha estamos lendo. fica complicado.


com isso eu consigo ler o preco,pois a função me retorna tudo que estiver depois do espaço.
while( !feof(sp) ) {
fgets(linha,12,sp);//lendo 12 caracteres
fputs("Preco:",nf);
p = strstr(linha," ");
preco[i] = atof(p);
fputs(p, nf);
fputs("\n",nf);
i++;
}
retorno: 1.20
----------------------------------------------------------------------------------------------------
mas no arquivo pedidos.txt não há um padrão.
2
2 andre
como fazer para ler só determinada linha?
como saber em que linha estou lendo?
como separar adequadamente em jogar para um vetor o resultado?



me ajudem,com algum exemplo ou algo assim...


desde já agradeço..........

IPB Skin By Virteq