PkD
Membros-
Total de itens
11 -
Registro em
-
Última visita
Sobre PkD
PkD's Achievements
0
Reputação
-
é, com certeza é isso. O modulo de x1-x, a mao agente usa | x1-x | , aí no maple e em C usa-se o abs(). ;) Ptz, quando eu li o post do Jonas eu entendi assim: O abs deve ser o valor absoluto do numero, isto é, o valor do numero sem levar em consideracao o sinal. malz, postei atoa
-
aí eu tive que fazer um programa que que calcula a integral da funcao sqrt(1-x^2) , para isso eu não usei a biblioteca math porque eu escrevi x^2 da forma x*x, então não precisei da biblioteca math.h. O programa quando iniciado perguntao qual é o valor inicial e qual é o final e depois em quatas subdivisoes voce quer que ele faca. Vou colocar o programa aqui e a biblioteca que eu tinha que usar, que é uma diferente. não é a stdlib.h, é uma biblioteca que eu tenho que usar na facul, vo colocar ela tambem. #include "iolib.h" //biblioteca que tem que estar na mesma pasta do arquivo. double f (double x){ return sqrt(1-x*x); //pra mudar a funcao mude ela aqui } double integraltrapezio(double x0 , double xn , int n){ int i; double integral=0.0; double dx=(xn*x0)/n ; for ( i=0; i<n ; i++) { double xi=x0+i*dx; double xj=x0+(i+1)*dx ; double area = dx*(f(xi)+f(xj))/2; integral=integral+area; } return integral; } int main(void){ int n ; double x0 , xn ; double valor ; writestring("Entre com o limited o intervalo( x0 e xn ) : "); x0 = readdouble(); xn = readdouble(); writestring("Entre com o numero de subdivisoe s : "); n = readint(); valor =integraltrapezio(x0, xn, n); writestring("Valor da integral = "); writedouble(valor) ; return 0; } [/codebox] a iolib.h : [codebox]/* iolib.h ** Biblioteca auxiliar de entrada e saída ** ICC - PUC-Rio - 2007 */ #ifndef IOLIB_H #define IOLIB_H #include <stdio.h> /****************************** ** Funções para leitura de dados entrados via teclado */ /* Captura um valor inteiro */ int readint (void); /* Captura um valor real (tipo float) */ float readfloat (void); /* Captura um valor real (tipo double) */ double readdouble (void); /* Captura um valor de um caractere simples que não seja um 'branco' */ char readchar (void); /* Captura um valor de um caractere simples, incluindo 'brancos' */ char readanychar (void); /* Captura um valor de uma cadeia de caracteres, sem espaços 'brancos'. O segundo parâmetro indica número máximo de caracteres a ser capturado. */ void readword (char s[], int nmax); /* Captura um valor de uma cadeia de caracteres, até o fim da linha, incluindo caracteres 'brancos'. O segundo parâmetro indica número máximo de caracteres a ser capturado. */ void readline (char s[], int nmax); /****************************** ** Funções para escrita de dados na tela */ /* Escreve um valor inteiro */ void writeint (int x); /* Escreve um valor real (tipo float) */ void writefloat (float x); /* Escreve um valor real (tipo double) */ void writedouble (double x); /* Escreve um caractere simples */ void writechar (char x); /* Escreve uma cadeia de caracteres (sem pular linha) */ void writestring (char s[]); /* Escreve uma linha de texto (acrescenta caractere de mudança de linha) */ void writeline (char s[]); /* Escreve um caractere de mudança de linha (pula linha) */ void newline (void); /**************************** ** Funções de entrada e saída para arquivos */ /* Tipo que representa um arquivo */ typedef FILE* FHANDLE; /* Abre um arquivo para leitura, dado o nome do arquivo. Se ocorrer erro na abertura do arquivo, o programa é abortado. */ FHANDLE fopenreadfile (char filename[]); /* Abre um arquivo para escrita, dado o nome do arquivo. Se ocorrer erro na abertura do arquivo, o programa é abortado. */ FHANDLE fopenwritefile (char filename[]); /* Fecha um arquivo previamente aberto */ void fclosefile (FHANDLE f); /* Verifica se o final do arquivo foi alcançado, desprezando eventuais caracteres 'brancos' */ int fisend (FHANDLE f); /* Captura próximo valor inteiro do arquivo */ int freadint (FHANDLE f); /* Captura próximo valor real (tipo float) do arquivo */ float freadfloat (FHANDLE f); /* Captura próximo valor real (tipo double) do arquivo */ double freaddouble (FHANDLE f); /* Captura o próximo caractere simples do arquivo, desprezando eventuais 'brancos' */ char freadchar (FHANDLE f); /* Captura o próximo caractere simples do arquivo, incluindo eventuais 'brancos' */ char freadanychar (FHANDLE f); /* Captura próxima cadeia de caracteres sem 'brancos' do arquivo O terceiro parâmetro indica número máximo de caracteres a ser capturado. */ void freadword (FHANDLE f, char s[], int nmax); /* Captura próxima cadeia de caracteres do arquivo, até o fim da linha. O terceiro parâmetro indica número máximo de caracteres a ser capturado. */ void freadline (FHANDLE f, char s[], int nmax); /* Escreve valor inteiro no arquivo */ void fwriteint (FHANDLE f, int x); /* Escreve valor real (tipo float) no arquivo */ void fwritefloat (FHANDLE f, float x); /* Escreve valor real (tipo double) no arquivo */ void fwritedouble (FHANDLE f, double x); /* Escreve caractere simples no arquivo */ void fwritechar (FHANDLE f, char x); /* Escreve cadeia de caracteres no arquivo */ void fwritestring (FHANDLE f, char s[]); /* Escreve caractere de nova linha no arquivo (muda de linha) */ void fnewline (FHANDLE f); #endif agora para ela funcionar voce tem que colocar o arquivo iolib.c no mesmo projeto que o arquivo integrais.c, ai vai a iolib.c : /* iolib.c ** Biblioteca auxiliar de entrada e saída ** ICC - PUC-Rio - 2007 */ #include "iolib.h" #include <stdlib.h> int readint (void) { return freadint(stdin); } float readfloat (void) { return freadfloat(stdin); } double readdouble (void) { return freaddouble(stdin); } char readchar (void) { return freadchar(stdin); } char readanychar (void) { return freadanychar(stdin); } void readword (char s[], int nmax) { freadword(stdin,s,nmax); } void readline (char s[], int nmax) { freadline(stdin,s,nmax); } void writechar (char x) { fwritechar(stdout,x); } void writeint (int x) { fwriteint(stdout,x); newline(); } void writefloat (float x) { fwritefloat(stdout,x); newline(); } void writedouble (double x) { fwritedouble(stdout,x); newline(); } void writestring (char s[]) { fwritestring(stdout,s); } void writeline (char s[]) { writestring(s); newline(); } void newline (void) { fnewline(stdout); } FHANDLE fopenreadfile (char filename[]) { FHANDLE f = fopen(filename,"rt"); if (f == NULL) { fprintf(stderr,"Erro na abertura do arquivo de leitura: %s\n",filename); exit(1); } return f; } FHANDLE fopenwritefile (char filename[]) { FHANDLE f = fopen(filename,"wt"); if (f == NULL) { fprintf(stderr,"Erro na abertura do arquivo de escrita: %s\n",filename); exit(1); } return f; } void fclosefile (FHANDLE f) { fclose(f); } int fisend (FHANDLE f) { char c; if (fscanf(f," %c",&c)!=1) return 1; ungetc(c,f); return 0; } char freadchar (FHANDLE f) { char v; if (fscanf(f," %c",&v) != 1) { fprintf(stderr,"Erro na leitura do 'char'.\n"); exit(1); } return v; } char freadanychar (FHANDLE f) { char v; if (fscanf(f,"%c",&v) != 1) { fprintf(stderr,"Erro na leitura do 'char'.\n"); exit(1); } return v; } int freadint (FHANDLE f) { int v; if (fscanf(f,"%d",&v) != 1) { fprintf(stderr,"Erro na leitura do 'int'.\n"); exit(1); } return v; } float freadfloat (FHANDLE f) { float v; if (fscanf(f,"%g",&v) != 1) { fprintf(stderr,"Erro na leitura do 'float'.\n"); exit(1); } return v; } double freaddouble (FHANDLE f) { double v; if (fscanf(f,"%lg",&v) != 1) { fprintf(stderr,"Erro na leitura do 'double'.\n"); exit(1); } return v; } void freadword (FHANDLE f, char s[], int nmax) { char fmt[BUFSIZ]; sprintf(fmt,"%%%ds",nmax-1); if (fscanf(f,fmt,s) != 1) { fprintf(stderr,"Erro na leitura do 'string'.\n"); exit(1); } } void freadline (FHANDLE f, char s[], int nmax) { char fmt[BUFSIZ]; sprintf(fmt," %%%d[^\n]%%1*[\n]",nmax-1); if (fscanf(f,fmt,s) != 1) { fprintf(stderr,"Erro na leitura do 'string'.\n"); exit(1); } } void fwritechar (FHANDLE f, char x) { fprintf(f,"%c",x); } void fwriteint (FHANDLE f, int x) { fprintf(f,"%d ",x); } void fwritefloat (FHANDLE f, float x) { fprintf(f,"%.20g ",x); } void fwritedouble (FHANDLE f, double x) { fprintf(f,"%.20g ",x); } void fwritestring (FHANDLE f, char s[]) { fprintf(f,"%s ",s); } void fwriteline (FHANDLE f, char s[]) { fwritestring(f,s); fnewline(f); } void fnewline (FHANDLE f) { fprintf(f,"\n"); } [/codebox] Po é isso, espero que eu tenha ajudado... ;) Falow
-
Tambem, não sei e tambem não entendi porque a biblioteca chama ela mesma com esse comando: #include_next<stdarg.h> por isso queria sabe pra que servia esse include_next
-
Ola galera, tive esse erro na compilacao do meu programa: stdarg.h(6) : fatal error C1021: invalid preprocessor command 'include_next' Eu abri a biblioteca, ela é pequena, só tem isso: #ifndef RC_INVOKED #include_next<stdarg.h> #endif eu testei só com mudando o #include_next pra #include , aí deu esse erro: stdarg.h(6) : fatal error C1014: too many include files : depth = 1024 alguém tem alguma sugestao do que eu posso faze pra resolve o problema ? valeu PkD
-
pior que nem resolvi não.... hehehe porque eu pensei que tinha bolado um jeito mas quando eu tentei faze não deu certo, o que eu tinha pensado era simples só isso: system("copy arquivo c:\\pasta\\"); system("n"); assim , sempre que o programa fosse executado ele se copiaria para a pasta C:\pasta\ mas não iria apagar algum que já estivesse la.. só isso... mas não deu certo.. se alguém tive outra ideia ai da uma ajuda aí plz... valeu PkD
-
aí já resolvi... se voces preferirem pode apagar esse post. falou
-
e aí galera, tava querendo faze um programa que se copia pra uma certa pasta caso ele já não esteja la, a minha ideia era criar uma variavel qualquer e com alguma funcao verificar se esse aquivo existe, caso ele exista atribua o valor 1 para a variavel, caso ela exista naquela pasta ele atribui o numero 0 a variavel, usando if-elseif mas o problema é que não sei como verificar se o arquivo esta na pasta desejada ou não... se alguém tive uma ideia ai da uma luz por favor.. :P valeu
-
é da pra descobri a senha facil, mas isso não é problema porque as pessoas que vao usa não sabem quase nada de computador... :P e pelo menos deu pra faze direitinho o que eu queria... flws
-
Consegui com a ajuda de um amigo mas foi de outra forma: Fizemos um programa que criava um arquivo de texto com os comandos e depois usei o comando system("ftp -s:ftp.txt"); e logo em seguida ele deletava o arquivo de texto para a conta e senha não ficarem expostas... e pronto.. não precisei aprende sobre sockets... uffa =] Valeu a ajuda!
-
Entendi, mas não daria certo... não teria apenas como eu reescrever esse programa em C usando outros comandos? Comandos que enviassem um arquivo por ftp para um certo endereco e pronto? obrigado pela ajuda. Olha só um exemplo de como eu queria que fosse o programa mas não funciono não sei por que: int main(void) { system("ftp XXX.XXX.XXX.XXX"); system("usuario"); system("senha"); system("send arquivo.txt"); system("close"); system("quit"); system("exit"); return 0; } qualquer ajuda ai fico muito grato, abraco!
-
e aí galera! tenho uma nocao muito pequena de C afinal to comecando minhas aulas a respeito na faculdade apenas esse semestre, mas já li algumas apostilas. A questao é que eu queria fazer um programa que mandasse um arquivo de texto para um endereco ftp. Mas como sou muito limitado ainda nessa area fiz um programa assim: int main(void) { system("ftp -s:ftp.txt"); system("exit"); return 0; } E no arquivo de texto ftp.txt eu escrevi os comandos necessario: open ftp.site.com user senha cd pasta send arquivo.txt close quit bom... o programa funciona, mas o problema é que minha conta e senha ficam expostas, por isso preciso re-escrever esse programa de outra forma para que isso não aconteca. é isso, aguardo alguma ajuda... Valeu