Ir ao conteúdo

Ponteiro em c


anapr31

Posts recomendados

Postado

ola tenho que fazer um programa que gera um arquivo tipo inteiro e calcula o produto (algoritmo soma-produto)de forma recursiva o probema é

valor valor produto

6 17 102//aqui dA CERTO

9 81 729// AQUI TA DANDO 831 OU SEJA 729+102

lendo via teclado da certinho mas o exerc exige que venha de um arquivo;

int main()
{
FILE*arq;
char buf[100];
int valorA, valorB,aux=0,resp=0,n,m;
arq=fopen("arquivo.txt","r");

while(!feof(arq))
{
if(fgets(buf,sizeof(buf),arq))
{

valorA=atoi(strtok(buf,", "));
valorB=atoi(strtok(NULL," ,"));


}



retorno(valorA,valorB,resp);

printf("\nvalor1 %d valor 2 %d resp %d\ n",valorA,valorB,resp);


}


fclose(arq);
system("pause");
return 0;
}

Postado

Se funciona para a leitura pelo teclado como você diz, acredito que seu problema é na leitura do arquivo. E digo mais, se para o primeiro funciona, mas para o segundo não é algo no buffer que você está usando.

Sempre limpe o buffer antes de usá-lo (até mesmo antes de usá-lo pela primeira vez).

Se o problema continuar tente colocar uns prints de debug para ver o que você está lendo do arquivo e o que seu programa está mandando para a função recursiva.

"Para programar recursivamente é preciso ter fé"

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!