Ir para conteúdo
Fórum Script Brasil

cyberd

Membros
  • Total de itens

    13
  • Registro em

  • Última visita

Posts postados por cyberd

  1. Você tem que passar a variável como parâmetro para a outra função

    ex.:

    #Definição da função
    def fazalgumacoisa(contador):
    	.
    	.
    	.
    	contador += 1
    	return contador
    
    contador = 0
    #Chamada para a função
    fazalgumacoisa(contador)
    print "%s%d" % ("\nO numero de passos executados foi: ", contador)

    Ou pode declarar uma função global (não é muito usado)

    ex.:

    def fazalgumacoisa():
    	global contador
    	.
    	.
    	.
    	contador += 1
    	return
    
    
    global contador
    fazalgumacoisa():
    print "%s%d" % ("\nO numero de passos executados foi: ", contador)

     

  2. Vixi, infelizmente não estava acessando o fórum nesse período. O livro é muito bom! Eu o comprei no ano passado junto de alguns outros livros de C e por enquanto é o que tenho mais usado.

    Que fique claro que não é uma referência completa e tão pouco tem o objetivo de lhe ensinar algoritmos e estruturas de dados, mas como referência básica é muito bom!

    t+

  3. Boa tarde!

    Preciso esclarecer uma dúvida sobre a fórmula pro Matlab.

    *x(1)^2 - Aqui temos x multiplicando a expressão à sua esquerda, mas qual a função desse um? Ele está multiplicando x ou só está elevado ao quadrado? Se ele estiver multiplicando x não faz diferença na expressão, assim como se estiver elevado ao quadrado.

    *x(1)/pi-6 - Aqui mais uma vez temos x multiplicando tudo à sua esquerda e ao que parece, temos 1/(PI-6), mas não entendo o que acontece entre x e o resto da expressão à direita!

    cos(x(1)) - Ok, cosseno de x, mas qual a função do 1?

  4. Iod, vou lhe dar umas dicas que acho cabíveis. Se você se sentir ofendido, ou achar que meus comentários não procedem, favor ignorá-los!

    1º. c++ é uma linguagem que foi criada para implementar a orientação a objetos em C. Não faz sentido escrever um programa em C++ se você não vai utilizar orientação a objetos!

    2º. Embora o goto ainda esteja presente em várias linguagens, seu uso é bastante restrito, servindo as vezes para suprir algumas necessidades específicas. No geral não é utilizada, dando lugar à programação estruturada!

    3º. Por fim o aconselho a adquirir um bom livro sobre linguagem estruturada (pode ser C ou qualquer outra linguagem estruturada), ou que pelo menos procure bons tutoriais sobre o assunto!

    t+

  5. #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    #define COMPRIMENTO_STRING 100
    #define NUMERO_VARIAVEIS 20
    
    //Protótipo das funções
    
    void limpaStringUni(char *);
    
    void limpaStringMulti(char stringLimpar[][COMPRIMENTO_STRING]);
    
    
    
    //Início do programa
    int main(){
    
        char string[COMPRIMENTO_STRING];
        char palavra[COMPRIMENTO_STRING];
        char variaveis[NUMERO_VARIAVEIS][COMPRIMENTO_STRING];
    
        int i = 0;
        int j = 0;
        int k = 0;
    
    
        int tamanho = 0;
    
        limpaStringUni(string);
        limpaStringUni(palavra);
        limpaStringMulti(variaveis);
    
        printf("\nDigite a entrada de dados: ");
        fgets(string,(COMPRIMENTO_STRING-1),stdin);
    
        tamanho = strlen(string);
    
        for(i=0;i<tamanho;i++){
            if (string[i] != 44){
                palavra[k] = string[i];
                k++;
            }else if (string[i] == 44){
                sprintf(variaveis[j], "%s", palavra);
                limpaStringUni(palavra);
                j++;
                k = 0;
            }
            sprintf(variaveis[j], "%s", palavra); //Grava a última palavra no vetor
        }
    
        printf("\n\n");
    
        for(i=0;i<=j;i++){
            printf("%s\n",variaveis[i]);
        }
    
        return(0);
    
    }
    
    //Limpa uma string unidimencional
    void limpaStringUni(char *stringLimpar){
    
        int i;
    
        for(i=0;i<COMPRIMENTO_STRING;i++){
            stringLimpar[i] = '';
        }
    
        return;
    }
    
    //Limpa uma string multidimencional
    void limpaStringMulti(char stringLimpar[][COMPRIMENTO_STRING]){
    
        int i,j;
    
        for(i=0;i<NUMERO_VARIAVEIS;i++){
            for(j=0;j<COMPRIMENTO_STRING;j++){
                stringLimpar[i][j] = '';
            }
        }
    
        return;
    }

    Acredito que esse código resolva seu problema!

  6. #include<stdio.h>
    
    int maximun (int, int, int);/*protótipo da função*/
    
    
    main(){
    
        int a, b, c = 0;
    
        printf(" Entre com tres inteiros: ");
        scanf("i%i%i", &a,&b,&c);
        printf("O maior e: %i\n", maximun(a,b,c));
    
    }
    
    
    /*Definição da função maximun*/
    int maximun(int x, int y, int z){
    
        int max = x;
    
        if(y > max)
            max = y;
        if(z > max)
            max = z;
    
        return(max);
    }

    A sintaxe do scanf apresentava um erro!

  7. /*
    
    Criado utilizando CodeBlocks versão 10.05
    Compilado e testado no Windows XP 32 bits pt-br
    
    Programa criado para fins didáticos e publicado
    em 06/12/2011 em http://scriptbrasil.com.br
    
    Contato:fabiano[ponto]dolabela[em]gmail[ponto]com - www.devgrid.info
    
    Obs.: Uma vez que não foi especificado, alguns dos erros decorrentes
    de entradas erradas por parte do usuário não foram tratados.
    
    Para ser compilado em ambiente Linux, será necessário instalar a biblioteca
    ncurses.
    
    */
    
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <conio.h>
    
    //Tamanho máximo da frase
    #define MAX 101
    
    
    //Protótipo das funções
    int menu();
    void LimpaTela();
    void GravaArquivo();
    void LeArquivo();
    
    
    int main(){
    
        int resposta = 0;
    
        //Chama a função do menu
        do{
            resposta = menu();
        }while(resposta != 3);
    
    
        return(0);
    }
    
    
    void LimpaTela(){
    
        #ifdef WINDOWS
        system("CLS");
        #elif defined(WIN32)
        system("CLS");
        #elif defined(linux)
        system("clear");
        #elif defined(CYGWIN32)
        system("clear");
        #endif
    }
    
    //Função com o menu do programa e chamada
    //para as demais funções
    int menu(){
    
        unsigned char escolhe_menu = 00;
    
        do{
            LimpaTela();
            printf("\n\nPROGRAMA GRAVA E LE ARQUIVO\n\n");
            printf("(1)Gravar Arquivo\n");
            printf("(2)Ler Arquivo\n");
            printf("(3)Sair");
            escolhe_menu = getch();
    
        }while(escolhe_menu != 49 && escolhe_menu != 50 && escolhe_menu != 51);
    
        switch (escolhe_menu){
    
            case 49:
    
                GravaArquivo();
    
                break;
    
            case 50:
    
                LeArquivo();
    
                break;
    
            case 51:
    
                return(3);
    
                break;
    
            default:
    
                //Corre é uma cilada bino!!!
                exit(1);
        }
    
    
        return(0); //Para fins de teste
    
    }
    
    //Cria e/ou grava em um arquivo existente
    void GravaArquivo(){
    
        char frase_entrada[MAX];
    
        FILE *arquivo_gravacao;
    
    
        //Entrada da frase a ser gravada no arquivo
        do{
            printf("\n\nDigite a frase a ser gravada: ");
            fgets(frase_entrada,MAX,stdin);
        }while(strlen(frase_entrada ) <= 2);
    
        //Só abre o arquivo se tiver algo pra gravar;
        if (strlen(frase_entrada ) >= 3){
            arquivo_gravacao = fopen("frase.txt","a");
            fprintf(arquivo_gravacao,"%s",frase_entrada);
            fclose(arquivo_gravacao);
        }
    
    }
    
    //Lê o arquivo anteriormente criado
    //Favor observar que não há tratamento
    //para o caso do arquivo não existir
    void LeArquivo(){
    
        char frase_saida[MAX];
        unsigned char pausa = 00;
        FILE *arquivo_leitura;
    
    
        //Obs.: não há tratamento de erro caso o arquivo
        //      não exista.
    
        arquivo_leitura = fopen("frase.txt","r");
    
        printf("\n\nO conteudo do arquivo e:\n\n");
    
        while(fgets(frase_saida,MAX,arquivo_leitura) != NULL){
            printf("%s",frase_saida);
        }
        fclose(arquivo_leitura);
    
        //Pausa pra leitura
        printf("\n\n\n\n\nPRESSIONE <ENTER> PARA RETORNAR AO MENU PRINCIPAL");
        do{
            pausa = getch();
        }while(pausa != 13);
    }

    Espero que resolva o seu problema!

  8. #include <stdio.h>
    
    #define PRECO_BASE_SAOPAULO 6.0
    #define PRECO_BASE_RIODEJANEIRO 30.0
    #define ADICIONAL_VIAGEM_CARRO 0.1
    
    int main()
    {
        unsigned char destino = 48, tipo_veiculo = 48;
    
        float preco_final = 0.0;
    
        do
        {
            printf("\nQual tipo de veiculo sera utilizado (1) Onibus - (2) Carro: ");
            tipo_veiculo = getche();
        }while(tipo_veiculo != 49 && tipo_veiculo != 50);
    
        do
        {
            printf("\nQual o destino (S) são Paulo - (R) Rio de Janeiro: ");
            destino = getche();
        }while(destino != 82 && destino != 83 && destino != 114 && destino != 115);
    
        switch (destino)
        {
            case 82:
            case 114:
                preco_final = PRECO_BASE_RIODEJANEIRO;
                break;
    
            case 83:
            case 115:
                preco_final = PRECO_BASE_SAOPAULO;
                break;
        }
    
        if (tipo_veiculo == 50)
            {
                preco_final = (float) (preco_final + (preco_final*ADICIONAL_VIAGEM_CARRO));
            }
    
    
        printf("\nO preço da viagem e: %.2f\n\n",preco_final);
    
        return(0);
    }

  9. Acredito que sua mensagem esteja no local errado, mas de qualquer forma...

    #include <stdio.h>
    
    int main()
    {
        float base,altura,area;
    
        printf("\nDigite a base do triangulo: ");
        scanf("%f",&base);
        printf("\nDigite a altura do triangulo: ");
        scanf("%f",&altura);
    
        area = ((base*altura)/2);
    
        printf("\nA area do triangulo e: %.2f\n\n",area);
    
        return(0);
    }

×
×
  • Criar Novo...