Ir para conteúdo
Fórum Script Brasil

Durub

Moderadores
  • Total de itens

    788
  • Registro em

  • Última visita

Tudo que Durub postou

  1. Durub

    ProblemacomWindows

    Você tem um main ou um WinMain no seu programa? O seu programa é um projeto Windows? Abraços.
  2. Faz um type cast pra lista. p = (lista *) malloc(sizeof(lista)); Abraços.
  3. Durub

    ajuda com vetores

    Você está declarando a variável novamente. Uma sugestão é passar utilizando argumentos os valores para a função mostrarABC. Abraços.
  4. Durub

    SOMANDO NUMEROS BNARIOS

    Pressionado por que motivo? Se comprometeu a fazer, faculdade? Se foi algum desses casos, comece aprendendo a programar. Abraços.
  5. Durub

    Palíndromo

    Se não precisar fazer direto no int, dá para usar sprintf, inverter e depois comparar. Abraços.
  6. Durub

    problema com g++

    Mat não existe no main, só no input_matrix. Acho que você quis fazer isso: Mat3[i][j] = Mat1[i][j] + Mat2[i][j]; Abraços.
  7. Olá, estou interessado na proposta. Porém, gostaria de saber mais a fundo sobre o que seria o projeto? Qual tipo de plug-in é etc. De qualquer forma, vou mandar uma PM com meu MSN. Abraços!
  8. Durub

    Char, ajuda

    Bom, primeiro problema: Você está acessando (e possivelmente escrevendo) na posição 20 dos array's de char, o que significa que está acessando memória que não deve. Aumente o tamanho dos array's de char para 22, deixe o for como está, e coloque o valor de saida[21] para NULL. saida[21] = ''; Abraços!
  9. Durub

    codigo em c++ para resolver

    1º: Você quis dizer 1 array (vetor) com 5 posições. Declare o array, leia um int, depois eleve o número em cada posição do array. #include <math.h> int main(void) { int array[5]; int num = 5; array[0] = pow(num, 2); array[1] = pow(num, 3); ....... } 2º: Crie a struct, declare um array de 3 posições com o tipo da struct. typedef struct { char nome[20]; char raca[20]; char cor[10]; } animal; animal array[3]; Leia os valores acessando por array[0] .. array[2]. Depois teste o tamanho de cada um utilizando strlen (do string.h) e imprima o resultado. Abraços.
  10. Por que? Mostre seus argumentos. Interessante a capacidade do pessoal de falar que x ou y é bom/ruim sem mostrar argumentos. Abraços.
  11. Err, a função que falei mesmo era a getchar(), não a getch(). (do conio.h) Agora com a indicação do visitante (C/C++ nuts?) para ler o link do KernelTrap, ótimo. Mas um motivo para preferir switch em vez de vários if's e else's. ????? Para pausar um programa com o pause tem que: 1. suspender o seu programa 2. chamar o sistema operacional 3. abrir um shell do sistema operacional (lançar o sistema operacional em um sub-processo) 4. o sistema operacional procura pelo pause (C:/WINDOWS/system32 no Windows e /bin no UNIX, se não me engano) 5. aloca a memória para executar o pause 6. executa o comando e espera por uma tecla 7. desaloca a memória 8. sai do sistema operacional 9. continua o programa Isso de uma tradução do: (http://www.gidnetwork.com/b-61.html) Ou você poderia simplesmente fazer uma chamada a uma função nativa do C ou C++. Abraços.
  12. Também prefiro muito mais ler um switch do que um monte de if's. Vou apontar algumas coisas ruins no seu código: 1º - scanf: scanf é ruim, pode causar buffer overrun, geralmente deixa lixo no buffer do stdin, é uma função pesada etc. 2º - scanf - %s em caractere. Era pra utilizar %c. 3º - system("pause") e system("cls") São métodos não portáveis; No caso do pause, tem que fazer MUITA coisa só para pausar um programa, enquanto poderia simplesmente dar um cin.get() ou getch() (Não no caso do scanf! Afinal, vai deixar lixo no buffer do stdin, o que leva a maioria usar o fflush(stdin), que tem comportamento indefinido) etc. Abraços!
  13. O erro é seu. Você não mandou ele escrever nada. Para imprimir, se usa printf e não scanf. Exemplo: perc_nulos=(100*eleitores)/votos_nulos; printf("%d", perc_nulos); Abraços.
  14. É sim, pois ele não pausa o programa na hora da saída, se executado pelo Explorer. Você tem duas opções, pausar o programa. (Receber um input do teclado e sair do mesmo) Ou, navegar pelo terminal e executar o programa por ele. De fato, não sei qual o melhor método para você "pausar" o programa. Abraços.
  15. O problema está nesta parte do código: if (sexo=F) { peso_ideal=(62*altura)-44.7; else peso_ideal=(72.7*altura)-58; } Esqueceu de utilizar apóstrofos na comparação e também não fechou o if antes de começar o else. No caso, é uma linha, então não precisa de chaves. Outros "erros" a serem corrigidos: Como a variável sexo só vai utilizar um espaço, você pode omitir o [] e utilizar assim: char sexo; (Declaração) sexo = 'F'; (Atribuindo um valor) No final, se você quiser imprimir a variável, não se usa scanf, mas sim printf. printf("%d", peso_ideal); O if e else pode ser feito de duas formas (neste caso): // Assim: if (sexo='F') peso_ideal=(62*altura)-44.7; else peso_ideal=(72.7*altura)-58; // Ou assim: if (sexo='F') { peso_ideal=(62*altura)-44.7; } else { peso_ideal=(72.7*altura)-58; } Abraços.
  16. Durub

    Biblioteca Gráfica

    Tem a wxWidgets. Ela usa os controles nativos de cada plataforma, funciona com Windows, Linux, Mac e alguns outros sistemas operacionais mais obscuros. Abraços.
  17. Durub

    Comando DOS

    Você vai ter que redirecionar o output do ipconfig para um arquivo e depois le-lô, conseguindo o que o ipconfig retornou. Depois é só deletar o arquivo gerado. #include <stdio.h> #include <stdlib.h> int main(void) { FILE *file; system("ipconfig > output.txt"); file = fopen("output.txt", "r"); ..... fclose(file); remove("output.txt"); return 0; } Abraços. EDIT: Se você quer mostrar na tela, e não manipular os dados, não precisa fazer nada. Só utilizar system("ipconfig").
  18. Aqui (no Ubuntu) ele retorna(va?) nan. Estranho, talvez eu tenha escrito alguma parte do código errado. (Estava com o mesmo objetivo do piteko) Bom, outra hora testarei novamente. Abraços.
  19. Você está utilizando %f no printf, o correto é utilizar o %d. Ou mude o tipo da variável resp de int para float. Abraços.
  20. Durub

    Ajuda em funções

    Não entendi o porque de você estar apontando p para cad. Não precisa apontar nada, apenas passe para função o cad por referência. listagem(&cad); Abraços.
  21. O sqrt do C não funciona com float. Se você puder usar C++, conseguirá usar o sqrt com o tipo float. No caso do C, ainda tem essa função feita pelo John Carmack da id Software. O copyright dela é GPL. float Q_rsqrt( float number ) { long i; float x2, y; const float threehalfs = 1.5F; x2 = number * 0.5F; y = number; i = * ( long * ) &y; // evil floating point bit level hacking i = 0x5f3759df - ( i >> 1 ); // what the fuck? y = * ( float * ) &i; y = y * ( threehalfs - ( x2 * y * y ) ); // 1st iteration // y = y * ( threehalfs - ( x2 * y * y ) ); // 2nd iteration, this can be removed #ifndef Q3_VM #ifdef __linux__ assert( !isnan(y) ); // bk010122 - FPE? #endif #endif return y; } Nunca testei, mas pelos comentários, funciona. Abraços.
  22. Tente abrir o arquivo usando o modo "r", se conseguir, o arquivo existe. Se não, o arquivo não existe. Aqui, o código de uma função que desenvolvi a um tempo atrás. (Cerca de 2 meses) int fexists(const char *str) { FILE *file; if( ( file = fopen(str, "r") ) == NULL) return 0; fclose(file); return 1; } No caso, utilize (Altere o arquivo.txt para o arquivo que você quiser): fexists("C:\\arquivos\\arquivo.txt"); Abraços.
  23. Não tem como, pois os headers são somente a declaração das funções. O código dela está geralmente em arquivos .lib (ou .a para Linux/Dev C++) e .dll (ou .so para Linux/Dev C++). Abraços.
  24. É possível, utilizando gotoxy. Infelizmente, é uma função de uma biblioteca proprietária da Borland. De qualquer forma, acho que tem uma implementação no Windows. (Nada oficial, e também não sei se funciona) Aqui está: #include <windows.h> void gotoxy(int lin, int col) { HANDLE hOut; COORD Position; Position.X = col; Position.Y = lin; hOut = GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleCursorPosition(hOut, Position); } Abraços.
×
×
  • Criar Novo...