Programação estruturada II
TECNOLOGIA EM ANÁLISE DE DESENVOLVIMENTO DE SISTEMAS
Programação Estruturada II
TUTOR A DISTÂNCIA JOÃO ALEXANDRE BALDOVINOTTI
Rodolfo Martins – RA 7302541538
Marlon Santos – RA 7303535386
Marcio Reina Pino – RA 1299749723
Washington da Silva Almeida – RA 8139754623
Valdir Maria Conteiras Júnior - RA 7925681659
Santo André/SP 2014
INTRODUÇÃO
Este documento visa apresentar detalhadamente como o código faz para contar linhas comuns e linhas comentadas de um arquivo .txt , que é o desafio proposto pela a ATPS.
CODIGO FONTE
#include #include int Conta()
{
FILE * p; //variável q armazenara o arquivo txt int c1, c2; //variáveis q armazenarão os caracteres int nL = 0,nC = 0; //variaveis para os contadores
p= fopen ("ArquivoTexto.txt","r"); //abri o arquivo .txt if (p !=NULL) // verifica se não é o final do arquivo
c1 = fgetc(p);//atribui um caractere do arquivo txt a c1 while (c1 != EOF)//enquanto c1 ñ for nulo faça
{
if(c1 == '\n'){ nL++; } // se c1 for igual a enter(pula linha) nL incrementa 1
if(c1 == '/')//se c1 for igual a "/" faça
{
c2 = fgetc(p); //atribui o próximo do arquivo txt a c2 if(c2 == '*') //se c2 for igual a "/" faça
{
do{
do{
c1 = fgetc(p);//atribui o próximo caracter do aquivo txt a c1
if(c1 == '\n' && c1 != c2)//se c1 for igual a "\n"(enter ou pula linha) faça
{
nC++;//incrementa 1 em nC nL++;//incrementa 1 em nL
}
c2 = c1;//passa caracter de c1 para c2
}
while(c1 != '*');//enquanto c1 ñ for "*" faça
c1 = fgetc(p);//atribui o próximo do arquivo txt a c1
}
while(c1 != '/');//enquanto c1 ñ for "/" faça
}
if(c1 == '/' && c2 == '/'){ nC++; }//se c1 e c2 forem igual a "/" incremente 1 em nC
}
c2 = fgetc(p);//atribui o próximo caractere do aquivo txt a c2 if(c2 == '\n' && c1 == '\n')
{nL++;}//se c1 e c2 forem igual a "\n"(enter ou pula linha) incremente 1 em nC